bump(dev-vcs/git): sync with upstream

This commit is contained in:
Greg Kroah-Hartman 2013-12-02 19:23:24 -08:00
parent c3fec85f58
commit 2eca1294a4
12 changed files with 3581 additions and 34 deletions

View File

@ -1,6 +1,79 @@
# ChangeLog for dev-vcs/git
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/dev-vcs/git/ChangeLog,v 1.208 2013/09/28 10:08:18 pacho Exp $
# $Header: /var/cvsroot/gentoo-x86/dev-vcs/git/ChangeLog,v 1.227 2013/11/21 01:04:47 robbat2 Exp $
*git-1.8.4.4 (21 Nov 2013)
21 Nov 2013; Robin H. Johnson <robbat2@gentoo.org> +git-1.8.4.4.ebuild:
Bump.
09 Nov 2013; Pacho Ramos <pacho@gentoo.org> git-1.8.3.2-r1.ebuild:
amd64 stable, bug #480306
*git-1.8.4.3 (09 Nov 2013)
09 Nov 2013; Robin H. Johnson <robbat2@gentoo.org> +git-1.8.4.3.ebuild:
Bump.
06 Nov 2013; Patrick Lauer <patrick@gentoo.org> git-1.8.3.2-r1.ebuild:
Un-stabling for amd64 as dependencies are not ready
05 Nov 2013; Mikle Kolyada <zlogene@gentoo.org> git-1.8.3.2-r1.ebuild:
amd64 stable wrt bug #480306
03 Nov 2013; Matt Turner <mattst88@gentoo.org> git-1.8.3.2-r1.ebuild:
alpha stable, bug 480306.
03 Nov 2013; Matthew Thode <prometheanfire@gentoo.org> metadata.xml:
just adding myself to the list of maintianers
01 Nov 2013; Lars Wendler <polynomial-c@gentoo.org> metadata.xml:
Added myself as maintainer.
*git-1.8.4.2 (28 Oct 2013)
28 Oct 2013; Robin H. Johnson <robbat2@gentoo.org> +git-1.8.4.2.ebuild:
Bump.
20 Oct 2013; Fabian Groffen <grobian@gentoo.org> git-1.8.4.ebuild,
git-9999.ebuild:
Fix sed expression not to be too greedy, bug #488440
17 Oct 2013; Jeroen Roovers <jer@gentoo.org> git-1.8.3.2-r1.ebuild:
Stable for HPPA (bug #480306).
*git-1.8.3.2-r1 (15 Oct 2013)
15 Oct 2013; Robin H. Johnson <robbat2@gentoo.org> +git-1.8.3.2-r1.ebuild:
Backport fixes for bug #477096: Fix git-remote-bzr file collision & bug
#479628: Fix pthread usage to 1.8.3.
*git-1.8.4 (15 Oct 2013)
15 Oct 2013; Robin H. Johnson <robbat2@gentoo.org>
+files/git-1.8.4-optional-cvs.patch, +git-1.8.4.ebuild, git-9999.ebuild:
Bug #485844: Bump. Bug #477096: Fix git-remote-bzr file collision. Bug
#479628: Fix pthread usage.
15 Oct 2013; Mikle Kolyada <zlogene@gentoo.org> git-1.8.1.5-r1.ebuild:
x86 stable wrt bug #480054
14 Oct 2013; Tony Vroon <chainsaw@gentoo.org> git-1.8.1.5-r1.ebuild:
Marked stable on AMD64 based on arch tester report by Elijah "Armageddon" El
Lazkani in bug #480054.
07 Oct 2013; William Hubbs <williamh@gentoo.org> git-9999.ebuild:
sync live ebuild
07 Oct 2013; Rick Farina <zerochaos@gentoo.org> git-1.8.3.2.ebuild:
changing dep to make error message more useful because earlier version of dev-
python/pygtksourceview:2 have no []
06 Oct 2013; Jeroen Roovers <jer@gentoo.org> git-1.8.1.5-r1.ebuild:
Stable for HPPA (bug #480054).
06 Oct 2013; Markus Meier <maekke@gentoo.org> git-1.8.1.5-r1.ebuild:
arm stable, bug #480054
*git-1.8.1.5-r1 (28 Sep 2013)

View File

@ -1,6 +1,3 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
AUX 50git-gentoo.el 472 SHA256 7cd37e8db7eaeee8d822d38851eb69771b0f09c79883a8e51309a9add85fdbe2 SHA512 0435d7d67f2b64460a62c6a95c65a722c0f8d5d50d064a81e690de84a761ba518d32db545ee70c0fa3ad7803d77d5dab100689888bc92c9d82f2d6d5073623b3 WHIRLPOOL 887682f79182f6728af3c0fd2ee0e81319d49761a987559684be5e4acae4af579a5b8d1197ddba31452cec179de3c8f5784cc85ad61f78b400e42c204c93f642
AUX git-1.6.6.1-interix6.patch 457 SHA256 a8b788b8ef41ce7fd1018f13795694a908fbb1884de195c89a58fe87f3968849 SHA512 58e63d78d665f9122214ec1b7a8d730f7c9d8938283db98580334e293f46a984b86c8d72fbe48f891eda6d48fc76982857539761c6dcf881b1bb5817c275d263 WHIRLPOOL 803ec2121a7abe018c591c249c2b835aadd114a65b0cf6be4fd6440c77f9282d13b4225e1d63a5b22bb46f058bcd073dc97e801476278a91ff9f82634104f3d8
AUX git-1.7.1-interix.patch 2192 SHA256 b560fcc41ea93df429290ec645f3e37368ceec1101f7124574fa6d9bab00a495 SHA512 bd02d6c2b83827eb3d286ef37b358c2eb25d453655bebf1d2d074b47e7aab1c3b3f07da21eca33f01ac457d2878b674b2c857f9915ac71438a02bca112c89c41 WHIRLPOOL 7a314149acaa54199a258c1ebd9ee34356fa0393d3d49c994b25a66a593d4214391495d5dd67db01e6b1e396cb6c96b0ddcb7c3d78316bec7fb10af0e7e38af4
@ -14,6 +11,7 @@ AUX git-1.7.3.4-fix-perl-test-prereq.patch 1396 SHA256 a339767c3d3b8eb6b06adc54a
AUX git-1.7.3.5-optional-cvs.patch 11606 SHA256 e6d10a52783333839b12dd0574bd43ccca7bc4c5991d371fc464c4a352bab9f0 SHA512 b5ba920fa067005361ba7abe98f0d771d0d4847e45460e211e4b90857079f3da3efcabfef547061a3767cfe443c49da7fb0d93109d9e62a67863558c434c9c44 WHIRLPOOL 89a23a38facd01ed16ec62a072d677345eb3b363b3f4efe1ae6f7832f30f76ec2e1e3c38fb6ab57aefae09079fea73af919ba46484ea7d8adf0ea30fc318bafe
AUX git-1.8.2-optional-cvs.patch 11737 SHA256 37e092ca2dfa3ec216df568c1439acb3bdcc7366b75feb092f39642fc5894ce4 SHA512 7f914f16efee2f81a6f42a0e7ff1d72094bf032e98fa1a22f4b1e848eebf3a056ccdea1c84b24310cff4f19737b336d79a4f9c098a0ac4b0556e1a74708ef870 WHIRLPOOL d5e66fbfe0a6ae6c956ffb886d66c7a7906a3d60eac43b87d1e40206197f58d9aed54ee57cf5bb592147b7b9ac50fe50996f3b7e94161e5e308567c3a108cf43
AUX git-1.8.2-texinfo.patch 515 SHA256 86d60eeae9a21fa64047401b80a5e082b0f306a68efab139979bc979fb31830f SHA512 9a9920f6b2d170f3ca71ae4c35cb001252e5f43e087f5b49f9aa617606fb3b7173aea5ef91c5d195b36bf1a1964e936d777797e03642a0da55a596e68c13a29c WHIRLPOOL 9e66c94c5eac4fe22f7cdd400c68893368a21550a5aadd467c53591e62bcf146d6a08db1e7a3cb8b32a45d5568c0b7a7462a0c6f8709ea35a284845a2c5e5820
AUX git-1.8.4-optional-cvs.patch 11737 SHA256 7f8f1bd8f2953044433d90edea2bae7334e0d14ee7dc5e6e327e4caec8b0100b SHA512 2966582ccd5640c34aba156a955b458176ec2d450471279ec77200cbd1fb19f84dabc2a913fea17ae7503609074f8c80c05bb93f7244acfe296c078cf4a030ac WHIRLPOOL 07d5ab8ab60f6338ff1c9c7b8817938917ec12a5c360e595d7a40ffbbff18b439fea576c70dd4ddc7547edab23f4e86110f201c88be68e5a874d295f6051e592
AUX git-daemon.confd 712 SHA256 9bf02170dcf73e930a992adf44326ed7c27159d41a503ca4d9371861ee5030c9 SHA512 bf715ce0d3cd6a5be405d7739bc06252b95f93f9874716dadf666d33063be6ab3e37ae1ee253ed291bfb4f66df268b44d9653672851e1bb40112c0aae08fc4ea WHIRLPOOL 13643f53cd2f9675867ff194d680cd8ffe91bccbd0b15ae41b45471ec7310c09af8335619ff2a1562a835d8449eb44f9a9e9453c3ba15005763497c668d59181
AUX git-daemon.initd 738 SHA256 48e7e1228c9811079dce8fecc560000cf645de5b4bb697f8f8ad3f906906330b SHA512 2b1cff1e1bf85db1674bd130639a7557fd4bb1ee2e9b2e7d1e2dc28274b6fa6c6c150acf37d0e652173980c640cb0f7ac36332012182955ecc4d21c6258bfd4d WHIRLPOOL c47dd7d0f3b183e14f3ca4e499b1ceef0b88f11675c7f6dee225516f062f556bfd41aa7f87d6cdf490411101ae541ab5fe173069dbfab6b1473a2b3d951ce901
AUX git-daemon.socket 116 SHA256 66a064b67e441306bf765d3d3115ac55bafa2098400af134f852d4aecf8608d7 SHA512 e383d358999ea0c7201c1709015a9b7c4dd9dd71287605640aca837fac1e2ee33a5a1684e1c3414c08742605f185b722f4864afd5be8b79a9f0d8f7ae0f9b701 WHIRLPOOL 1098e46b6d2be3c8d758a087408aed91e0c01625542dfc90fbff80ed8b40d2a54ea4ab45b4d003ef0b0b8ed1411e1146a58076b68096389412a61fe2d09214dd
@ -28,6 +26,10 @@ DIST git-1.8.0.2.tar.gz 4231410 SHA256 c06d5d29389e90583d16ec41d5be931593196f684
DIST git-1.8.1.5.tar.gz 4306780 SHA256 f8b0be6e53e866f83cde64fa947011ebac56077bd1273c2e894038878986b955 SHA512 19ee4c76c66595f24d5093648202840f39356c111124017beeb32a4d79e8ce362d901ff4a09ad67c1392c5d1e48068a3a4634ad2865d8231e70b197a1cf0fdd3 WHIRLPOOL 559a89140b95bc413b6be5f4d09abc75a038d50381ae0fa61a5fa1c190edf92a5cf9ec2a938ba5d1ccd5563bb19883254773599749bb12488761c125b510b5e2
DIST git-1.8.2.1.tar.gz 4400440 SHA256 ed6dbf91b56c1540627563b5e8683fe726dac881ae028f3f17650b88fcb641d7 SHA512 d75a36a91b0522ca3a5c792473e16fc98dd9de082b4c0e9a75ebc525fa334edfdcb6dbf138e1bdede711f2158f24e8a8ba8499b89f9a82be1b5e60eb4ba5d33e WHIRLPOOL 587afbadca06674b751385b6f5fcda3d74db159a03bdbb1d477d4d9d4eb792d020a6f97906d2bf7d69f2f14432aaf6634d4274aa14e377ca6c865676853fd060
DIST git-1.8.3.2.tar.gz 4474347 SHA256 2f798db86859c85608fe4120f52a1b1cb13ca9c4daa4f59eb1dc090280f46473 SHA512 6e19948821dfbf78c5b9ea95614d3c10f4625583e3c17b6c55110b74f28679e525c449179cf49c2587a86c3b7fd7b6a27589824fcea0ec6fb69ca752a6942931 WHIRLPOOL 26892e039b67b35ae9df0a124d0812b36a22f481f146561b733a758b89a00770c05902c2820f2a783bc0fac07ecb335accbc939d21481da821177e0548d6a077
DIST git-1.8.4.2.tar.gz 4672520 SHA256 8d18552bd5689a4c8e7cda6e44bea8aaa82beef2ac79b4b7cf329fe9438cf71a SHA512 84ec63686610248be17c5ba5f93b5fb33928d038eb68a72931ce02e533ba98f248fd83ecd9c4c1d1b4eda462f423cc75dc0f550d7df34acea7ef801392c03345 WHIRLPOOL 618524712c48bd2b37c1ef7603cce4bcc157ce80b8b3a3008a94a9126ab395cabecb6f3bdae64dd64994cde9b3fcb109786479f4e02e22bef29862219bf98801
DIST git-1.8.4.3.tar.gz 4677316 SHA256 d2a71b1b23dc25eb65821cb6ccf9cba8d5910b68f64e9b71c6aa6778d13b08ee SHA512 a8ce4640230ace12867f894e892c62aa67c88db56397972a1f2ed4e26bd65fb4cdeeb1628cbbcff21d7717e3b82948c4561d727ff6da00fc5052d7c98c9bce44 WHIRLPOOL a6915112c0b079f3d62eeb84bc40840f18baf2c9a5f44a1c929eac95c8c1df95f844402354fbb8ee1140c80a6cc59be95006cf71387a224e332a0680a439a523
DIST git-1.8.4.4.tar.gz 4677446 SHA256 eba6f0e83566f95ffccf80e381cb215697584f53d05e22d8ad100f83c5ab283f SHA512 6cd03f6d7cb123c4c7b703bb350b82a831ba115a731861f5d12e6826acb558f47421c669dbde485526659ab67ea876e1fa150bd192520180217023e430875bca WHIRLPOOL 43dcb3491c62e176ee0d3830e728171cfda1892693e1ced70b73ca7ae6935ccca52db6dbd027d5fe4e549c3e5e706050698dea93dcdb323bb52eecf2fa950dad
DIST git-1.8.4.tar.gz 4657745 SHA256 89c73500b823a7672e23ddac1452ae14f44471c358865a6f18e835ded7a2d099 SHA512 80175d24a9ce16c4d51ba2b3ff0bb88f369422ec9b926d357a0369e1cd1afe9d5fe9ed272218c57b1542d1b75822642cb55f700327e7fdec27ea6bb135059d1a WHIRLPOOL 0dfc692643d85e1e5cea2a4521b77b1ca78da4119896397bf1deac23f1530e42b517e3ef40dc9dfb2216b50e3107e9a5319026dfc6925905f6243d29e2885e14
DIST git-htmldocs-1.6.4.5.tar.bz2 772113 SHA256 12c13ead869918d8470d68c7331675c56a192eae819c283a398aaf9f0f7555d2 SHA512 155dfe08b752a268a680dfb3df3d7bf1453976824aa33eb6f98598db9ba52b56e770a31f9770013076dd518f212ec3e7cfd13408d77a0ba1c2ad6bc4921ddc22 WHIRLPOOL 59e25e92e4c1ca61af8b967c3e310886f520d93de230886c6ec9b86e370c1d8f8ce56edb1fa29365348f987c746a58e3954e8d891138a4459eb2149005e4bb29
DIST git-htmldocs-1.7.12.4.tar.gz 1798333 SHA256 580de99c9fd8bed49132cf137af643d64e1450a7917b77c1343a784048a95930 SHA512 fddd27cc98ef1d263aa663655f778dd708223bbddc792098548f0ae68981eccd0427007c82c011e9eb5c860272bd65a4f4032e46f77ec8cf16f051814092585c WHIRLPOOL 1d1feaccf6006e9b880964cddce0565a7fc6bf8f8c96198fd0dd4e48de165718a7a63f5c44b61cd1b40e7f080b8c495fcd9cba5749684f5e255b7fb8eb252552
DIST git-htmldocs-1.7.2.5.tar.bz2 919247 SHA256 6b6291ffad4eae80d2739acdffffdd6293b9e50366cfa53ffb0c3a1427700337 SHA512 e8b2bc14b1a687f76256dfcfae893252b091c6d60dcd0fc53da50ceaee1434d5c976f1d09d45f8cc5a2991a9051ee8d0482a281fe7559225b6c750fe241b713c WHIRLPOOL d1ea7a272ba728e01523439ac897e1ecbc22917aceaa8871ade522d18db37df0d305fd3dd1782ef20dc1c935ec3965ebbe86d4cc29419a9e82aee831002eabed
@ -37,6 +39,10 @@ DIST git-htmldocs-1.8.0.2.tar.gz 1809932 SHA256 edba4dcc9dc131b32ba05d5cb9334a9b
DIST git-htmldocs-1.8.1.5.tar.gz 2060977 SHA256 108e34217b2668945ca78b36b08ceeb9fe283617fe68b8f181219076bb225de0 SHA512 0b46a95a47df4326633d10295eeb09d41cee78d9c30775f7784690715e3b5d607ff26027f4cd6036f31dfc458ba2757ceb5ed6ea675a863a5dc69d8e5a7b34f5 WHIRLPOOL d273fbee9fb0a68ef3f0d19ba2249481bd15ff69b289e046e975fccda7639102519aa79bff94f6317e6b73cc414128b8b8619fcda1a910b74770b0aba1694d26
DIST git-htmldocs-1.8.2.1.tar.gz 2093688 SHA256 3f2482089eb345ec7d2ad61ad731c17ea87733b763585b580cf99b17194e0286 SHA512 8e7f25a0b230473f9e9290f61e9ea80a675459eea163ef76e281aa95747f5bc4df2ddb7f9bba9c2b0fb75819cd206f2415ba665bc986a628a07e8da4e5aa6efc WHIRLPOOL 574a01d1e403b25444ac88f66a939fcad1c96025a62f91550f328d400246955e61255dd403f3cf8302b961032f536e394b77228a8434c7b2065b564163f49114
DIST git-htmldocs-1.8.3.2.tar.gz 2115320 SHA256 805b7fc4399daf9258e8cc28ecc3dd043fdd7f339447f4d84674826916109246 SHA512 0890b60bfa110ca7eaf7aaddbf0aca9574f608addc384cece3c91c8c04ef6397064a0669f3d61d0a65eb120b626ccd85df26f04438ca301f349136cd55e5080a WHIRLPOOL 377c39ac7988a3c1bb6e80333c43878d38fe5eecbb75dcbcbef3c2186842fcc170a552d72be891f1479c336fdd6c5ac1ce1ca2c0adf9a8238bd057f093c3f912
DIST git-htmldocs-1.8.4.2.tar.gz 2206047 SHA256 7fd16881ad5534c1f8c93617fdf8fa3762a66eb6d3cd7a66256db33cf8a0b0e8 SHA512 ad9c09bfdb5df7bd59ab06f53f17a56ce5a825901607ce9373a7c8e611453788bdcb58a37e83ccde267e234e16ec82566869365f1da77f58da59c041adf0a9a1 WHIRLPOOL 8a2b8990bd19a8a9ecd048f250169546a65f305c4d5c29571a8aa61d442b0ed038a198d9ae3a2b7bfcedffa311bbd9f6a1b135c5b5df91a72dc9614b51defe04
DIST git-htmldocs-1.8.4.3.tar.gz 2206916 SHA256 e932defdb938fb86c05bd812ef7f1d7e95e2413be710f9b5d9a7a83dcf820fd3 SHA512 e7f65092920aef874c9d22f0315e47a095f47834e640d1bdb236c8d70090f90b5e068d7608aa512555781f1a1edc0d56c4554536ed548f17dbeb7c380450eeae WHIRLPOOL 63edc84d05ac7c3f8698326013b3d963f5a26cb4e6914e38863a6e849f8766cb66a498df8057d7767d3d51ec6c01c5fca8fa22f253ea8a6adde8f6a2173b7962
DIST git-htmldocs-1.8.4.4.tar.gz 2207278 SHA256 fd9914b0f150c5b0289a2f34f71118df7111bcac69f6af34969066ce7bb371cf SHA512 1c56345253ad9174ed9e5fbc536d097b669ba34a0f41eb7a69f26721518b78f75fda14d33342c61a08297d37635b61db5138e1c8ee58638a5d97d0c7f9109646 WHIRLPOOL 6bed5bf2612b639433727dffa045285ed0dd9f6910223c0350e2f11fc98bc0f37811af934b41b709d077724756bdba41195de0f8ed9bce7ae33338bc61e174aa
DIST git-htmldocs-1.8.4.tar.gz 2202854 SHA256 98d97fd8ea87d2416a5f62550a1db59bcf19ad5bed3d276e8b9e07ffe861eb30 SHA512 339a926210f3ba57522c26d53cce5be585c656ac4bb092357f78d61c4caa6991d062ee77b053d4afeefb36e1b6d74bb946cafaecd729c7f4ab3c8bcadf6030c3 WHIRLPOOL 636d2d4594413f9db76845497308e9fe1601488ed44a09881633906b6385b0ab274b1e9ae2636493c3b70f65b68f5b1ef331e945a7dc1199d1cfdd6c73692c1b
DIST git-manpages-1.6.4.5.tar.bz2 254368 SHA256 f73ae98b0cea0ef6d8f7c8b599d6cad0bdae702b1fe58ad8ebab32a0bb7ba447 SHA512 9874bd63e138a2973f5912385e7972d17cd7bfebac7c67bca96ab041912ade4f2485d6536312c452d2b2fd6e89c1fec40b40cbd0ea91486db1d1b7e7e68c867e WHIRLPOOL 72ec9606acd277d90c5c6a46206c63991be7c256f43a1b866fe6da721434131646043fb5b03d448f1c75a3ffea92f4cf1b05e8a846919800e146e15a160dab04
DIST git-manpages-1.7.12.4.tar.gz 521602 SHA256 4075b60250f9bc5b5323266764c889f028521dbe1f5c10f470a167cc75105005 SHA512 0cabb41e7e599111c64f3382d4688891d1c76c5550ad27a08b6ca2e62fe826b971fa757a6a815731b8b88d1302ea886f199944497a0a10fbbfea41eafae50512 WHIRLPOOL c33b93023feab4a5f6f63cab5cb1e82e42f2fc14bd590ced246ebfc45311e3ff93855864f521af12916bde58ac4fe2ccb055e667936e85883192dd0904873735
DIST git-manpages-1.7.2.5.tar.bz2 289543 SHA256 a42a977a1ecfd3cea62e1f02fc89f57029a94f163ff7205f6a56ab4b67d6bd6e SHA512 b4065ef9ed7beb84d56fdfeadf9608c0b6bd36a06460b68ba575583062612f469e7db1d08c232f3a9253ca0b957bacc508fd4ec702070eb4c84d174af1828ab9 WHIRLPOOL d22249c22ad9da862cb842e37463cff3a7967de70441a851640641d78d185da916db9f3d3fec328bc10e48bc318b2b4fa085fae81c2576a758dededf153cc78b
@ -46,24 +52,26 @@ DIST git-manpages-1.8.0.2.tar.gz 523757 SHA256 b04f0e7277927e8fb91c1c1f7b951b6d2
DIST git-manpages-1.8.1.5.tar.gz 528540 SHA256 b171761f13deb738a2464c9d3967c12539067a34d6f2bfa5739a1006786fd24a SHA512 c0106da12ae3beeba3c23e68b37113082d829fe80160c53df51aac207557a2045c662b4d01b5a1cb211e75f9f7629290b7ecf3907b3bdc828820382793414e8e WHIRLPOOL 3da3b254707c06cb069fa462561634a4f5869fadab6ab8a07301eeb0b2244f159415d409d71c5ebceb4a74ef51f645f2f4c9ca19080a84ee370b5787740d08c2
DIST git-manpages-1.8.2.1.tar.gz 536718 SHA256 1d3bc31d10564d29d0c3a45f98f98a7d936dfcdb1692528bf2fdb2140fe89824 SHA512 a6463c8bc8a23301d89e985b88fa0073c154e126c51a1f7699cd09e79723ed463f46a9cf5dd63f9e2e46ee4111e6154ae86553bd446f5cf76db9fd4e3bff5a1f WHIRLPOOL 8aa3c57475d8cfd7c47019c4eb05c091c76fb0ec5d213942b5a16ee9f6c540111aecb6b754eb98578e9e129d4e8ba941a3bee326a2845b2a098cc30e1109d35d
DIST git-manpages-1.8.3.2.tar.gz 542769 SHA256 599bc8f6c56986a994a237cfebb53b4fab9051576775e32d0353e0455ab84115 SHA512 42fd781b924355c969ce381aae828f877059472741d7b53b0d1aad53f04c8a27b6b161b5dfc353098370ead73ccb9cdc86ac5374cf02829134f8c4d70bcbb7cf WHIRLPOOL 90226006a35b7b6e644f887981f2725238ff428f572425942701614e14fab5c8c5c602746de93a113d83d9b9c76ea1805a9c7cfa353305b0f817c33976048d77
DIST git-manpages-1.8.4.2.tar.gz 565198 SHA256 f7e8326a62398026c3e721e06499f09d3fab78fe67d1c75e07fa14b6b59801b7 SHA512 52fbfadaac06f65525d16441d51b038a56dcaf63ffa4bfe4593c6f65b0db994ab59cce7332f02529583fe63afae62d6351ce20dce38de1d0c398ae5e39ebf2f0 WHIRLPOOL fd08877e18fe5f65380acbc33d699d1f300c693aed9123af8ee01202826bd3e4061cac0fc6865c59a18a21a579898aaa78b5031710242f9878fe25552c3aee8c
DIST git-manpages-1.8.4.3.tar.gz 565288 SHA256 2ea22bc9efa0ef0ce2ecb5ec04c90544505b82a115805aff193acb03768dfc1d SHA512 a85a44d3a17397856dcb2585917395780e2e60ffc200cc1af7af06fc84f146b577675bd18a8641755768f9af60ed562a67b428779ca0674fe2b8368877842922 WHIRLPOOL 3f4d2107a7b5e1563dac90e17e466cedd42afa733328a229afc2845ae06d6016aba50454f1db13816a20765273a8b0e4a6ff1c71fd40b9e22dcf4308bb6521c8
DIST git-manpages-1.8.4.4.tar.gz 565132 SHA256 34865527d564629db4d5e0595de3a8a8354d3886d0a2f93fcb481bb68674a1b0 SHA512 6524a768131c3f93154ee861a5160b214dde8a13c1c7951a1604cd165fee1de341bac2d051b294c41ba6e333365fb97fa964d6c9907ea0ea77807b2c94406216 WHIRLPOOL d10718c479e4415c727b1ae9b12acae01152fc89a1a318f2f8d17b88de0bbba34df7d242114f5784a945a94f8c02ec6706c9e6b23983905c85dddf5c9e21684c
DIST git-manpages-1.8.4.tar.gz 564928 SHA256 2b7eac1de1569201172363b0054ea9ee4c872587514e6322f534befabf5769c3 SHA512 88a2b0c6d972281330816cdbbdcb15a764966de528ce52a6fcb664da2350fd021ba7194f99705361eb7cacde10d0607c6b70a753e7299dbff12f7a8841aa741a WHIRLPOOL 6df0f1490bc4cd57fa7c60edee16bfae53d6f9adbdd705d946a7ff6d044eec8c465862db86d8c7ac0f43ea1bf99e97284eb1ef2c931a89f14be319f718fe54f0
EBUILD git-1.6.4.5.ebuild 10408 SHA256 0107590ab8f9fb6dd5160ae3fff7f52c9e3348686bf03df450b7551c9464dcd5 SHA512 513fcaab682cdc8e32012afcca0c13877fd6452df32e37504519002c00de318875e3c0179bd98d81925acee171801b7bf82e1d9a1a7e0c63889b280f01b44663 WHIRLPOOL 1de545062584bfa0ff1f8db92610533085fb636e14ad57bf621d94a7167dbdfc1a30aec601567550fa3b194b96d6daa1f1cb71e8833e2af3d3d3d2de848b2e2e
EBUILD git-1.7.12.4.ebuild 15320 SHA256 d1f39b24cd4a1e8d8e255555b26024873fd7d63959302592480aaf6cfd68c9f3 SHA512 5034c4d71bd93287a0fdf0862646cf7801560015805d80b835631d29f646002aec074515772b3e445fac523aa629d66969839902df254f18eb1f25e1ee928b1b WHIRLPOOL 4956965813ed4482f1dcb2a037996ffb1d7a06a0b15643168147e24166f09b643bea08a5a0fff6ba086bd1f982aa915a059d520b3597faa63fe244b32e0f4a6b
EBUILD git-1.7.2.5.ebuild 13519 SHA256 481145683960e2d32d104d626898f2d71ebaa925a0df6488aa34bd13f19db842 SHA512 0a2b345963f7979662dc4a4c2cb759a214e0571cf565e77e7f36686eb50bb01d1a41f6218ef9c32b66e1e1299e260a6dbff3765c99f7eba071424e7a55fed8fa WHIRLPOOL 9d6f5a8fb02439b94be08e8db4f1fd8be7a165e5573bd7b94a27b4735b84fd17a9bd45f0c1b792a00cfb300b1ce73b7cdee0f54a03462f82a6d78d1326c5da9a
EBUILD git-1.7.3.4-r1.ebuild 14028 SHA256 61d5e1bcdf37f4d5cb93e32780642a25352ceec58ad5f418717c9e4ae40138eb SHA512 d9fd0f1e72dbee3e07aeb6d6e736af00f56a999ceb85ea318d65213f3b78879a95e1a2e0fbfcb5988103dd4fcddf34135e826f629e62f98b0a175154c5ba9a3d WHIRLPOOL d9942dd6e7b066f06d1347895f0840d610a402ca611edc044afbd786ef96bc4d87b831e6cd5f87ccf2a49e17f3e805f1559cf03304f2a3af0dbde544b3f33dd0
EBUILD git-1.7.8.6.ebuild 14683 SHA256 38f21df5f6abefb90ce93129adacf4b307decd48417d6830eced6ec0b595cbd0 SHA512 7ef0bc6125d06100636bfc15fef7d0cacef08f2c9a75beaa7331f1e5c5e06a7cd96f84b0ec975be8fd290efccaf0b9e40edb524063a2a9bfe69870bd2b2c9185 WHIRLPOOL 06ed98a81369963955aafa2186b30fa64ec544f8f1b268c7bb228d83c0e371e70223a69f7ed69da7df47ddc1a10459c40f36e3b2659d9c85c57e0dc036870d9c
EBUILD git-1.8.0.2.ebuild 17163 SHA256 931df741e5eeccee8c67048dd07074777228a6cb4321518a8150a13fd5ec00f0 SHA512 077d8dace76b90c7486d6e3cdb6d8691a4d6634107c69e672a6c7eb105921265b5b545fa727ca8426f069ecac4decc1b9873da689ef0f15623064a5df497053f WHIRLPOOL 0c46e4baae87498094750fb75dd500e4af8d9c7e2c1c3c4394b45bc78bd91a0cfa73ae20384297799bd2763fd7527be6609c60a92a5e4ce3fa997fea61703e86
EBUILD git-1.8.1.5-r1.ebuild 17337 SHA256 5fb64ae2c0b37bb39ce56becdf45ab5eb4b9e6a35d538d8fffd42b7645f26829 SHA512 96503fd2228e510afc9ee2ffcbdbdd68fd6b3919b946295c24c6989e1bbf7f7c543b4e6d4cdb47469f8151e3133f1e9901a02bbc0504f7b131f4ed7c451946ce WHIRLPOOL 1040a3b09f8f467faa45ff8d176a3632718a48a2a8f005aa12f1f2cbc69f53d5579c74d8f24aec8e01f113e9d944e1e22974d1626285f48b51b671dff6b9f95b
EBUILD git-1.8.1.5-r1.ebuild 17335 SHA256 56609f5a54328691933cabfbf5f5436e6ece42b035e8611e56281b6fed554cb5 SHA512 e35a1346961cadae639c42c4de2d8a53aa86df47d43953a4348554991e662f81feef2f7b695db743993721bb140a147632602190093822d56e5a80c1ec7113c7 WHIRLPOOL c9d2090ec6090d546a70aa9946ba2a09343e950c576140b40c02cc92f19f7d1c59971ceb6b3fa5b3454a71b75f43bac8f08285c98336151e1708b04e898150b4
EBUILD git-1.8.1.5.ebuild 17189 SHA256 bec81381b6dc3763d99fa20f6828c844a6b801aa5df41b6b99e07c87ff7c4a3d SHA512 22ee72cb4efff7ab5ff7ae53db9292b4a7e72ea75566e2664b001a8c8a761e7bfa3a4e28d4a7fa4ec777db497a0b56964ca2efdedd11fc2f34c9d9ab37ea335e WHIRLPOOL a5c025332de62d0a1e3832ec8ed1b873e5a44c16b4be41c05292553a4375b41ed996263e4c5ad1dedb800601790084d6ed6e0e010f35cd0ace41fc04b8360439
EBUILD git-1.8.2.1.ebuild 17612 SHA256 4d80e7d5e92b44281d640770dcc104021494633a6fa945550b5cd8963dd2d733 SHA512 d7de530d0a4cc714c7c11d02af8941912eaefe2e80cc054193e880943ded85a6391e92f38437aadbbaba2623ca789078a776e99ca26e5c98c28a1928e9d1bdc8 WHIRLPOOL 63373a2b5515a02b924c0c811d5dfe67db84b0fc93982d9f5ec4dca81f9d80d15ec4f13fb35d66389cf6234427d736e26b9df85fa8160995cab61c675482e8f8
EBUILD git-1.8.3.2.ebuild 17375 SHA256 95fc4540e7b551a1d59291584f1ff218227e6a61cc92611b054922eb3c3d066f SHA512 555307d3583ca1d3ce2d377b0c49487bbf2ac83f8bf07bf37ccab249b2fa1b5febdf59e89b98039e4e6b1c53d1f124b52af6530260ccd4c9158b48afefe3de9e WHIRLPOOL d14c1323a977536999f26420b47d57974846f3930e4f069b0fe70e3dea718953673559eee9d8502b3909da4498ee61e4c38fe50374189f8435e578af73f5bd09
EBUILD git-9999.ebuild 17373 SHA256 6224a06953d5b94837de0ed06710a4ef15dd2530aafb44f608b004b626114a01 SHA512 cb0a303e3d32e0f493b2d43ee5941cb2e810622f9e6e02768fce390d32314c5319bb5b665ec9a2e70cb15b85f80e1119188dbb42c3ae06a3e7f85299809833a8 WHIRLPOOL a061fedd06c1f47254d21414d1556c79f35e514f2a91ef3505814eda02b0852115fa2b2ef409a045464b010ca0291d485726ed2d5a6d775b7fcb391228612f6a
MISC ChangeLog 6252 SHA256 b080c563ff0fcd69ef37fa39af04e26c5293cfe80b599d4bd86e1603c33caf39 SHA512 8886fcd6031c179cefae2c294b445c9508e599fafbcabd2084dd853d5a9685bdbef075c0576ceb1a094d25dd2ae053ad2d6acf5f0b5fb5347b7e630c43c67414 WHIRLPOOL 015d4c27b0a3de37bc92e0cd5c09ff37c84bddf883478809536151b02a3e4869af7a7b61c92977671ca354bf1b46ecf9a6f11d56a96d7927f3b2b2d09ef3ed5c
EBUILD git-1.8.3.2-r1.ebuild 17541 SHA256 a6f3e9cbd75e8d34b02239695e389e549ba65a709bd926939ff1e88358ba2b8c SHA512 c7aa685d107e8ea1f6c3950751776e2660d4c73b721b317789a3164e1629b81485f23b0621ebc3f5d789b5a213fc3d21cb762cedfcdd5cf6363d0778e61cbe59 WHIRLPOOL 2926657b57f0c9f18aea65ca136de36be687e3fbb387968a09062c5bbd5dc0226b27d99373aa2bf446906a0bfd1f5504e01dc66365a1be8bf03078da804de74e
EBUILD git-1.8.3.2.ebuild 17390 SHA256 a7b1ae7ebc3a793b43172aa3565f3206fd95a8b6e0dbc8e139a47a290a3c7f7e SHA512 f9f1ac02d7afc81153e1c01b05af9539fdabfae0a51d7caceebdb3ea04843b2a64ca077e0f0caf82cb1f266d4186f4f85d3c81b0a9a9570a8bc1008775603a3c WHIRLPOOL 5a4ecbd1f2df312fbde7490a1da9c7870a470cbf634f3b9bc02781c40e051fb3c1fd7bbf11712b808da04e47289fa9b697bc658db40dd8977e3add88d44f012c
EBUILD git-1.8.4.2.ebuild 17770 SHA256 4a5e63e12e5ebd98df0dd8d66a27d2892f7a58b230596cd8917df9512efebd52 SHA512 d292cb293cb8944cee2e4b4446fb23592bd2d2e1d5f61ff87857a33fdd2081ecefbb569a45e5e3daa076ac7aea3c8833111daf3ca59aec26d1ddeac8ffedec8e WHIRLPOOL 0ba53a66a363cbbdc996d9de991107bf4eca9d7887f8509ee7d039149aa3a1154dece6ab7922788b7b94f206207dc533659ed0fab59087157c6d785dac3446d8
EBUILD git-1.8.4.3.ebuild 17770 SHA256 9dc84c164ccd8cb9e10fd232ec861e688842e35a794647cb2d9819cdbb86dfa7 SHA512 ad63c4cdc97dd5d3f37fb30d98ab29ddb5d012669d83d4df94fe743f10ff5aab7c94aa7cc7a72a12b6deae68058b9afae4292181af0bafc58278dc12c6f02dfc WHIRLPOOL 1ed4ec921cb5696ecb81d4e7d3b82955f5aacb18e60984fe52519feaa1c06f3fc338c19b55300b2c481366c585a2041211fcbc7bd5ca5148a4445e000a4653a0
EBUILD git-1.8.4.4.ebuild 17770 SHA256 8de46aa81a39bb641ffef90f464a751c6d69e78cc95482e77a9d0546a68dd9c6 SHA512 cccd36a6e27c45c04b0a06c17ec980a3679f99e5d97bff29561328a18a8380f42622979ed5b4f6190a9aa0d1a94c2fb3633d426f43c3f08928bb655b2592873c WHIRLPOOL 9d78b2db5fac919e09c8ca207bcf51392f7e784bb13175420381e83f5bd28febf53faeda9c7dd6114493dfcc8bbcdfcb0eff67ec7cf5d43a3c1d529c464877cf
EBUILD git-1.8.4.ebuild 17768 SHA256 dc61fa6e3155603a37cf1e6cee7718761f5972b1e6e64f837b32acecf29f36e8 SHA512 e2758cae49c3256006c0c797554f5dcdcea521139909e5bfeb54c0c32040c4650284fcacb6578a4978ebbfe1d5551262b4a488db0e3df28d596b970bb8cdd9c7 WHIRLPOOL 6779712dc5e11dacb254b299afe2a651dab4014b87ea19873c6ca8322b37ca3ac7bfeb1d42cc05d1b1d6883972189d97aba5df213178e98bd26b3b6389bf7708
EBUILD git-9999.ebuild 17768 SHA256 d69da921aaf09719d91097bd9893db1fd0254deb16d4dfdc35092b87ad6109a3 SHA512 1f175e5c0751aa3cd036f10540ff9073cf39dfd2b230b1da29c3f05d65ca9069fa29adede74fd15fe301a239002901e0a645e7206cfdf219a1bdd14d639d5bc7 WHIRLPOOL ea29989aed53614d21532a9a1bbfb6aac1e50e05d601ea356fd5c394f3c7ed09fac0f9674491adcc89b9c605f2b5c7e8de189d35adbcc24bc69aa122755052cd
MISC ChangeLog 8726 SHA256 cb9666b40a9e916278e5633abb22f7930579170145a2f3742a8cb37c761a343b SHA512 8a91270f1dec85f91366dd0b5f710fa510029a9f45da5251f8dec5b0e379a0cb42ffd27e185a15f90a53ee537781d80e1f87e14cab2c9df064af553972e71dbb WHIRLPOOL 1a6b46dcf8cd36f5a58b278d345ada645e1e102eb630c2fda56963cbcbeaa8062bd4dd6e397cdcc1acf3c50a818ba745f3126e5231d1cba80fa1d45b653dcb97
MISC ChangeLog-2012 94624 SHA256 7c8c313ea4800194191f7255023cabd205e56bb9761e8877dfab3770024b158c SHA512 f19cae0a29e8598e3bb68f1295baa56ff0edf06b2e3a95081ea2f95c4555d63dd6a0bff5a82345b274a1936104a75a69fe7862d7738a7fa2539ec9a7afd6b28f WHIRLPOOL 059ab6c542757c4524cb20cebb3cfa4bfbbe16d3a66da0805fb972d32f91f2a49bee97d1d73acf74d8e2cf3cc7a552371cf66db0580506d4b1a9e05ee52bdea4
MISC metadata.xml 1821 SHA256 3f0864988fd1d6ca97db612f9157275bf00336143969acb9d82ca6e6523127f5 SHA512 9f2d7adaf973837028f0c7cb305ac9917a88f07490ee172e570fc70860385de5c2b00edd6c22a37c9448d9260f51554e87b32b24e3bbbcc521f9ce5bbcb1fce0 WHIRLPOOL 7c135c44361168708252533d60a05f2c7d4b202c96c212e75d3057fa5ad80928c7d7452359b7e068c7a1f41dd4276c5917ac47ae010ec93821b2a9a3518f7aa9
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.20 (GNU/Linux)
iEYEAREIAAYFAlJGqpMACgkQCaWpQKGI+9TjDACfeg1lp9mmerDsM8lTL3Huo1oK
/wAAn3S9CEvGFxl1HsRnk7kwfy9AHIkv
=/YLc
-----END PGP SIGNATURE-----
MISC metadata.xml 2001 SHA256 a47cca001bfa05474eb7fccf92af9eea72d7f57af9eb0730863ed253a051a589 SHA512 265f6355dff77875d22a71613f49db23cb5b65a48691baaf4fb9511dcd897b2155f3ea0afdb6b3c3cf2b22f6ffc5a27991f3df7c3c6f5d5d05e72852db3f1d83 WHIRLPOOL 9e12046ac7ce155069459dd64c0d5de4436e628d5de5342400e631fc9981b98856359152e27a702ce317a9d9f9f65b7184a99ba5e0dd3e427741e1d6095621b8

View File

@ -0,0 +1,370 @@
From eadb20b065c33d46b49c8c95d8cde0c9fe7c62a4 Mon Sep 17 00:00:00 2001
From: Robin Johnson <robbat2@gentoo.org>
Date: Wed, 22 Aug 2012 04:25:06 +0000
Subject: [PATCH] Makefile: Add NO_CVS define to disable all CVS interface
utilities
Forward-ported from 1.7.12 to current git.git v1.8.4
diff -Nuar --exclude '*.orig' --exclude '*.rej' git-1.8.4.orig/Makefile git-1.8.4/Makefile
--- git-1.8.4.orig/Makefile 2013-03-13 12:15:22.000000000 -0700
+++ git-1.8.4/Makefile 2013-03-19 16:58:52.922806111 -0700
@@ -266,6 +266,8 @@
#
# Define NO_TCLTK if you do not want Tcl/Tk GUI.
#
+# Define NO_CVS if you do not want any CVS interface utilities.
+#
# The TCL_PATH variable governs the location of the Tcl interpreter
# used to optimize git-gui for your system. Only used if NO_TCLTK
# is not set. Defaults to the bare 'tclsh'.
@@ -440,6 +442,7 @@
PROGRAM_OBJS =
PROGRAMS =
SCRIPT_PERL =
+SCRIPT_PERL_CVS =
SCRIPT_PYTHON =
SCRIPT_SH =
SCRIPT_LIB =
@@ -481,13 +484,14 @@
SCRIPT_PERL += git-add--interactive.perl
SCRIPT_PERL += git-difftool.perl
SCRIPT_PERL += git-archimport.perl
-SCRIPT_PERL += git-cvsexportcommit.perl
-SCRIPT_PERL += git-cvsimport.perl
-SCRIPT_PERL += git-cvsserver.perl
SCRIPT_PERL += git-relink.perl
SCRIPT_PERL += git-send-email.perl
SCRIPT_PERL += git-svn.perl
+SCRIPT_PERL_CVS += git-cvsexportcommit.perl
+SCRIPT_PERL_CVS += git-cvsimport.perl
+SCRIPT_PERL_CVS += git-cvsserver.perl
+
SCRIPT_PYTHON += git-remote-testpy.py
SCRIPT_PYTHON += git-p4.py
@@ -496,7 +500,7 @@
# Generated files for scripts
SCRIPT_SH_GEN = $(patsubst %.sh,%,$(SCRIPT_SH))
-SCRIPT_PERL_GEN = $(patsubst %.perl,%,$(SCRIPT_PERL))
+SCRIPT_PERL_GEN = $(patsubst %.perl,%,$(SCRIPT_PERL) $(SCRIPT_PERL_CVS))
SCRIPT_PYTHON_GEN = $(patsubst %.py,%,$(SCRIPT_PYTHON))
SCRIPT_SH_INS = $(filter-out $(NO_INSTALL),$(SCRIPT_SH_GEN))
@@ -1786,8 +1790,18 @@
$(join -DMAJOR= -DMINOR= -DPATCH=, $(wordlist 1,3,$(subst -, ,$(subst ., ,$(GIT_VERSION))))) \
-DGIT_VERSION="\\\"$(GIT_VERSION)\\\"" $< -o $@
+_SCRIPT_PERL_BUILD =
+_SCRIPT_PERL_NOBUILD =
+
ifndef NO_PERL
-$(patsubst %.perl,%,$(SCRIPT_PERL)): perl/perl.mak
+
+_SCRIPT_PERL_BUILD += $(SCRIPT_PERL)
+
+ifndef NO_CVS
+_SCRIPT_PERL_BUILD += $(SCRIPT_PERL_CVS)
+else # NO_CVS
+_SCRIPT_PERL_NOBUILD += $(SCRIPT_PERL_CVS)
+endif # NO_CVS
perl/perl.mak: perl/PM.stamp
@@ -1799,7 +1813,7 @@
perl/perl.mak: GIT-CFLAGS GIT-PREFIX perl/Makefile perl/Makefile.PL
$(QUIET_SUBDIR0)perl $(QUIET_SUBDIR1) PERL_PATH='$(PERL_PATH_SQ)' prefix='$(prefix_SQ)' $(@F)
-$(patsubst %.perl,%,$(SCRIPT_PERL)): % : %.perl GIT-VERSION-FILE
+$(patsubst %.perl,%,$(_SCRIPT_PERL_BUILD)): % : %.perl GIT-VERSION-FILE
$(QUIET_GEN)$(RM) $@ $@+ && \
INSTLIBDIR=`MAKEFLAGS= $(MAKE) -C perl -s --no-print-directory instlibdir` && \
sed -e '1{' \
@@ -1824,14 +1838,17 @@
chmod +x $@+ && \
mv $@+ $@
else # NO_PERL
-$(patsubst %.perl,%,$(SCRIPT_PERL)) git-instaweb: % : unimplemented.sh
+_SCRIPT_PERL_NOBUILD += $(SCRIPT_PERL) $(SCRIPT_PERL_CVS) git-instaweb
+endif # NO_PERL
+
+# This is any perl scripts that were disabled it might be empty...
+$(patsubst %.perl,%,$(_SCRIPT_PERL_NOBUILD)): % : unimplemented.sh
$(QUIET_GEN)$(RM) $@ $@+ && \
sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \
-e 's|@@REASON@@|NO_PERL=$(NO_PERL)|g' \
unimplemented.sh >$@+ && \
chmod +x $@+ && \
mv $@+ $@
-endif # NO_PERL
ifndef NO_PYTHON
$(SCRIPT_PYTHON_GEN): GIT-CFLAGS GIT-PREFIX GIT-PYTHON-VARS
--- git-1.8.4.orig/t/t9200-git-cvsexportcommit.sh 2013-03-13 12:15:22.000000000 -0700
+++ git-1.8.4/t/t9200-git-cvsexportcommit.sh 2013-03-19 16:56:29.124993905 -0700
@@ -12,6 +12,11 @@
test_done
fi
+if ! test_have_prereq CVS; then
+ skip_all='skipping git cvsexportcommit tests, cvs not available'
+ test_done
+fi
+
cvs >/dev/null 2>&1
if test $? -ne 1
then
diff -Nuar --exclude '*.orig' --exclude '*.rej' git-1.8.4.orig/t/t9400-git-cvsserver-server.sh git-1.8.4/t/t9400-git-cvsserver-server.sh
--- git-1.8.4.orig/t/t9400-git-cvsserver-server.sh 2013-03-13 12:15:22.000000000 -0700
+++ git-1.8.4/t/t9400-git-cvsserver-server.sh 2013-03-19 16:56:29.124993905 -0700
@@ -11,9 +11,15 @@
. ./test-lib.sh
if ! test_have_prereq PERL; then
- skip_all='skipping git cvsserver tests, perl not available'
+ skip_all='skipping git-cvsserver tests, perl not available'
test_done
fi
+
+if ! test_have_prereq CVS; then
+ skip_all='skipping git-cvsserver tests, cvs not available'
+ test_done
+fi
+
cvs >/dev/null 2>&1
if test $? -ne 1
then
diff -Nuar --exclude '*.orig' --exclude '*.rej' git-1.8.4.orig/t/t9401-git-cvsserver-crlf.sh git-1.8.4/t/t9401-git-cvsserver-crlf.sh
--- git-1.8.4.orig/t/t9401-git-cvsserver-crlf.sh 2013-03-13 12:15:22.000000000 -0700
+++ git-1.8.4/t/t9401-git-cvsserver-crlf.sh 2013-03-19 16:56:29.125993925 -0700
@@ -57,15 +57,20 @@
return $stat
}
-cvs >/dev/null 2>&1
-if test $? -ne 1
+if ! test_have_prereq PERL
then
- skip_all='skipping git-cvsserver tests, cvs not found'
+ skip_all='skipping git-cvsserver tests, perl not available'
test_done
fi
-if ! test_have_prereq PERL
+if ! test_have_prereq CVS
then
- skip_all='skipping git-cvsserver tests, perl not available'
+ skip_all='skipping git-cvsserver tests, cvs not available'
+ test_done
+fi
+cvs >/dev/null 2>&1
+if test $? -ne 1
+then
+ skip_all='skipping git-cvsserver tests, cvs not found'
test_done
fi
"$PERL_PATH" -e 'use DBI; use DBD::SQLite' >/dev/null 2>&1 || {
diff -Nuar --exclude '*.orig' --exclude '*.rej' git-1.8.4.orig/t/t9600-cvsimport.sh git-1.8.4/t/t9600-cvsimport.sh
--- git-1.8.4.orig/t/t9600-cvsimport.sh 2013-03-13 12:15:22.000000000 -0700
+++ git-1.8.4/t/t9600-cvsimport.sh 2013-03-19 16:56:29.125993925 -0700
@@ -3,14 +3,25 @@
test_description='git cvsimport basic tests'
. ./lib-cvs.sh
-test_expect_success PERL 'setup cvsroot environment' '
+if ! test_have_prereq PERL
+then
+ skip_all='skipping git cvsimport tests, perl not available'
+ test_done
+fi
+if ! test_have_prereq CVS
+then
+ skip_all='skipping git cvsimport tests, cvs not available'
+ test_done
+fi
+
+test_expect_success 'setup cvsroot environment' '
CVSROOT=$(pwd)/cvsroot &&
export CVSROOT
'
-test_expect_success PERL 'setup cvsroot' '$CVS init'
+test_expect_success 'setup cvsroot' '$CVS init'
-test_expect_success PERL 'setup a cvs module' '
+test_expect_success 'setup a cvs module' '
mkdir "$CVSROOT/module" &&
$CVS co -d module-cvs module &&
@@ -42,23 +53,23 @@
)
'
-test_expect_success PERL 'import a trivial module' '
+test_expect_success 'import a trivial module' '
git cvsimport -a -R -z 0 -C module-git module &&
test_cmp module-cvs/o_fortuna module-git/o_fortuna
'
-test_expect_success PERL 'pack refs' '(cd module-git && git gc)'
+test_expect_success 'pack refs' '(cd module-git && git gc)'
-test_expect_success PERL 'initial import has correct .git/cvs-revisions' '
+test_expect_success 'initial import has correct .git/cvs-revisions' '
(cd module-git &&
git log --format="o_fortuna 1.1 %H" -1) > expected &&
test_cmp expected module-git/.git/cvs-revisions
'
-test_expect_success PERL 'update cvs module' '
+test_expect_success 'update cvs module' '
(cd module-cvs &&
cat <<EOF >o_fortuna &&
O Fortune,
@@ -86,7 +97,7 @@
)
'
-test_expect_success PERL 'update git module' '
+test_expect_success 'update git module' '
(cd module-git &&
git config cvsimport.trackRevisions true &&
@@ -97,7 +108,7 @@
'
-test_expect_success PERL 'update has correct .git/cvs-revisions' '
+test_expect_success 'update has correct .git/cvs-revisions' '
(cd module-git &&
git log --format="o_fortuna 1.1 %H" -1 HEAD^ &&
@@ -105,7 +116,7 @@
test_cmp expected module-git/.git/cvs-revisions
'
-test_expect_success PERL 'update cvs module' '
+test_expect_success 'update cvs module' '
(cd module-cvs &&
echo 1 >tick &&
@@ -114,7 +125,7 @@
)
'
-test_expect_success PERL 'cvsimport.module config works' '
+test_expect_success 'cvsimport.module config works' '
(cd module-git &&
git config cvsimport.module module &&
@@ -126,7 +137,7 @@
'
-test_expect_success PERL 'second update has correct .git/cvs-revisions' '
+test_expect_success 'second update has correct .git/cvs-revisions' '
(cd module-git &&
git log --format="o_fortuna 1.1 %H" -1 HEAD^^ &&
@@ -135,7 +146,7 @@
test_cmp expected module-git/.git/cvs-revisions
'
-test_expect_success PERL 'import from a CVS working tree' '
+test_expect_success 'import from a CVS working tree' '
$CVS co -d import-from-wt module &&
(cd import-from-wt &&
@@ -148,12 +159,12 @@
'
-test_expect_success PERL 'no .git/cvs-revisions created by default' '
+test_expect_success 'no .git/cvs-revisions created by default' '
! test -e import-from-wt/.git/cvs-revisions
'
-test_expect_success PERL 'test entire HEAD' 'test_cmp_branch_tree master'
+test_expect_success 'test entire HEAD' 'test_cmp_branch_tree master'
test_done
diff -Nuar --exclude '*.orig' --exclude '*.rej' git-1.8.4.orig/t/t9601-cvsimport-vendor-branch.sh git-1.8.4/t/t9601-cvsimport-vendor-branch.sh
--- git-1.8.4.orig/t/t9601-cvsimport-vendor-branch.sh 2013-03-13 12:15:22.000000000 -0700
+++ git-1.8.4/t/t9601-cvsimport-vendor-branch.sh 2013-03-19 16:56:29.125993925 -0700
@@ -34,6 +34,17 @@
test_description='git cvsimport handling of vendor branches'
. ./lib-cvs.sh
+if ! test_have_prereq PERL
+then
+ skip_all='skipping git cvsimport tests, perl not available'
+ test_done
+fi
+if ! test_have_prereq CVS
+then
+ skip_all='skipping git cvsimport tests, cvs not available'
+ test_done
+fi
+
setup_cvs_test_repository t9601
test_expect_success PERL 'import a module with a vendor branch' '
diff -Nuar --exclude '*.orig' --exclude '*.rej' git-1.8.4.orig/t/t9602-cvsimport-branches-tags.sh git-1.8.4/t/t9602-cvsimport-branches-tags.sh
--- git-1.8.4.orig/t/t9602-cvsimport-branches-tags.sh 2013-03-13 12:15:22.000000000 -0700
+++ git-1.8.4/t/t9602-cvsimport-branches-tags.sh 2013-03-19 16:56:29.126993944 -0700
@@ -6,6 +6,17 @@
test_description='git cvsimport handling of branches and tags'
. ./lib-cvs.sh
+if ! test_have_prereq PERL
+then
+ skip_all='skipping git cvsimport tests, perl not available'
+ test_done
+fi
+if ! test_have_prereq CVS
+then
+ skip_all='skipping git cvsimport tests, cvs not available'
+ test_done
+fi
+
setup_cvs_test_repository t9602
test_expect_success PERL 'import module' '
diff -Nuar --exclude '*.orig' --exclude '*.rej' git-1.8.4.orig/t/t9603-cvsimport-patchsets.sh git-1.8.4/t/t9603-cvsimport-patchsets.sh
--- git-1.8.4.orig/t/t9603-cvsimport-patchsets.sh 2013-03-13 12:15:22.000000000 -0700
+++ git-1.8.4/t/t9603-cvsimport-patchsets.sh 2013-03-19 16:56:29.126993944 -0700
@@ -14,6 +14,17 @@
test_description='git cvsimport testing for correct patchset estimation'
. ./lib-cvs.sh
+if ! test_have_prereq PERL
+then
+ skip_all='skipping git cvsimport tests, perl not available'
+ test_done
+fi
+if ! test_have_prereq CVS
+then
+ skip_all='skipping git cvsimport tests, cvs not available'
+ test_done
+fi
+
setup_cvs_test_repository t9603
test_expect_failure 'import with criss cross times on revisions' '
diff -Nuar --exclude '*.orig' --exclude '*.rej' git-1.8.4.orig/t/test-lib.sh git-1.8.4/t/test-lib.sh
--- git-1.8.4.orig/t/test-lib.sh 2013-03-13 12:15:22.000000000 -0700
+++ git-1.8.4/t/test-lib.sh 2013-03-19 16:56:29.126993944 -0700
@@ -686,6 +686,7 @@
esac
( COLUMNS=1 && test $COLUMNS = 1 ) && test_set_prereq COLUMNS_CAN_BE_1
+test -z "$NO_CVS" && test_set_prereq CVS
test -z "$NO_PERL" && test_set_prereq PERL
test -z "$NO_PYTHON" && test_set_prereq PYTHON
test -n "$USE_LIBPCRE" && test_set_prereq LIBPCRE

View File

@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-vcs/git/git-1.8.1.5-r1.ebuild,v 1.1 2013/09/28 10:08:18 pacho Exp $
# $Header: /var/cvsroot/gentoo-x86/dev-vcs/git/git-1.8.1.5-r1.ebuild,v 1.5 2013/10/15 14:32:02 zlogene Exp $
EAPI=4
@ -32,7 +32,7 @@ if [[ ${PV} != *9999 ]]; then
${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
${SRC_URI_GOOG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
)"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 arm hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
else
SRC_URI=""
KEYWORDS=""

View File

@ -0,0 +1,612 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-vcs/git/git-1.8.3.2-r1.ebuild,v 1.6 2013/11/09 15:49:15 pacho Exp $
EAPI=5
GENTOO_DEPEND_ON_PERL=no
# bug #329479: git-remote-testgit is not multiple-version aware
PYTHON_COMPAT=( python2_{6,7} )
[[ ${PV} == *9999 ]] && SCM="git-2"
EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
inherit toolchain-funcs eutils elisp-common perl-module bash-completion-r1 python-single-r1 systemd ${SCM}
MY_PV="${PV/_rc/.rc}"
MY_P="${PN}-${MY_PV}"
DOC_VER=${MY_PV}
DESCRIPTION="GIT - the stupid content tracker, the revision control system heavily used by the Linux kernel team"
HOMEPAGE="http://www.git-scm.com/"
if [[ ${PV} != *9999 ]]; then
SRC_URI_SUFFIX="gz"
SRC_URI_GOOG="http://git-core.googlecode.com/files"
SRC_URI_KORG="mirror://kernel/software/scm/git"
SRC_URI="${SRC_URI_GOOG}/${MY_P}.tar.${SRC_URI_SUFFIX}
${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
${SRC_URI_GOOG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
doc? (
${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
${SRC_URI_GOOG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
)"
KEYWORDS="alpha amd64 ~arm hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
else
SRC_URI=""
KEYWORDS=""
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg gtk highlight +iconv +nls +pcre +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test"
# Common to both DEPEND and RDEPEND
CDEPEND="
dev-libs/openssl
sys-libs/zlib
pcre? ( dev-libs/libpcre )
perl? ( dev-lang/perl[-build(-)] )
tk? ( dev-lang/tk )
curl? (
net-misc/curl
webdav? ( dev-libs/expat )
)
emacs? ( virtual/emacs )
gnome-keyring? ( gnome-base/gnome-keyring )"
RDEPEND="${CDEPEND}
gpg? ( app-crypt/gnupg )
perl? ( dev-perl/Error
dev-perl/Net-SMTP-SSL
dev-perl/Authen-SASL
cgi? ( virtual/perl-CGI highlight? ( app-text/highlight ) )
cvs? ( >=dev-vcs/cvsps-2.1 dev-perl/DBI dev-perl/DBD-SQLite )
subversion? ( dev-vcs/subversion[-dso,perl] dev-perl/libwww-perl dev-perl/TermReadKey )
)
python? ( gtk?
(
>=dev-python/pygtk-2.8[${PYTHON_USEDEP}]
>=dev-python/pygtksourceview-2.10.1-r1:2[${PYTHON_USEDEP}]
)
${PYTHON_DEPS} )"
# This is how info docs are created with Git:
# .txt/asciidoc --(asciidoc)---------> .xml/docbook
# .xml/docbook --(docbook2texi.pl)--> .texi
# .texi --(makeinfo)---------> .info
DEPEND="${CDEPEND}
app-arch/cpio
doc? (
app-text/asciidoc
app-text/docbook2X
sys-apps/texinfo
app-text/xmlto
)
test? (
app-crypt/gnupg
)"
# Live ebuild builds man pages and HTML docs, additionally
if [[ ${PV} == *9999 ]]; then
DEPEND="${DEPEND}
app-text/asciidoc"
fi
SITEFILE=50${PN}-gentoo.el
S="${WORKDIR}/${MY_P}"
REQUIRED_USE="
cgi? ( perl )
cvs? ( perl )
subversion? ( perl )
webdav? ( curl )
gtk? ( python )
python? ( ${PYTHON_REQUIRED_USE} )
"
pkg_setup() {
if use subversion && has_version "dev-vcs/subversion[dso]"; then
ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
ewarn "with USE=dso, there may be weird crashes in git-svn. You"
ewarn "have been warned."
fi
if use python ; then
python-single-r1_pkg_setup
fi
}
# This is needed because for some obscure reasons future calls to make don't
# pick up these exports if we export them in src_unpack()
exportmakeopts() {
local myopts
if use blksha1 ; then
myopts="${myopts} BLK_SHA1=YesPlease"
elif use ppcsha1 ; then
myopts="${myopts} PPC_SHA1=YesPlease"
fi
if use curl ; then
use webdav || myopts="${myopts} NO_EXPAT=YesPlease"
else
myopts="${myopts} NO_CURL=YesPlease"
fi
# broken assumptions, because of broken build system ...
myopts="${myopts} NO_FINK=YesPlease NO_DARWIN_PORTS=YesPlease"
myopts="${myopts} INSTALL=install TAR=tar"
myopts="${myopts} SHELL_PATH=${EPREFIX}/bin/sh"
myopts="${myopts} SANE_TOOL_PATH="
myopts="${myopts} OLD_ICONV="
myopts="${myopts} NO_EXTERNAL_GREP="
# For svn-fe
extlibs="-lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '')"
# can't define this to null, since the entire makefile depends on it
sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile
use iconv \
|| myopts="${myopts} NO_ICONV=YesPlease"
use nls \
|| myopts="${myopts} NO_GETTEXT=YesPlease"
use tk \
|| myopts="${myopts} NO_TCLTK=YesPlease"
use pcre \
&& myopts="${myopts} USE_LIBPCRE=yes" \
&& extlibs="${extlibs} -lpcre"
use perl \
&& myopts="${myopts} INSTALLDIRS=vendor" \
|| myopts="${myopts} NO_PERL=YesPlease"
use python \
|| myopts="${myopts} NO_PYTHON=YesPlease"
use subversion \
|| myopts="${myopts} NO_SVN_TESTS=YesPlease"
use threads \
&& myopts="${myopts} THREADED_DELTA_SEARCH=YesPlease" \
|| myopts="${myopts} NO_PTHREADS=YesPlease"
use cvs \
|| myopts="${myopts} NO_CVS=YesPlease"
# Disabled until ~m68k-mint can be keyworded again
# if [[ ${CHOST} == *-mint* ]] ; then
# myopts="${myopts} NO_MMAP=YesPlease"
# myopts="${myopts} NO_IPV6=YesPlease"
# myopts="${myopts} NO_STRLCPY=YesPlease"
# myopts="${myopts} NO_MEMMEM=YesPlease"
# myopts="${myopts} NO_MKDTEMP=YesPlease"
# myopts="${myopts} NO_MKSTEMPS=YesPlease"
# fi
if [[ ${CHOST} == ia64-*-hpux* ]]; then
myopts="${myopts} NO_NSEC=YesPlease"
fi
if [[ ${CHOST} == *-*-aix* ]]; then
myopts="${myopts} NO_FNMATCH_CASEFOLD=YesPlease"
fi
if [[ ${CHOST} == *-solaris* ]]; then
myopts="${myopts} NEEDS_LIBICONV=YesPlease"
fi
has_version '>=app-text/asciidoc-8.0' \
&& myopts="${myopts} ASCIIDOC8=YesPlease"
myopts="${myopts} ASCIIDOC_NO_ROFF=YesPlease"
# Bug 290465:
# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
[[ "${CHOST}" == *-uclibc* ]] && \
myopts="${myopts} NO_NSEC=YesPlease"
export MY_MAKEOPTS="${myopts}"
export EXTLIBS="${extlibs}"
}
src_unpack() {
if [[ ${PV} != *9999 ]]; then
unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
cd "${S}"
unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
use doc && \
cd "${S}"/Documentation && \
unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
cd "${S}"
else
git-2_src_unpack
cd "${S}"
#cp "${FILESDIR}"/GIT-VERSION-GEN .
fi
}
src_prepare() {
# bug #350330 - automagic CVS when we don't want it is bad.
epatch "${FILESDIR}"/git-1.8.2-optional-cvs.patch
sed -i \
-e 's:^\(CFLAGS =\).*$:\1 $(OPTCFLAGS) -Wall:' \
-e 's:^\(LDFLAGS =\).*$:\1 $(OPTLDFLAGS):' \
-e 's:^\(CC = \).*$:\1$(OPTCC):' \
-e 's:^\(AR = \).*$:\1$(OPTAR):' \
-e "s:\(PYTHON_PATH = \)\(.*\)$:\1${EPREFIX}\2:" \
-e "s:\(PERL_PATH = \)\(.*\)$:\1${EPREFIX}\2:" \
Makefile contrib/svn-fe/Makefile || die "sed failed"
# Never install the private copy of Error.pm (bug #296310)
sed -i \
-e '/private-Error.pm/s,^,#,' \
perl/Makefile.PL
# Fix docbook2texi command
sed -i 's/DOCBOOK2X_TEXI=docbook2x-texi/DOCBOOK2X_TEXI=docbook2texi.pl/' \
Documentation/Makefile || die "sed failed"
# Fix git-subtree missing DESTDIR
sed -i \
-e '/$(INSTALL)/s/ $(libexecdir)/ $(DESTDIR)$(libexecdir)/g' \
-e '/$(INSTALL)/s/ $(man1dir)/ $(DESTDIR)$(man1dir)/g' \
contrib/subtree/Makefile
}
git_emake() {
# bug #326625: PERL_PATH, PERL_MM_OPT
# bug #320647: PYTHON_PATH
PYTHON_PATH=""
use python && PYTHON_PATH="${PYTHON}"
emake ${MY_MAKEOPTS} \
DESTDIR="${D}" \
OPTCFLAGS="${CFLAGS}" \
OPTLDFLAGS="${LDFLAGS}" \
OPTCC="$(tc-getCC)" \
OPTAR="$(tc-getAR)" \
prefix="${EPREFIX}"/usr \
htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
sysconfdir="${EPREFIX}"/etc \
PYTHON_PATH="${PYTHON_PATH}" \
PERL_MM_OPT="" \
GIT_TEST_OPTS="--no-color" \
V=1 \
"$@"
# This is the fix for bug #326625, but it also causes breakage, see bug
# #352693.
# PERL_PATH="${EPREFIX}/usr/bin/env perl" \
}
src_configure() {
exportmakeopts
}
src_compile() {
if use perl ; then
git_emake perl/PM.stamp || die "emake perl/PM.stamp failed"
git_emake perl/perl.mak || die "emake perl/perl.mak failed"
fi
git_emake || die "emake failed"
if use emacs ; then
elisp-compile contrib/emacs/git{,-blame}.el
fi
if use perl && use cgi ; then
git_emake \
gitweb/gitweb.cgi \
|| die "emake gitweb/gitweb.cgi failed"
fi
if [[ ${CHOST} == *-darwin* ]]; then
cd "${S}"/contrib/credential/osxkeychain || die "cd credential/osxkeychain"
git_emake || die "emake credential-osxkeychain"
fi
cd "${S}"/Documentation
if [[ ${PV} == *9999 ]] ; then
git_emake man \
|| die "emake man failed"
if use doc ; then
git_emake info html \
|| die "emake info html failed"
fi
else
if use doc ; then
git_emake info \
|| die "emake info html failed"
fi
fi
if use subversion ; then
cd "${S}"/contrib/svn-fe
git_emake EXTLIBS="${EXTLIBS}" || die "emake svn-fe failed"
if use doc ; then
git_emake svn-fe.{1,html} || die "emake svn-fe.1 svn-fe.html failed"
fi
cd "${S}"
fi
if use gnome-keyring ; then
cd "${S}"/contrib/credential/gnome-keyring
git_emake || die "emake git-credential-gnome-keyring failed"
fi
cd "${S}"/contrib/subtree
git_emake
use doc && git_emake doc
}
src_install() {
git_emake \
install || \
die "make install failed"
if [[ ${CHOST} == *-darwin* ]]; then
dobin contrib/credential/osxkeychain/git-credential-osxkeychain
fi
# Depending on the tarball and manual rebuild of the documentation, the
# manpages may exist in either OR both of these directories.
find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
dodoc README Documentation/{SubmittingPatches,CodingGuidelines}
use doc && dodir /usr/share/doc/${PF}/html
for d in / /howto/ /technical/ ; do
docinto ${d}
dodoc Documentation${d}*.txt
use doc && dohtml -p ${d} Documentation${d}*.html
done
docinto /
# Upstream does not ship this pre-built :-(
use doc && doinfo Documentation/{git,gitman}.info
newbashcomp contrib/completion/git-completion.bash ${PN}
newbashcomp contrib/completion/git-prompt.sh ${PN}-prompt
if use emacs ; then
elisp-install ${PN} contrib/emacs/git.{el,elc}
elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
# don't add automatically to the load-path, so the sitefile
# can do a conditional loading
touch "${ED}${SITELISP}/${PN}/compat/.nosearch"
elisp-site-file-install "${FILESDIR}"/${SITEFILE}
fi
if use python && use gtk ; then
python_doscript "${S}"/contrib/gitview/gitview
dodoc "${S}"/contrib/gitview/gitview.txt
fi
#dobin contrib/fast-import/git-p4 # Moved upstream
#dodoc contrib/fast-import/git-p4.txt # Moved upstream
newbin contrib/fast-import/import-tars.perl import-tars
exeinto /usr/libexec/git-core/
newexe contrib/git-resurrect.sh git-resurrect
# git-subtree
cd "${S}"/contrib/subtree
git_emake install || die "Failed to emake install git-subtree"
if use doc ; then
git_emake install-man install-doc || die "Failed to emake install-doc install-mangit-subtree"
fi
newdoc README README.git-subtree
dodoc git-subtree.txt
cd "${S}"
# git-diffall
dobin contrib/diffall/git-diffall
newdoc contrib/diffall/README git-diffall.txt
# diff-highlight
dobin contrib/diff-highlight/diff-highlight
newdoc contrib/diff-highlight/README README.diff-highlight
# git-jump
exeinto /usr/libexec/git-core/
doexe contrib/git-jump/git-jump
newdoc contrib/git-jump/README git-jump.txt
if use gnome-keyring ; then
cd "${S}"/contrib/credential/gnome-keyring
dobin git-credential-gnome-keyring
fi
if use subversion ; then
cd "${S}"/contrib/svn-fe
dobin svn-fe
dodoc svn-fe.txt
use doc && doman svn-fe.1 && dohtml svn-fe.html
cd "${S}"
fi
# remote-helpers
if use python ; then
python_scriptinto /usr/libexec/git-core/
python_doscript "${S}"/contrib/remote-helpers/git-remote-{bzr,hg}
python_optimize
fi
dodir /usr/share/${PN}/contrib
# The following are excluded:
# completion - installed above
# credential/gnome-keyring TODO
# diff-highlight - done above
# diffall - done above
# emacs - installed above
# examples - these are stuff that is not used in Git anymore actually
# git-jump - done above
# gitview - installed above
# p4import - excluded because fast-import has a better one
# patches - stuff the Git guys made to go upstream to other places
# persistent-https - TODO
# mw-to-git - TODO
# subtree - build seperately
# svnimport - use git-svn
# thunderbird-patch-inline - fixes thunderbird
for i in \
blameview buildsystems ciabot continuous convert-objects fast-import \
hg-to-git hooks remotes2config.sh rerere-train.sh \
stats vim workdir \
; do
cp -rf \
"${S}"/contrib/${i} \
"${ED}"/usr/share/${PN}/contrib \
|| die "Failed contrib ${i}"
done
if use perl && use cgi ; then
# We used to install in /usr/share/${PN}/gitweb
# but upstream installs in /usr/share/gitweb
# so we will install a symlink and use their location for compat with other
# distros
dosym /usr/share/gitweb /usr/share/${PN}/gitweb
# INSTALL discusses configuration issues, not just installation
docinto /
newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb
newdoc "${S}"/gitweb/README README.gitweb
find "${ED}"/usr/lib64/perl5/ \
-name .packlist \
-exec rm \{\} \;
else
rm -rf "${ED}"/usr/share/gitweb
fi
if ! use subversion ; then
rm -f "${ED}"/usr/libexec/git-core/git-svn \
"${ED}"/usr/share/man/man1/git-svn.1*
fi
if use xinetd ; then
insinto /etc/xinetd.d
newins "${FILESDIR}"/git-daemon.xinetd git-daemon
fi
if use !prefix ; then
newinitd "${FILESDIR}"/git-daemon.initd git-daemon
newconfd "${FILESDIR}"/git-daemon.confd git-daemon
systemd_newunit "${FILESDIR}/git-daemon_at.service" "git-daemon@.service"
systemd_dounit "${FILESDIR}/git-daemon.socket"
fi
fixlocalpod
}
src_test() {
local disabled=""
local tests_cvs="t9200-git-cvsexportcommit.sh \
t9400-git-cvsserver-server.sh \
t9401-git-cvsserver-crlf.sh \
t9600-cvsimport.sh \
t9601-cvsimport-vendor-branch.sh \
t9602-cvsimport-branches-tags.sh \
t9603-cvsimport-patchsets.sh"
local tests_perl="t3701-add-interactive.sh \
t5502-quickfetch.sh \
t5512-ls-remote.sh \
t5520-pull.sh \
t7106-reset-unborn-branch.sh \
t7501-commit.sh"
# Bug #225601 - t0004 is not suitable for root perm
# Bug #219839 - t1004 is not suitable for root perm
# t0001-init.sh - check for init notices EPERM* fails
local tests_nonroot="t0001-init.sh \
t0004-unwritable.sh \
t0070-fundamental.sh \
t1004-read-tree-m-u-wf.sh \
t3700-add.sh \
t7300-clean.sh"
# t9100 still fails with symlinks in SVN 1.7
local test_svn="t9100-git-svn-basic.sh"
# Unzip is used only for the testcase code, not by any normal parts of Git.
if ! has_version app-arch/unzip ; then
einfo "Disabling tar-tree tests"
disabled="${disabled} t5000-tar-tree.sh"
fi
cvs=0
use cvs && let cvs=$cvs+1
if [[ ${EUID} -eq 0 ]]; then
if [[ $cvs -eq 1 ]]; then
ewarn "Skipping CVS tests because CVS does not work as root!"
ewarn "You should retest with FEATURES=userpriv!"
disabled="${disabled} ${tests_cvs}"
fi
einfo "Skipping other tests that require being non-root"
disabled="${disabled} ${tests_nonroot}"
else
[[ $cvs -gt 0 ]] && \
has_version dev-vcs/cvs && \
let cvs=$cvs+1
[[ $cvs -gt 1 ]] && \
has_version "dev-vcs/cvs[server]" && \
let cvs=$cvs+1
if [[ $cvs -lt 3 ]]; then
einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
disabled="${disabled} ${tests_cvs}"
fi
fi
if ! use perl ; then
einfo "Disabling tests that need Perl"
disabled="${disabled} ${tests_perl}"
fi
einfo "Disabling tests that fail with SVN 1.7"
disabled="${disabled} ${test_svn}"
# Reset all previously disabled tests
cd "${S}/t"
for i in *.sh.DISABLED ; do
[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
done
einfo "Disabled tests:"
for i in ${disabled} ; do
[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled $i"
done
# Avoid the test system removing the results because we want them ourselves
sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
-i "${S}"/t/Makefile
# Clean old results first, must always run
cd "${S}/t"
nonfatal git_emake clean
# Now run the tests, keep going if we hit an error, and don't terminate on
# failure
cd "${S}"
einfo "Start test run"
#MAKEOPTS=-j1
nonfatal git_emake --keep-going test
rc=$?
# Display nice results, now print the results
cd "${S}/t"
nonfatal git_emake aggregate-results
# And bail if there was a problem
[ $rc -eq 0 ] || die "tests failed. Please file a bug."
}
showpkgdeps() {
local pkg=$1
shift
elog " $(printf "%-17s:" ${pkg}) ${@}"
}
pkg_postinst() {
use emacs && elisp-site-regen
einfo "Please read /usr/share/bash-completion/git for Git bash command completion"
einfo "Please read /usr/share/bash-completion/git-prompt for Git bash prompt"
einfo "Note that the prompt bash code is now in the seperate script"
elog "These additional scripts need some dependencies:"
echo
showpkgdeps git-quiltimport "dev-util/quilt"
showpkgdeps git-instaweb \
"|| ( www-servers/lighttpd www-servers/apache )"
echo
}
pkg_postrm() {
use emacs && elisp-site-regen
}

View File

@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-vcs/git/git-1.8.3.2.ebuild,v 1.5 2013/09/16 17:53:28 mgorny Exp $
# $Header: /var/cvsroot/gentoo-x86/dev-vcs/git/git-1.8.3.2.ebuild,v 1.6 2013/10/07 14:15:51 zerochaos Exp $
EAPI=5
@ -68,7 +68,7 @@ RDEPEND="${CDEPEND}
python? ( gtk?
(
>=dev-python/pygtk-2.8[${PYTHON_USEDEP}]
dev-python/pygtksourceview:2[${PYTHON_USEDEP}]
>=dev-python/pygtksourceview-2.10.1-r1:2[${PYTHON_USEDEP}]
)
${PYTHON_DEPS} )"

View File

@ -0,0 +1,617 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-vcs/git/git-1.8.4.2.ebuild,v 1.1 2013/10/28 19:28:06 robbat2 Exp $
EAPI=5
GENTOO_DEPEND_ON_PERL=no
# bug #329479: git-remote-testgit is not multiple-version aware
PYTHON_COMPAT=( python2_{6,7} )
[[ ${PV} == *9999 ]] && SCM="git-2"
EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
inherit toolchain-funcs eutils elisp-common perl-module bash-completion-r1 python-single-r1 systemd ${SCM}
MY_PV="${PV/_rc/.rc}"
MY_P="${PN}-${MY_PV}"
DOC_VER=${MY_PV}
DESCRIPTION="GIT - the stupid content tracker, the revision control system heavily used by the Linux kernel team"
HOMEPAGE="http://www.git-scm.com/"
if [[ ${PV} != *9999 ]]; then
SRC_URI_SUFFIX="gz"
SRC_URI_GOOG="http://git-core.googlecode.com/files"
SRC_URI_KORG="mirror://kernel/software/scm/git"
SRC_URI="${SRC_URI_GOOG}/${MY_P}.tar.${SRC_URI_SUFFIX}
${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
${SRC_URI_GOOG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
doc? (
${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
${SRC_URI_GOOG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
)"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
else
SRC_URI=""
KEYWORDS=""
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg gtk highlight +iconv +nls +pcre +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test"
# Common to both DEPEND and RDEPEND
CDEPEND="
dev-libs/openssl
sys-libs/zlib
pcre? ( dev-libs/libpcre )
perl? ( dev-lang/perl[-build(-)] )
tk? ( dev-lang/tk )
curl? (
net-misc/curl
webdav? ( dev-libs/expat )
)
emacs? ( virtual/emacs )
gnome-keyring? ( gnome-base/gnome-keyring )"
RDEPEND="${CDEPEND}
gpg? ( app-crypt/gnupg )
perl? ( dev-perl/Error
dev-perl/Net-SMTP-SSL
dev-perl/Authen-SASL
cgi? ( virtual/perl-CGI highlight? ( app-text/highlight ) )
cvs? ( >=dev-vcs/cvsps-2.1 dev-perl/DBI dev-perl/DBD-SQLite )
subversion? ( dev-vcs/subversion[-dso,perl] dev-perl/libwww-perl dev-perl/TermReadKey )
)
python? ( gtk?
(
>=dev-python/pygtk-2.8[${PYTHON_USEDEP}]
>=dev-python/pygtksourceview-2.10.1-r1:2[${PYTHON_USEDEP}]
)
${PYTHON_DEPS} )"
# This is how info docs are created with Git:
# .txt/asciidoc --(asciidoc)---------> .xml/docbook
# .xml/docbook --(docbook2texi.pl)--> .texi
# .texi --(makeinfo)---------> .info
DEPEND="${CDEPEND}
app-arch/cpio
doc? (
app-text/asciidoc
app-text/docbook2X
sys-apps/texinfo
app-text/xmlto
)
test? (
app-crypt/gnupg
)"
# Live ebuild builds man pages and HTML docs, additionally
if [[ ${PV} == *9999 ]]; then
DEPEND="${DEPEND}
app-text/asciidoc"
fi
SITEFILE=50${PN}-gentoo.el
S="${WORKDIR}/${MY_P}"
REQUIRED_USE="
cgi? ( perl )
cvs? ( perl )
subversion? ( perl )
webdav? ( curl )
gtk? ( python )
python? ( ${PYTHON_REQUIRED_USE} )
"
pkg_setup() {
if use subversion && has_version "dev-vcs/subversion[dso]"; then
ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
ewarn "with USE=dso, there may be weird crashes in git-svn. You"
ewarn "have been warned."
fi
if use python ; then
python-single-r1_pkg_setup
fi
}
# This is needed because for some obscure reasons future calls to make don't
# pick up these exports if we export them in src_unpack()
exportmakeopts() {
local myopts
if use blksha1 ; then
myopts="${myopts} BLK_SHA1=YesPlease"
elif use ppcsha1 ; then
myopts="${myopts} PPC_SHA1=YesPlease"
fi
if use curl ; then
use webdav || myopts="${myopts} NO_EXPAT=YesPlease"
else
myopts="${myopts} NO_CURL=YesPlease"
fi
# broken assumptions, because of broken build system ...
myopts="${myopts} NO_FINK=YesPlease NO_DARWIN_PORTS=YesPlease"
myopts="${myopts} INSTALL=install TAR=tar"
myopts="${myopts} SHELL_PATH=${EPREFIX}/bin/sh"
myopts="${myopts} SANE_TOOL_PATH="
myopts="${myopts} OLD_ICONV="
myopts="${myopts} NO_EXTERNAL_GREP="
# For svn-fe
extlibs="-lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '')"
# can't define this to null, since the entire makefile depends on it
sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile
use iconv \
|| myopts="${myopts} NO_ICONV=YesPlease"
use nls \
|| myopts="${myopts} NO_GETTEXT=YesPlease"
use tk \
|| myopts="${myopts} NO_TCLTK=YesPlease"
use pcre \
&& myopts="${myopts} USE_LIBPCRE=yes" \
&& extlibs="${extlibs} -lpcre"
use perl \
&& myopts="${myopts} INSTALLDIRS=vendor" \
|| myopts="${myopts} NO_PERL=YesPlease"
use python \
|| myopts="${myopts} NO_PYTHON=YesPlease"
use subversion \
|| myopts="${myopts} NO_SVN_TESTS=YesPlease"
use threads \
&& myopts="${myopts} THREADED_DELTA_SEARCH=YesPlease" \
|| myopts="${myopts} NO_PTHREADS=YesPlease"
use cvs \
|| myopts="${myopts} NO_CVS=YesPlease"
# Disabled until ~m68k-mint can be keyworded again
# if [[ ${CHOST} == *-mint* ]] ; then
# myopts="${myopts} NO_MMAP=YesPlease"
# myopts="${myopts} NO_IPV6=YesPlease"
# myopts="${myopts} NO_STRLCPY=YesPlease"
# myopts="${myopts} NO_MEMMEM=YesPlease"
# myopts="${myopts} NO_MKDTEMP=YesPlease"
# myopts="${myopts} NO_MKSTEMPS=YesPlease"
# fi
if [[ ${CHOST} == ia64-*-hpux* ]]; then
myopts="${myopts} NO_NSEC=YesPlease"
fi
if [[ ${CHOST} == *-*-aix* ]]; then
myopts="${myopts} NO_FNMATCH_CASEFOLD=YesPlease"
fi
if [[ ${CHOST} == *-solaris* ]]; then
myopts="${myopts} NEEDS_LIBICONV=YesPlease"
fi
has_version '>=app-text/asciidoc-8.0' \
&& myopts="${myopts} ASCIIDOC8=YesPlease"
myopts="${myopts} ASCIIDOC_NO_ROFF=YesPlease"
# Bug 290465:
# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
[[ "${CHOST}" == *-uclibc* ]] && \
myopts="${myopts} NO_NSEC=YesPlease"
export MY_MAKEOPTS="${myopts}"
export EXTLIBS="${extlibs}"
}
src_unpack() {
if [[ ${PV} != *9999 ]]; then
unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
cd "${S}"
unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
use doc && \
cd "${S}"/Documentation && \
unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
cd "${S}"
else
git-2_src_unpack
cd "${S}"
#cp "${FILESDIR}"/GIT-VERSION-GEN .
fi
}
src_prepare() {
# bug #350330 - automagic CVS when we don't want it is bad.
epatch "${FILESDIR}"/git-1.8.4-optional-cvs.patch
sed -i \
-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
Makefile contrib/svn-fe/Makefile || die "sed failed"
# Never install the private copy of Error.pm (bug #296310)
sed -i \
-e '/private-Error.pm/s,^,#,' \
perl/Makefile.PL
# Fix docbook2texi command
sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
Documentation/Makefile || die "sed failed"
# Fix git-subtree missing DESTDIR
sed -i \
-e '/$(INSTALL)/s/ $(libexecdir)/ $(DESTDIR)$(libexecdir)/g' \
-e '/$(INSTALL)/s/ $(man1dir)/ $(DESTDIR)$(man1dir)/g' \
contrib/subtree/Makefile
}
git_emake() {
# bug #326625: PERL_PATH, PERL_MM_OPT
# bug #320647: PYTHON_PATH
PYTHON_PATH=""
use python && PYTHON_PATH="${PYTHON}"
emake ${MY_MAKEOPTS} \
DESTDIR="${D}" \
OPTCFLAGS="${CFLAGS}" \
OPTLDFLAGS="${LDFLAGS}" \
OPTCC="$(tc-getCC)" \
OPTAR="$(tc-getAR)" \
prefix="${EPREFIX}"/usr \
htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
sysconfdir="${EPREFIX}"/etc \
PYTHON_PATH="${PYTHON_PATH}" \
PERL_MM_OPT="" \
GIT_TEST_OPTS="--no-color" \
V=1 \
"$@"
# This is the fix for bug #326625, but it also causes breakage, see bug
# #352693.
# PERL_PATH="${EPREFIX}/usr/bin/env perl" \
}
src_configure() {
exportmakeopts
}
src_compile() {
if use perl ; then
git_emake perl/PM.stamp || die "emake perl/PM.stamp failed"
git_emake perl/perl.mak || die "emake perl/perl.mak failed"
fi
git_emake || die "emake failed"
if use emacs ; then
elisp-compile contrib/emacs/git{,-blame}.el
fi
if use perl && use cgi ; then
git_emake \
gitweb/gitweb.cgi \
|| die "emake gitweb/gitweb.cgi failed"
fi
if [[ ${CHOST} == *-darwin* ]]; then
cd "${S}"/contrib/credential/osxkeychain || die "cd credential/osxkeychain"
git_emake || die "emake credential-osxkeychain"
fi
cd "${S}"/Documentation
if [[ ${PV} == *9999 ]] ; then
git_emake man \
|| die "emake man failed"
if use doc ; then
git_emake info html \
|| die "emake info html failed"
fi
else
if use doc ; then
git_emake info \
|| die "emake info html failed"
fi
fi
if use subversion ; then
cd "${S}"/contrib/svn-fe
git_emake EXTLIBS="${EXTLIBS}" || die "emake svn-fe failed"
if use doc ; then
git_emake svn-fe.{1,html} || die "emake svn-fe.1 svn-fe.html failed"
fi
cd "${S}"
fi
if use gnome-keyring ; then
cd "${S}"/contrib/credential/gnome-keyring
git_emake || die "emake git-credential-gnome-keyring failed"
fi
cd "${S}"/contrib/subtree
git_emake
use doc && git_emake doc
}
src_install() {
git_emake \
install || \
die "make install failed"
if [[ ${CHOST} == *-darwin* ]]; then
dobin contrib/credential/osxkeychain/git-credential-osxkeychain
fi
# Depending on the tarball and manual rebuild of the documentation, the
# manpages may exist in either OR both of these directories.
find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
dodoc README Documentation/{SubmittingPatches,CodingGuidelines}
use doc && dodir /usr/share/doc/${PF}/html
for d in / /howto/ /technical/ ; do
docinto ${d}
dodoc Documentation${d}*.txt
use doc && dohtml -p ${d} Documentation${d}*.html
done
docinto /
# Upstream does not ship this pre-built :-(
use doc && doinfo Documentation/{git,gitman}.info
newbashcomp contrib/completion/git-completion.bash ${PN}
newbashcomp contrib/completion/git-prompt.sh ${PN}-prompt
if use emacs ; then
elisp-install ${PN} contrib/emacs/git.{el,elc}
elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
# don't add automatically to the load-path, so the sitefile
# can do a conditional loading
touch "${ED}${SITELISP}/${PN}/compat/.nosearch"
elisp-site-file-install "${FILESDIR}"/${SITEFILE}
fi
if use python && use gtk ; then
python_doscript "${S}"/contrib/gitview/gitview
dodoc "${S}"/contrib/gitview/gitview.txt
fi
#dobin contrib/fast-import/git-p4 # Moved upstream
#dodoc contrib/fast-import/git-p4.txt # Moved upstream
newbin contrib/fast-import/import-tars.perl import-tars
exeinto /usr/libexec/git-core/
newexe contrib/git-resurrect.sh git-resurrect
# git-subtree
cd "${S}"/contrib/subtree
git_emake install || die "Failed to emake install git-subtree"
if use doc ; then
git_emake install-man install-doc || die "Failed to emake install-doc install-mangit-subtree"
fi
newdoc README README.git-subtree
dodoc git-subtree.txt
cd "${S}"
# git-diffall
dobin contrib/diffall/git-diffall
newdoc contrib/diffall/README git-diffall.txt
# diff-highlight
dobin contrib/diff-highlight/diff-highlight
newdoc contrib/diff-highlight/README README.diff-highlight
# git-jump
exeinto /usr/libexec/git-core/
doexe contrib/git-jump/git-jump
newdoc contrib/git-jump/README git-jump.txt
# git-contacts
exeinto /usr/libexec/git-core/
doexe contrib/contacts/git-contacts
dodoc contrib/contacts/git-contacts.txt
if use gnome-keyring ; then
cd "${S}"/contrib/credential/gnome-keyring
dobin git-credential-gnome-keyring
fi
if use subversion ; then
cd "${S}"/contrib/svn-fe
dobin svn-fe
dodoc svn-fe.txt
use doc && doman svn-fe.1 && dohtml svn-fe.html
cd "${S}"
fi
# remote-helpers
if use python ; then
python_scriptinto /usr/libexec/git-core/
python_doscript "${S}"/contrib/remote-helpers/git-remote-{bzr,hg}
python_optimize
fi
dodir /usr/share/${PN}/contrib
# The following are excluded:
# completion - installed above
# credential/gnome-keyring TODO
# diff-highlight - done above
# diffall - done above
# emacs - installed above
# examples - these are stuff that is not used in Git anymore actually
# git-jump - done above
# gitview - installed above
# p4import - excluded because fast-import has a better one
# patches - stuff the Git guys made to go upstream to other places
# persistent-https - TODO
# mw-to-git - TODO
# subtree - build seperately
# svnimport - use git-svn
# thunderbird-patch-inline - fixes thunderbird
for i in \
buildsystems ciabot convert-objects fast-import \
hg-to-git hooks remotes2config.sh rerere-train.sh \
stats vim workdir \
; do
cp -rf \
"${S}"/contrib/${i} \
"${ED}"/usr/share/${PN}/contrib \
|| die "Failed contrib ${i}"
done
if use perl && use cgi ; then
# We used to install in /usr/share/${PN}/gitweb
# but upstream installs in /usr/share/gitweb
# so we will install a symlink and use their location for compat with other
# distros
dosym /usr/share/gitweb /usr/share/${PN}/gitweb
# INSTALL discusses configuration issues, not just installation
docinto /
newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb
newdoc "${S}"/gitweb/README README.gitweb
find "${ED}"/usr/lib64/perl5/ \
-name .packlist \
-exec rm \{\} \;
else
rm -rf "${ED}"/usr/share/gitweb
fi
if ! use subversion ; then
rm -f "${ED}"/usr/libexec/git-core/git-svn \
"${ED}"/usr/share/man/man1/git-svn.1*
fi
if use xinetd ; then
insinto /etc/xinetd.d
newins "${FILESDIR}"/git-daemon.xinetd git-daemon
fi
if use !prefix ; then
newinitd "${FILESDIR}"/git-daemon.initd git-daemon
newconfd "${FILESDIR}"/git-daemon.confd git-daemon
systemd_newunit "${FILESDIR}/git-daemon_at.service" "git-daemon@.service"
systemd_dounit "${FILESDIR}/git-daemon.socket"
fi
fixlocalpod
}
src_test() {
local disabled=""
local tests_cvs="t9200-git-cvsexportcommit.sh \
t9400-git-cvsserver-server.sh \
t9401-git-cvsserver-crlf.sh \
t9600-cvsimport.sh \
t9601-cvsimport-vendor-branch.sh \
t9602-cvsimport-branches-tags.sh \
t9603-cvsimport-patchsets.sh"
local tests_perl="t3701-add-interactive.sh \
t5502-quickfetch.sh \
t5512-ls-remote.sh \
t5520-pull.sh \
t7106-reset-unborn-branch.sh \
t7501-commit.sh"
# Bug #225601 - t0004 is not suitable for root perm
# Bug #219839 - t1004 is not suitable for root perm
# t0001-init.sh - check for init notices EPERM* fails
local tests_nonroot="t0001-init.sh \
t0004-unwritable.sh \
t0070-fundamental.sh \
t1004-read-tree-m-u-wf.sh \
t3700-add.sh \
t7300-clean.sh"
# t9100 still fails with symlinks in SVN 1.7
local test_svn="t9100-git-svn-basic.sh"
# Unzip is used only for the testcase code, not by any normal parts of Git.
if ! has_version app-arch/unzip ; then
einfo "Disabling tar-tree tests"
disabled="${disabled} t5000-tar-tree.sh"
fi
cvs=0
use cvs && let cvs=$cvs+1
if [[ ${EUID} -eq 0 ]]; then
if [[ $cvs -eq 1 ]]; then
ewarn "Skipping CVS tests because CVS does not work as root!"
ewarn "You should retest with FEATURES=userpriv!"
disabled="${disabled} ${tests_cvs}"
fi
einfo "Skipping other tests that require being non-root"
disabled="${disabled} ${tests_nonroot}"
else
[[ $cvs -gt 0 ]] && \
has_version dev-vcs/cvs && \
let cvs=$cvs+1
[[ $cvs -gt 1 ]] && \
has_version "dev-vcs/cvs[server]" && \
let cvs=$cvs+1
if [[ $cvs -lt 3 ]]; then
einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
disabled="${disabled} ${tests_cvs}"
fi
fi
if ! use perl ; then
einfo "Disabling tests that need Perl"
disabled="${disabled} ${tests_perl}"
fi
einfo "Disabling tests that fail with SVN 1.7"
disabled="${disabled} ${test_svn}"
# Reset all previously disabled tests
cd "${S}/t"
for i in *.sh.DISABLED ; do
[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
done
einfo "Disabled tests:"
for i in ${disabled} ; do
[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled $i"
done
# Avoid the test system removing the results because we want them ourselves
sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
-i "${S}"/t/Makefile
# Clean old results first, must always run
cd "${S}/t"
nonfatal git_emake clean
# Now run the tests, keep going if we hit an error, and don't terminate on
# failure
cd "${S}"
einfo "Start test run"
#MAKEOPTS=-j1
nonfatal git_emake --keep-going test
rc=$?
# Display nice results, now print the results
cd "${S}/t"
nonfatal git_emake aggregate-results
# And bail if there was a problem
[ $rc -eq 0 ] || die "tests failed. Please file a bug."
}
showpkgdeps() {
local pkg=$1
shift
elog " $(printf "%-17s:" ${pkg}) ${@}"
}
pkg_postinst() {
use emacs && elisp-site-regen
einfo "Please read /usr/share/bash-completion/git for Git bash command completion"
einfo "Please read /usr/share/bash-completion/git-prompt for Git bash prompt"
einfo "Note that the prompt bash code is now in the seperate script"
elog "These additional scripts need some dependencies:"
echo
showpkgdeps git-quiltimport "dev-util/quilt"
showpkgdeps git-instaweb \
"|| ( www-servers/lighttpd www-servers/apache )"
echo
}
pkg_postrm() {
use emacs && elisp-site-regen
}

View File

@ -0,0 +1,617 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-vcs/git/git-1.8.4.3.ebuild,v 1.1 2013/11/09 01:46:19 robbat2 Exp $
EAPI=5
GENTOO_DEPEND_ON_PERL=no
# bug #329479: git-remote-testgit is not multiple-version aware
PYTHON_COMPAT=( python2_{6,7} )
[[ ${PV} == *9999 ]] && SCM="git-2"
EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
inherit toolchain-funcs eutils elisp-common perl-module bash-completion-r1 python-single-r1 systemd ${SCM}
MY_PV="${PV/_rc/.rc}"
MY_P="${PN}-${MY_PV}"
DOC_VER=${MY_PV}
DESCRIPTION="GIT - the stupid content tracker, the revision control system heavily used by the Linux kernel team"
HOMEPAGE="http://www.git-scm.com/"
if [[ ${PV} != *9999 ]]; then
SRC_URI_SUFFIX="gz"
SRC_URI_GOOG="http://git-core.googlecode.com/files"
SRC_URI_KORG="mirror://kernel/software/scm/git"
SRC_URI="${SRC_URI_GOOG}/${MY_P}.tar.${SRC_URI_SUFFIX}
${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
${SRC_URI_GOOG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
doc? (
${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
${SRC_URI_GOOG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
)"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
else
SRC_URI=""
KEYWORDS=""
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg gtk highlight +iconv +nls +pcre +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test"
# Common to both DEPEND and RDEPEND
CDEPEND="
dev-libs/openssl
sys-libs/zlib
pcre? ( dev-libs/libpcre )
perl? ( dev-lang/perl[-build(-)] )
tk? ( dev-lang/tk )
curl? (
net-misc/curl
webdav? ( dev-libs/expat )
)
emacs? ( virtual/emacs )
gnome-keyring? ( gnome-base/gnome-keyring )"
RDEPEND="${CDEPEND}
gpg? ( app-crypt/gnupg )
perl? ( dev-perl/Error
dev-perl/Net-SMTP-SSL
dev-perl/Authen-SASL
cgi? ( virtual/perl-CGI highlight? ( app-text/highlight ) )
cvs? ( >=dev-vcs/cvsps-2.1 dev-perl/DBI dev-perl/DBD-SQLite )
subversion? ( dev-vcs/subversion[-dso,perl] dev-perl/libwww-perl dev-perl/TermReadKey )
)
python? ( gtk?
(
>=dev-python/pygtk-2.8[${PYTHON_USEDEP}]
>=dev-python/pygtksourceview-2.10.1-r1:2[${PYTHON_USEDEP}]
)
${PYTHON_DEPS} )"
# This is how info docs are created with Git:
# .txt/asciidoc --(asciidoc)---------> .xml/docbook
# .xml/docbook --(docbook2texi.pl)--> .texi
# .texi --(makeinfo)---------> .info
DEPEND="${CDEPEND}
app-arch/cpio
doc? (
app-text/asciidoc
app-text/docbook2X
sys-apps/texinfo
app-text/xmlto
)
test? (
app-crypt/gnupg
)"
# Live ebuild builds man pages and HTML docs, additionally
if [[ ${PV} == *9999 ]]; then
DEPEND="${DEPEND}
app-text/asciidoc"
fi
SITEFILE=50${PN}-gentoo.el
S="${WORKDIR}/${MY_P}"
REQUIRED_USE="
cgi? ( perl )
cvs? ( perl )
subversion? ( perl )
webdav? ( curl )
gtk? ( python )
python? ( ${PYTHON_REQUIRED_USE} )
"
pkg_setup() {
if use subversion && has_version "dev-vcs/subversion[dso]"; then
ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
ewarn "with USE=dso, there may be weird crashes in git-svn. You"
ewarn "have been warned."
fi
if use python ; then
python-single-r1_pkg_setup
fi
}
# This is needed because for some obscure reasons future calls to make don't
# pick up these exports if we export them in src_unpack()
exportmakeopts() {
local myopts
if use blksha1 ; then
myopts="${myopts} BLK_SHA1=YesPlease"
elif use ppcsha1 ; then
myopts="${myopts} PPC_SHA1=YesPlease"
fi
if use curl ; then
use webdav || myopts="${myopts} NO_EXPAT=YesPlease"
else
myopts="${myopts} NO_CURL=YesPlease"
fi
# broken assumptions, because of broken build system ...
myopts="${myopts} NO_FINK=YesPlease NO_DARWIN_PORTS=YesPlease"
myopts="${myopts} INSTALL=install TAR=tar"
myopts="${myopts} SHELL_PATH=${EPREFIX}/bin/sh"
myopts="${myopts} SANE_TOOL_PATH="
myopts="${myopts} OLD_ICONV="
myopts="${myopts} NO_EXTERNAL_GREP="
# For svn-fe
extlibs="-lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '')"
# can't define this to null, since the entire makefile depends on it
sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile
use iconv \
|| myopts="${myopts} NO_ICONV=YesPlease"
use nls \
|| myopts="${myopts} NO_GETTEXT=YesPlease"
use tk \
|| myopts="${myopts} NO_TCLTK=YesPlease"
use pcre \
&& myopts="${myopts} USE_LIBPCRE=yes" \
&& extlibs="${extlibs} -lpcre"
use perl \
&& myopts="${myopts} INSTALLDIRS=vendor" \
|| myopts="${myopts} NO_PERL=YesPlease"
use python \
|| myopts="${myopts} NO_PYTHON=YesPlease"
use subversion \
|| myopts="${myopts} NO_SVN_TESTS=YesPlease"
use threads \
&& myopts="${myopts} THREADED_DELTA_SEARCH=YesPlease" \
|| myopts="${myopts} NO_PTHREADS=YesPlease"
use cvs \
|| myopts="${myopts} NO_CVS=YesPlease"
# Disabled until ~m68k-mint can be keyworded again
# if [[ ${CHOST} == *-mint* ]] ; then
# myopts="${myopts} NO_MMAP=YesPlease"
# myopts="${myopts} NO_IPV6=YesPlease"
# myopts="${myopts} NO_STRLCPY=YesPlease"
# myopts="${myopts} NO_MEMMEM=YesPlease"
# myopts="${myopts} NO_MKDTEMP=YesPlease"
# myopts="${myopts} NO_MKSTEMPS=YesPlease"
# fi
if [[ ${CHOST} == ia64-*-hpux* ]]; then
myopts="${myopts} NO_NSEC=YesPlease"
fi
if [[ ${CHOST} == *-*-aix* ]]; then
myopts="${myopts} NO_FNMATCH_CASEFOLD=YesPlease"
fi
if [[ ${CHOST} == *-solaris* ]]; then
myopts="${myopts} NEEDS_LIBICONV=YesPlease"
fi
has_version '>=app-text/asciidoc-8.0' \
&& myopts="${myopts} ASCIIDOC8=YesPlease"
myopts="${myopts} ASCIIDOC_NO_ROFF=YesPlease"
# Bug 290465:
# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
[[ "${CHOST}" == *-uclibc* ]] && \
myopts="${myopts} NO_NSEC=YesPlease"
export MY_MAKEOPTS="${myopts}"
export EXTLIBS="${extlibs}"
}
src_unpack() {
if [[ ${PV} != *9999 ]]; then
unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
cd "${S}"
unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
use doc && \
cd "${S}"/Documentation && \
unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
cd "${S}"
else
git-2_src_unpack
cd "${S}"
#cp "${FILESDIR}"/GIT-VERSION-GEN .
fi
}
src_prepare() {
# bug #350330 - automagic CVS when we don't want it is bad.
epatch "${FILESDIR}"/git-1.8.4-optional-cvs.patch
sed -i \
-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
Makefile contrib/svn-fe/Makefile || die "sed failed"
# Never install the private copy of Error.pm (bug #296310)
sed -i \
-e '/private-Error.pm/s,^,#,' \
perl/Makefile.PL
# Fix docbook2texi command
sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
Documentation/Makefile || die "sed failed"
# Fix git-subtree missing DESTDIR
sed -i \
-e '/$(INSTALL)/s/ $(libexecdir)/ $(DESTDIR)$(libexecdir)/g' \
-e '/$(INSTALL)/s/ $(man1dir)/ $(DESTDIR)$(man1dir)/g' \
contrib/subtree/Makefile
}
git_emake() {
# bug #326625: PERL_PATH, PERL_MM_OPT
# bug #320647: PYTHON_PATH
PYTHON_PATH=""
use python && PYTHON_PATH="${PYTHON}"
emake ${MY_MAKEOPTS} \
DESTDIR="${D}" \
OPTCFLAGS="${CFLAGS}" \
OPTLDFLAGS="${LDFLAGS}" \
OPTCC="$(tc-getCC)" \
OPTAR="$(tc-getAR)" \
prefix="${EPREFIX}"/usr \
htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
sysconfdir="${EPREFIX}"/etc \
PYTHON_PATH="${PYTHON_PATH}" \
PERL_MM_OPT="" \
GIT_TEST_OPTS="--no-color" \
V=1 \
"$@"
# This is the fix for bug #326625, but it also causes breakage, see bug
# #352693.
# PERL_PATH="${EPREFIX}/usr/bin/env perl" \
}
src_configure() {
exportmakeopts
}
src_compile() {
if use perl ; then
git_emake perl/PM.stamp || die "emake perl/PM.stamp failed"
git_emake perl/perl.mak || die "emake perl/perl.mak failed"
fi
git_emake || die "emake failed"
if use emacs ; then
elisp-compile contrib/emacs/git{,-blame}.el
fi
if use perl && use cgi ; then
git_emake \
gitweb/gitweb.cgi \
|| die "emake gitweb/gitweb.cgi failed"
fi
if [[ ${CHOST} == *-darwin* ]]; then
cd "${S}"/contrib/credential/osxkeychain || die "cd credential/osxkeychain"
git_emake || die "emake credential-osxkeychain"
fi
cd "${S}"/Documentation
if [[ ${PV} == *9999 ]] ; then
git_emake man \
|| die "emake man failed"
if use doc ; then
git_emake info html \
|| die "emake info html failed"
fi
else
if use doc ; then
git_emake info \
|| die "emake info html failed"
fi
fi
if use subversion ; then
cd "${S}"/contrib/svn-fe
git_emake EXTLIBS="${EXTLIBS}" || die "emake svn-fe failed"
if use doc ; then
git_emake svn-fe.{1,html} || die "emake svn-fe.1 svn-fe.html failed"
fi
cd "${S}"
fi
if use gnome-keyring ; then
cd "${S}"/contrib/credential/gnome-keyring
git_emake || die "emake git-credential-gnome-keyring failed"
fi
cd "${S}"/contrib/subtree
git_emake
use doc && git_emake doc
}
src_install() {
git_emake \
install || \
die "make install failed"
if [[ ${CHOST} == *-darwin* ]]; then
dobin contrib/credential/osxkeychain/git-credential-osxkeychain
fi
# Depending on the tarball and manual rebuild of the documentation, the
# manpages may exist in either OR both of these directories.
find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
dodoc README Documentation/{SubmittingPatches,CodingGuidelines}
use doc && dodir /usr/share/doc/${PF}/html
for d in / /howto/ /technical/ ; do
docinto ${d}
dodoc Documentation${d}*.txt
use doc && dohtml -p ${d} Documentation${d}*.html
done
docinto /
# Upstream does not ship this pre-built :-(
use doc && doinfo Documentation/{git,gitman}.info
newbashcomp contrib/completion/git-completion.bash ${PN}
newbashcomp contrib/completion/git-prompt.sh ${PN}-prompt
if use emacs ; then
elisp-install ${PN} contrib/emacs/git.{el,elc}
elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
# don't add automatically to the load-path, so the sitefile
# can do a conditional loading
touch "${ED}${SITELISP}/${PN}/compat/.nosearch"
elisp-site-file-install "${FILESDIR}"/${SITEFILE}
fi
if use python && use gtk ; then
python_doscript "${S}"/contrib/gitview/gitview
dodoc "${S}"/contrib/gitview/gitview.txt
fi
#dobin contrib/fast-import/git-p4 # Moved upstream
#dodoc contrib/fast-import/git-p4.txt # Moved upstream
newbin contrib/fast-import/import-tars.perl import-tars
exeinto /usr/libexec/git-core/
newexe contrib/git-resurrect.sh git-resurrect
# git-subtree
cd "${S}"/contrib/subtree
git_emake install || die "Failed to emake install git-subtree"
if use doc ; then
git_emake install-man install-doc || die "Failed to emake install-doc install-mangit-subtree"
fi
newdoc README README.git-subtree
dodoc git-subtree.txt
cd "${S}"
# git-diffall
dobin contrib/diffall/git-diffall
newdoc contrib/diffall/README git-diffall.txt
# diff-highlight
dobin contrib/diff-highlight/diff-highlight
newdoc contrib/diff-highlight/README README.diff-highlight
# git-jump
exeinto /usr/libexec/git-core/
doexe contrib/git-jump/git-jump
newdoc contrib/git-jump/README git-jump.txt
# git-contacts
exeinto /usr/libexec/git-core/
doexe contrib/contacts/git-contacts
dodoc contrib/contacts/git-contacts.txt
if use gnome-keyring ; then
cd "${S}"/contrib/credential/gnome-keyring
dobin git-credential-gnome-keyring
fi
if use subversion ; then
cd "${S}"/contrib/svn-fe
dobin svn-fe
dodoc svn-fe.txt
use doc && doman svn-fe.1 && dohtml svn-fe.html
cd "${S}"
fi
# remote-helpers
if use python ; then
python_scriptinto /usr/libexec/git-core/
python_doscript "${S}"/contrib/remote-helpers/git-remote-{bzr,hg}
python_optimize
fi
dodir /usr/share/${PN}/contrib
# The following are excluded:
# completion - installed above
# credential/gnome-keyring TODO
# diff-highlight - done above
# diffall - done above
# emacs - installed above
# examples - these are stuff that is not used in Git anymore actually
# git-jump - done above
# gitview - installed above
# p4import - excluded because fast-import has a better one
# patches - stuff the Git guys made to go upstream to other places
# persistent-https - TODO
# mw-to-git - TODO
# subtree - build seperately
# svnimport - use git-svn
# thunderbird-patch-inline - fixes thunderbird
for i in \
buildsystems ciabot convert-objects fast-import \
hg-to-git hooks remotes2config.sh rerere-train.sh \
stats vim workdir \
; do
cp -rf \
"${S}"/contrib/${i} \
"${ED}"/usr/share/${PN}/contrib \
|| die "Failed contrib ${i}"
done
if use perl && use cgi ; then
# We used to install in /usr/share/${PN}/gitweb
# but upstream installs in /usr/share/gitweb
# so we will install a symlink and use their location for compat with other
# distros
dosym /usr/share/gitweb /usr/share/${PN}/gitweb
# INSTALL discusses configuration issues, not just installation
docinto /
newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb
newdoc "${S}"/gitweb/README README.gitweb
find "${ED}"/usr/lib64/perl5/ \
-name .packlist \
-exec rm \{\} \;
else
rm -rf "${ED}"/usr/share/gitweb
fi
if ! use subversion ; then
rm -f "${ED}"/usr/libexec/git-core/git-svn \
"${ED}"/usr/share/man/man1/git-svn.1*
fi
if use xinetd ; then
insinto /etc/xinetd.d
newins "${FILESDIR}"/git-daemon.xinetd git-daemon
fi
if use !prefix ; then
newinitd "${FILESDIR}"/git-daemon.initd git-daemon
newconfd "${FILESDIR}"/git-daemon.confd git-daemon
systemd_newunit "${FILESDIR}/git-daemon_at.service" "git-daemon@.service"
systemd_dounit "${FILESDIR}/git-daemon.socket"
fi
fixlocalpod
}
src_test() {
local disabled=""
local tests_cvs="t9200-git-cvsexportcommit.sh \
t9400-git-cvsserver-server.sh \
t9401-git-cvsserver-crlf.sh \
t9600-cvsimport.sh \
t9601-cvsimport-vendor-branch.sh \
t9602-cvsimport-branches-tags.sh \
t9603-cvsimport-patchsets.sh"
local tests_perl="t3701-add-interactive.sh \
t5502-quickfetch.sh \
t5512-ls-remote.sh \
t5520-pull.sh \
t7106-reset-unborn-branch.sh \
t7501-commit.sh"
# Bug #225601 - t0004 is not suitable for root perm
# Bug #219839 - t1004 is not suitable for root perm
# t0001-init.sh - check for init notices EPERM* fails
local tests_nonroot="t0001-init.sh \
t0004-unwritable.sh \
t0070-fundamental.sh \
t1004-read-tree-m-u-wf.sh \
t3700-add.sh \
t7300-clean.sh"
# t9100 still fails with symlinks in SVN 1.7
local test_svn="t9100-git-svn-basic.sh"
# Unzip is used only for the testcase code, not by any normal parts of Git.
if ! has_version app-arch/unzip ; then
einfo "Disabling tar-tree tests"
disabled="${disabled} t5000-tar-tree.sh"
fi
cvs=0
use cvs && let cvs=$cvs+1
if [[ ${EUID} -eq 0 ]]; then
if [[ $cvs -eq 1 ]]; then
ewarn "Skipping CVS tests because CVS does not work as root!"
ewarn "You should retest with FEATURES=userpriv!"
disabled="${disabled} ${tests_cvs}"
fi
einfo "Skipping other tests that require being non-root"
disabled="${disabled} ${tests_nonroot}"
else
[[ $cvs -gt 0 ]] && \
has_version dev-vcs/cvs && \
let cvs=$cvs+1
[[ $cvs -gt 1 ]] && \
has_version "dev-vcs/cvs[server]" && \
let cvs=$cvs+1
if [[ $cvs -lt 3 ]]; then
einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
disabled="${disabled} ${tests_cvs}"
fi
fi
if ! use perl ; then
einfo "Disabling tests that need Perl"
disabled="${disabled} ${tests_perl}"
fi
einfo "Disabling tests that fail with SVN 1.7"
disabled="${disabled} ${test_svn}"
# Reset all previously disabled tests
cd "${S}/t"
for i in *.sh.DISABLED ; do
[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
done
einfo "Disabled tests:"
for i in ${disabled} ; do
[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled $i"
done
# Avoid the test system removing the results because we want them ourselves
sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
-i "${S}"/t/Makefile
# Clean old results first, must always run
cd "${S}/t"
nonfatal git_emake clean
# Now run the tests, keep going if we hit an error, and don't terminate on
# failure
cd "${S}"
einfo "Start test run"
#MAKEOPTS=-j1
nonfatal git_emake --keep-going test
rc=$?
# Display nice results, now print the results
cd "${S}/t"
nonfatal git_emake aggregate-results
# And bail if there was a problem
[ $rc -eq 0 ] || die "tests failed. Please file a bug."
}
showpkgdeps() {
local pkg=$1
shift
elog " $(printf "%-17s:" ${pkg}) ${@}"
}
pkg_postinst() {
use emacs && elisp-site-regen
einfo "Please read /usr/share/bash-completion/git for Git bash command completion"
einfo "Please read /usr/share/bash-completion/git-prompt for Git bash prompt"
einfo "Note that the prompt bash code is now in the seperate script"
elog "These additional scripts need some dependencies:"
echo
showpkgdeps git-quiltimport "dev-util/quilt"
showpkgdeps git-instaweb \
"|| ( www-servers/lighttpd www-servers/apache )"
echo
}
pkg_postrm() {
use emacs && elisp-site-regen
}

View File

@ -0,0 +1,617 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-vcs/git/git-1.8.4.4.ebuild,v 1.1 2013/11/21 01:04:47 robbat2 Exp $
EAPI=5
GENTOO_DEPEND_ON_PERL=no
# bug #329479: git-remote-testgit is not multiple-version aware
PYTHON_COMPAT=( python2_{6,7} )
[[ ${PV} == *9999 ]] && SCM="git-2"
EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
inherit toolchain-funcs eutils elisp-common perl-module bash-completion-r1 python-single-r1 systemd ${SCM}
MY_PV="${PV/_rc/.rc}"
MY_P="${PN}-${MY_PV}"
DOC_VER=${MY_PV}
DESCRIPTION="GIT - the stupid content tracker, the revision control system heavily used by the Linux kernel team"
HOMEPAGE="http://www.git-scm.com/"
if [[ ${PV} != *9999 ]]; then
SRC_URI_SUFFIX="gz"
SRC_URI_GOOG="http://git-core.googlecode.com/files"
SRC_URI_KORG="mirror://kernel/software/scm/git"
SRC_URI="${SRC_URI_GOOG}/${MY_P}.tar.${SRC_URI_SUFFIX}
${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
${SRC_URI_GOOG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
doc? (
${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
${SRC_URI_GOOG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
)"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
else
SRC_URI=""
KEYWORDS=""
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg gtk highlight +iconv +nls +pcre +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test"
# Common to both DEPEND and RDEPEND
CDEPEND="
dev-libs/openssl
sys-libs/zlib
pcre? ( dev-libs/libpcre )
perl? ( dev-lang/perl[-build(-)] )
tk? ( dev-lang/tk )
curl? (
net-misc/curl
webdav? ( dev-libs/expat )
)
emacs? ( virtual/emacs )
gnome-keyring? ( gnome-base/gnome-keyring )"
RDEPEND="${CDEPEND}
gpg? ( app-crypt/gnupg )
perl? ( dev-perl/Error
dev-perl/Net-SMTP-SSL
dev-perl/Authen-SASL
cgi? ( virtual/perl-CGI highlight? ( app-text/highlight ) )
cvs? ( >=dev-vcs/cvsps-2.1 dev-perl/DBI dev-perl/DBD-SQLite )
subversion? ( dev-vcs/subversion[-dso,perl] dev-perl/libwww-perl dev-perl/TermReadKey )
)
python? ( gtk?
(
>=dev-python/pygtk-2.8[${PYTHON_USEDEP}]
>=dev-python/pygtksourceview-2.10.1-r1:2[${PYTHON_USEDEP}]
)
${PYTHON_DEPS} )"
# This is how info docs are created with Git:
# .txt/asciidoc --(asciidoc)---------> .xml/docbook
# .xml/docbook --(docbook2texi.pl)--> .texi
# .texi --(makeinfo)---------> .info
DEPEND="${CDEPEND}
app-arch/cpio
doc? (
app-text/asciidoc
app-text/docbook2X
sys-apps/texinfo
app-text/xmlto
)
test? (
app-crypt/gnupg
)"
# Live ebuild builds man pages and HTML docs, additionally
if [[ ${PV} == *9999 ]]; then
DEPEND="${DEPEND}
app-text/asciidoc"
fi
SITEFILE=50${PN}-gentoo.el
S="${WORKDIR}/${MY_P}"
REQUIRED_USE="
cgi? ( perl )
cvs? ( perl )
subversion? ( perl )
webdav? ( curl )
gtk? ( python )
python? ( ${PYTHON_REQUIRED_USE} )
"
pkg_setup() {
if use subversion && has_version "dev-vcs/subversion[dso]"; then
ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
ewarn "with USE=dso, there may be weird crashes in git-svn. You"
ewarn "have been warned."
fi
if use python ; then
python-single-r1_pkg_setup
fi
}
# This is needed because for some obscure reasons future calls to make don't
# pick up these exports if we export them in src_unpack()
exportmakeopts() {
local myopts
if use blksha1 ; then
myopts="${myopts} BLK_SHA1=YesPlease"
elif use ppcsha1 ; then
myopts="${myopts} PPC_SHA1=YesPlease"
fi
if use curl ; then
use webdav || myopts="${myopts} NO_EXPAT=YesPlease"
else
myopts="${myopts} NO_CURL=YesPlease"
fi
# broken assumptions, because of broken build system ...
myopts="${myopts} NO_FINK=YesPlease NO_DARWIN_PORTS=YesPlease"
myopts="${myopts} INSTALL=install TAR=tar"
myopts="${myopts} SHELL_PATH=${EPREFIX}/bin/sh"
myopts="${myopts} SANE_TOOL_PATH="
myopts="${myopts} OLD_ICONV="
myopts="${myopts} NO_EXTERNAL_GREP="
# For svn-fe
extlibs="-lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '')"
# can't define this to null, since the entire makefile depends on it
sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile
use iconv \
|| myopts="${myopts} NO_ICONV=YesPlease"
use nls \
|| myopts="${myopts} NO_GETTEXT=YesPlease"
use tk \
|| myopts="${myopts} NO_TCLTK=YesPlease"
use pcre \
&& myopts="${myopts} USE_LIBPCRE=yes" \
&& extlibs="${extlibs} -lpcre"
use perl \
&& myopts="${myopts} INSTALLDIRS=vendor" \
|| myopts="${myopts} NO_PERL=YesPlease"
use python \
|| myopts="${myopts} NO_PYTHON=YesPlease"
use subversion \
|| myopts="${myopts} NO_SVN_TESTS=YesPlease"
use threads \
&& myopts="${myopts} THREADED_DELTA_SEARCH=YesPlease" \
|| myopts="${myopts} NO_PTHREADS=YesPlease"
use cvs \
|| myopts="${myopts} NO_CVS=YesPlease"
# Disabled until ~m68k-mint can be keyworded again
# if [[ ${CHOST} == *-mint* ]] ; then
# myopts="${myopts} NO_MMAP=YesPlease"
# myopts="${myopts} NO_IPV6=YesPlease"
# myopts="${myopts} NO_STRLCPY=YesPlease"
# myopts="${myopts} NO_MEMMEM=YesPlease"
# myopts="${myopts} NO_MKDTEMP=YesPlease"
# myopts="${myopts} NO_MKSTEMPS=YesPlease"
# fi
if [[ ${CHOST} == ia64-*-hpux* ]]; then
myopts="${myopts} NO_NSEC=YesPlease"
fi
if [[ ${CHOST} == *-*-aix* ]]; then
myopts="${myopts} NO_FNMATCH_CASEFOLD=YesPlease"
fi
if [[ ${CHOST} == *-solaris* ]]; then
myopts="${myopts} NEEDS_LIBICONV=YesPlease"
fi
has_version '>=app-text/asciidoc-8.0' \
&& myopts="${myopts} ASCIIDOC8=YesPlease"
myopts="${myopts} ASCIIDOC_NO_ROFF=YesPlease"
# Bug 290465:
# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
[[ "${CHOST}" == *-uclibc* ]] && \
myopts="${myopts} NO_NSEC=YesPlease"
export MY_MAKEOPTS="${myopts}"
export EXTLIBS="${extlibs}"
}
src_unpack() {
if [[ ${PV} != *9999 ]]; then
unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
cd "${S}"
unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
use doc && \
cd "${S}"/Documentation && \
unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
cd "${S}"
else
git-2_src_unpack
cd "${S}"
#cp "${FILESDIR}"/GIT-VERSION-GEN .
fi
}
src_prepare() {
# bug #350330 - automagic CVS when we don't want it is bad.
epatch "${FILESDIR}"/git-1.8.4-optional-cvs.patch
sed -i \
-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
Makefile contrib/svn-fe/Makefile || die "sed failed"
# Never install the private copy of Error.pm (bug #296310)
sed -i \
-e '/private-Error.pm/s,^,#,' \
perl/Makefile.PL
# Fix docbook2texi command
sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
Documentation/Makefile || die "sed failed"
# Fix git-subtree missing DESTDIR
sed -i \
-e '/$(INSTALL)/s/ $(libexecdir)/ $(DESTDIR)$(libexecdir)/g' \
-e '/$(INSTALL)/s/ $(man1dir)/ $(DESTDIR)$(man1dir)/g' \
contrib/subtree/Makefile
}
git_emake() {
# bug #326625: PERL_PATH, PERL_MM_OPT
# bug #320647: PYTHON_PATH
PYTHON_PATH=""
use python && PYTHON_PATH="${PYTHON}"
emake ${MY_MAKEOPTS} \
DESTDIR="${D}" \
OPTCFLAGS="${CFLAGS}" \
OPTLDFLAGS="${LDFLAGS}" \
OPTCC="$(tc-getCC)" \
OPTAR="$(tc-getAR)" \
prefix="${EPREFIX}"/usr \
htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
sysconfdir="${EPREFIX}"/etc \
PYTHON_PATH="${PYTHON_PATH}" \
PERL_MM_OPT="" \
GIT_TEST_OPTS="--no-color" \
V=1 \
"$@"
# This is the fix for bug #326625, but it also causes breakage, see bug
# #352693.
# PERL_PATH="${EPREFIX}/usr/bin/env perl" \
}
src_configure() {
exportmakeopts
}
src_compile() {
if use perl ; then
git_emake perl/PM.stamp || die "emake perl/PM.stamp failed"
git_emake perl/perl.mak || die "emake perl/perl.mak failed"
fi
git_emake || die "emake failed"
if use emacs ; then
elisp-compile contrib/emacs/git{,-blame}.el
fi
if use perl && use cgi ; then
git_emake \
gitweb/gitweb.cgi \
|| die "emake gitweb/gitweb.cgi failed"
fi
if [[ ${CHOST} == *-darwin* ]]; then
cd "${S}"/contrib/credential/osxkeychain || die "cd credential/osxkeychain"
git_emake || die "emake credential-osxkeychain"
fi
cd "${S}"/Documentation
if [[ ${PV} == *9999 ]] ; then
git_emake man \
|| die "emake man failed"
if use doc ; then
git_emake info html \
|| die "emake info html failed"
fi
else
if use doc ; then
git_emake info \
|| die "emake info html failed"
fi
fi
if use subversion ; then
cd "${S}"/contrib/svn-fe
git_emake EXTLIBS="${EXTLIBS}" || die "emake svn-fe failed"
if use doc ; then
git_emake svn-fe.{1,html} || die "emake svn-fe.1 svn-fe.html failed"
fi
cd "${S}"
fi
if use gnome-keyring ; then
cd "${S}"/contrib/credential/gnome-keyring
git_emake || die "emake git-credential-gnome-keyring failed"
fi
cd "${S}"/contrib/subtree
git_emake
use doc && git_emake doc
}
src_install() {
git_emake \
install || \
die "make install failed"
if [[ ${CHOST} == *-darwin* ]]; then
dobin contrib/credential/osxkeychain/git-credential-osxkeychain
fi
# Depending on the tarball and manual rebuild of the documentation, the
# manpages may exist in either OR both of these directories.
find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
dodoc README Documentation/{SubmittingPatches,CodingGuidelines}
use doc && dodir /usr/share/doc/${PF}/html
for d in / /howto/ /technical/ ; do
docinto ${d}
dodoc Documentation${d}*.txt
use doc && dohtml -p ${d} Documentation${d}*.html
done
docinto /
# Upstream does not ship this pre-built :-(
use doc && doinfo Documentation/{git,gitman}.info
newbashcomp contrib/completion/git-completion.bash ${PN}
newbashcomp contrib/completion/git-prompt.sh ${PN}-prompt
if use emacs ; then
elisp-install ${PN} contrib/emacs/git.{el,elc}
elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
# don't add automatically to the load-path, so the sitefile
# can do a conditional loading
touch "${ED}${SITELISP}/${PN}/compat/.nosearch"
elisp-site-file-install "${FILESDIR}"/${SITEFILE}
fi
if use python && use gtk ; then
python_doscript "${S}"/contrib/gitview/gitview
dodoc "${S}"/contrib/gitview/gitview.txt
fi
#dobin contrib/fast-import/git-p4 # Moved upstream
#dodoc contrib/fast-import/git-p4.txt # Moved upstream
newbin contrib/fast-import/import-tars.perl import-tars
exeinto /usr/libexec/git-core/
newexe contrib/git-resurrect.sh git-resurrect
# git-subtree
cd "${S}"/contrib/subtree
git_emake install || die "Failed to emake install git-subtree"
if use doc ; then
git_emake install-man install-doc || die "Failed to emake install-doc install-mangit-subtree"
fi
newdoc README README.git-subtree
dodoc git-subtree.txt
cd "${S}"
# git-diffall
dobin contrib/diffall/git-diffall
newdoc contrib/diffall/README git-diffall.txt
# diff-highlight
dobin contrib/diff-highlight/diff-highlight
newdoc contrib/diff-highlight/README README.diff-highlight
# git-jump
exeinto /usr/libexec/git-core/
doexe contrib/git-jump/git-jump
newdoc contrib/git-jump/README git-jump.txt
# git-contacts
exeinto /usr/libexec/git-core/
doexe contrib/contacts/git-contacts
dodoc contrib/contacts/git-contacts.txt
if use gnome-keyring ; then
cd "${S}"/contrib/credential/gnome-keyring
dobin git-credential-gnome-keyring
fi
if use subversion ; then
cd "${S}"/contrib/svn-fe
dobin svn-fe
dodoc svn-fe.txt
use doc && doman svn-fe.1 && dohtml svn-fe.html
cd "${S}"
fi
# remote-helpers
if use python ; then
python_scriptinto /usr/libexec/git-core/
python_doscript "${S}"/contrib/remote-helpers/git-remote-{bzr,hg}
python_optimize
fi
dodir /usr/share/${PN}/contrib
# The following are excluded:
# completion - installed above
# credential/gnome-keyring TODO
# diff-highlight - done above
# diffall - done above
# emacs - installed above
# examples - these are stuff that is not used in Git anymore actually
# git-jump - done above
# gitview - installed above
# p4import - excluded because fast-import has a better one
# patches - stuff the Git guys made to go upstream to other places
# persistent-https - TODO
# mw-to-git - TODO
# subtree - build seperately
# svnimport - use git-svn
# thunderbird-patch-inline - fixes thunderbird
for i in \
buildsystems ciabot convert-objects fast-import \
hg-to-git hooks remotes2config.sh rerere-train.sh \
stats vim workdir \
; do
cp -rf \
"${S}"/contrib/${i} \
"${ED}"/usr/share/${PN}/contrib \
|| die "Failed contrib ${i}"
done
if use perl && use cgi ; then
# We used to install in /usr/share/${PN}/gitweb
# but upstream installs in /usr/share/gitweb
# so we will install a symlink and use their location for compat with other
# distros
dosym /usr/share/gitweb /usr/share/${PN}/gitweb
# INSTALL discusses configuration issues, not just installation
docinto /
newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb
newdoc "${S}"/gitweb/README README.gitweb
find "${ED}"/usr/lib64/perl5/ \
-name .packlist \
-exec rm \{\} \;
else
rm -rf "${ED}"/usr/share/gitweb
fi
if ! use subversion ; then
rm -f "${ED}"/usr/libexec/git-core/git-svn \
"${ED}"/usr/share/man/man1/git-svn.1*
fi
if use xinetd ; then
insinto /etc/xinetd.d
newins "${FILESDIR}"/git-daemon.xinetd git-daemon
fi
if use !prefix ; then
newinitd "${FILESDIR}"/git-daemon.initd git-daemon
newconfd "${FILESDIR}"/git-daemon.confd git-daemon
systemd_newunit "${FILESDIR}/git-daemon_at.service" "git-daemon@.service"
systemd_dounit "${FILESDIR}/git-daemon.socket"
fi
fixlocalpod
}
src_test() {
local disabled=""
local tests_cvs="t9200-git-cvsexportcommit.sh \
t9400-git-cvsserver-server.sh \
t9401-git-cvsserver-crlf.sh \
t9600-cvsimport.sh \
t9601-cvsimport-vendor-branch.sh \
t9602-cvsimport-branches-tags.sh \
t9603-cvsimport-patchsets.sh"
local tests_perl="t3701-add-interactive.sh \
t5502-quickfetch.sh \
t5512-ls-remote.sh \
t5520-pull.sh \
t7106-reset-unborn-branch.sh \
t7501-commit.sh"
# Bug #225601 - t0004 is not suitable for root perm
# Bug #219839 - t1004 is not suitable for root perm
# t0001-init.sh - check for init notices EPERM* fails
local tests_nonroot="t0001-init.sh \
t0004-unwritable.sh \
t0070-fundamental.sh \
t1004-read-tree-m-u-wf.sh \
t3700-add.sh \
t7300-clean.sh"
# t9100 still fails with symlinks in SVN 1.7
local test_svn="t9100-git-svn-basic.sh"
# Unzip is used only for the testcase code, not by any normal parts of Git.
if ! has_version app-arch/unzip ; then
einfo "Disabling tar-tree tests"
disabled="${disabled} t5000-tar-tree.sh"
fi
cvs=0
use cvs && let cvs=$cvs+1
if [[ ${EUID} -eq 0 ]]; then
if [[ $cvs -eq 1 ]]; then
ewarn "Skipping CVS tests because CVS does not work as root!"
ewarn "You should retest with FEATURES=userpriv!"
disabled="${disabled} ${tests_cvs}"
fi
einfo "Skipping other tests that require being non-root"
disabled="${disabled} ${tests_nonroot}"
else
[[ $cvs -gt 0 ]] && \
has_version dev-vcs/cvs && \
let cvs=$cvs+1
[[ $cvs -gt 1 ]] && \
has_version "dev-vcs/cvs[server]" && \
let cvs=$cvs+1
if [[ $cvs -lt 3 ]]; then
einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
disabled="${disabled} ${tests_cvs}"
fi
fi
if ! use perl ; then
einfo "Disabling tests that need Perl"
disabled="${disabled} ${tests_perl}"
fi
einfo "Disabling tests that fail with SVN 1.7"
disabled="${disabled} ${test_svn}"
# Reset all previously disabled tests
cd "${S}/t"
for i in *.sh.DISABLED ; do
[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
done
einfo "Disabled tests:"
for i in ${disabled} ; do
[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled $i"
done
# Avoid the test system removing the results because we want them ourselves
sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
-i "${S}"/t/Makefile
# Clean old results first, must always run
cd "${S}/t"
nonfatal git_emake clean
# Now run the tests, keep going if we hit an error, and don't terminate on
# failure
cd "${S}"
einfo "Start test run"
#MAKEOPTS=-j1
nonfatal git_emake --keep-going test
rc=$?
# Display nice results, now print the results
cd "${S}/t"
nonfatal git_emake aggregate-results
# And bail if there was a problem
[ $rc -eq 0 ] || die "tests failed. Please file a bug."
}
showpkgdeps() {
local pkg=$1
shift
elog " $(printf "%-17s:" ${pkg}) ${@}"
}
pkg_postinst() {
use emacs && elisp-site-regen
einfo "Please read /usr/share/bash-completion/git for Git bash command completion"
einfo "Please read /usr/share/bash-completion/git-prompt for Git bash prompt"
einfo "Note that the prompt bash code is now in the seperate script"
elog "These additional scripts need some dependencies:"
echo
showpkgdeps git-quiltimport "dev-util/quilt"
showpkgdeps git-instaweb \
"|| ( www-servers/lighttpd www-servers/apache )"
echo
}
pkg_postrm() {
use emacs && elisp-site-regen
}

View File

@ -0,0 +1,617 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-vcs/git/git-1.8.4.ebuild,v 1.2 2013/10/20 20:11:50 grobian Exp $
EAPI=5
GENTOO_DEPEND_ON_PERL=no
# bug #329479: git-remote-testgit is not multiple-version aware
PYTHON_COMPAT=( python2_{6,7} )
[[ ${PV} == *9999 ]] && SCM="git-2"
EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
inherit toolchain-funcs eutils elisp-common perl-module bash-completion-r1 python-single-r1 systemd ${SCM}
MY_PV="${PV/_rc/.rc}"
MY_P="${PN}-${MY_PV}"
DOC_VER=${MY_PV}
DESCRIPTION="GIT - the stupid content tracker, the revision control system heavily used by the Linux kernel team"
HOMEPAGE="http://www.git-scm.com/"
if [[ ${PV} != *9999 ]]; then
SRC_URI_SUFFIX="gz"
SRC_URI_GOOG="http://git-core.googlecode.com/files"
SRC_URI_KORG="mirror://kernel/software/scm/git"
SRC_URI="${SRC_URI_GOOG}/${MY_P}.tar.${SRC_URI_SUFFIX}
${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
${SRC_URI_GOOG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
doc? (
${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
${SRC_URI_GOOG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
)"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
else
SRC_URI=""
KEYWORDS=""
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg gtk highlight +iconv +nls +pcre +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test"
# Common to both DEPEND and RDEPEND
CDEPEND="
dev-libs/openssl
sys-libs/zlib
pcre? ( dev-libs/libpcre )
perl? ( dev-lang/perl[-build(-)] )
tk? ( dev-lang/tk )
curl? (
net-misc/curl
webdav? ( dev-libs/expat )
)
emacs? ( virtual/emacs )
gnome-keyring? ( gnome-base/gnome-keyring )"
RDEPEND="${CDEPEND}
gpg? ( app-crypt/gnupg )
perl? ( dev-perl/Error
dev-perl/Net-SMTP-SSL
dev-perl/Authen-SASL
cgi? ( virtual/perl-CGI highlight? ( app-text/highlight ) )
cvs? ( >=dev-vcs/cvsps-2.1 dev-perl/DBI dev-perl/DBD-SQLite )
subversion? ( dev-vcs/subversion[-dso,perl] dev-perl/libwww-perl dev-perl/TermReadKey )
)
python? ( gtk?
(
>=dev-python/pygtk-2.8[${PYTHON_USEDEP}]
>=dev-python/pygtksourceview-2.10.1-r1:2[${PYTHON_USEDEP}]
)
${PYTHON_DEPS} )"
# This is how info docs are created with Git:
# .txt/asciidoc --(asciidoc)---------> .xml/docbook
# .xml/docbook --(docbook2texi.pl)--> .texi
# .texi --(makeinfo)---------> .info
DEPEND="${CDEPEND}
app-arch/cpio
doc? (
app-text/asciidoc
app-text/docbook2X
sys-apps/texinfo
app-text/xmlto
)
test? (
app-crypt/gnupg
)"
# Live ebuild builds man pages and HTML docs, additionally
if [[ ${PV} == *9999 ]]; then
DEPEND="${DEPEND}
app-text/asciidoc"
fi
SITEFILE=50${PN}-gentoo.el
S="${WORKDIR}/${MY_P}"
REQUIRED_USE="
cgi? ( perl )
cvs? ( perl )
subversion? ( perl )
webdav? ( curl )
gtk? ( python )
python? ( ${PYTHON_REQUIRED_USE} )
"
pkg_setup() {
if use subversion && has_version "dev-vcs/subversion[dso]"; then
ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
ewarn "with USE=dso, there may be weird crashes in git-svn. You"
ewarn "have been warned."
fi
if use python ; then
python-single-r1_pkg_setup
fi
}
# This is needed because for some obscure reasons future calls to make don't
# pick up these exports if we export them in src_unpack()
exportmakeopts() {
local myopts
if use blksha1 ; then
myopts="${myopts} BLK_SHA1=YesPlease"
elif use ppcsha1 ; then
myopts="${myopts} PPC_SHA1=YesPlease"
fi
if use curl ; then
use webdav || myopts="${myopts} NO_EXPAT=YesPlease"
else
myopts="${myopts} NO_CURL=YesPlease"
fi
# broken assumptions, because of broken build system ...
myopts="${myopts} NO_FINK=YesPlease NO_DARWIN_PORTS=YesPlease"
myopts="${myopts} INSTALL=install TAR=tar"
myopts="${myopts} SHELL_PATH=${EPREFIX}/bin/sh"
myopts="${myopts} SANE_TOOL_PATH="
myopts="${myopts} OLD_ICONV="
myopts="${myopts} NO_EXTERNAL_GREP="
# For svn-fe
extlibs="-lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '')"
# can't define this to null, since the entire makefile depends on it
sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile
use iconv \
|| myopts="${myopts} NO_ICONV=YesPlease"
use nls \
|| myopts="${myopts} NO_GETTEXT=YesPlease"
use tk \
|| myopts="${myopts} NO_TCLTK=YesPlease"
use pcre \
&& myopts="${myopts} USE_LIBPCRE=yes" \
&& extlibs="${extlibs} -lpcre"
use perl \
&& myopts="${myopts} INSTALLDIRS=vendor" \
|| myopts="${myopts} NO_PERL=YesPlease"
use python \
|| myopts="${myopts} NO_PYTHON=YesPlease"
use subversion \
|| myopts="${myopts} NO_SVN_TESTS=YesPlease"
use threads \
&& myopts="${myopts} THREADED_DELTA_SEARCH=YesPlease" \
|| myopts="${myopts} NO_PTHREADS=YesPlease"
use cvs \
|| myopts="${myopts} NO_CVS=YesPlease"
# Disabled until ~m68k-mint can be keyworded again
# if [[ ${CHOST} == *-mint* ]] ; then
# myopts="${myopts} NO_MMAP=YesPlease"
# myopts="${myopts} NO_IPV6=YesPlease"
# myopts="${myopts} NO_STRLCPY=YesPlease"
# myopts="${myopts} NO_MEMMEM=YesPlease"
# myopts="${myopts} NO_MKDTEMP=YesPlease"
# myopts="${myopts} NO_MKSTEMPS=YesPlease"
# fi
if [[ ${CHOST} == ia64-*-hpux* ]]; then
myopts="${myopts} NO_NSEC=YesPlease"
fi
if [[ ${CHOST} == *-*-aix* ]]; then
myopts="${myopts} NO_FNMATCH_CASEFOLD=YesPlease"
fi
if [[ ${CHOST} == *-solaris* ]]; then
myopts="${myopts} NEEDS_LIBICONV=YesPlease"
fi
has_version '>=app-text/asciidoc-8.0' \
&& myopts="${myopts} ASCIIDOC8=YesPlease"
myopts="${myopts} ASCIIDOC_NO_ROFF=YesPlease"
# Bug 290465:
# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
[[ "${CHOST}" == *-uclibc* ]] && \
myopts="${myopts} NO_NSEC=YesPlease"
export MY_MAKEOPTS="${myopts}"
export EXTLIBS="${extlibs}"
}
src_unpack() {
if [[ ${PV} != *9999 ]]; then
unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
cd "${S}"
unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
use doc && \
cd "${S}"/Documentation && \
unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
cd "${S}"
else
git-2_src_unpack
cd "${S}"
#cp "${FILESDIR}"/GIT-VERSION-GEN .
fi
}
src_prepare() {
# bug #350330 - automagic CVS when we don't want it is bad.
epatch "${FILESDIR}"/git-1.8.4-optional-cvs.patch
sed -i \
-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
Makefile contrib/svn-fe/Makefile || die "sed failed"
# Never install the private copy of Error.pm (bug #296310)
sed -i \
-e '/private-Error.pm/s,^,#,' \
perl/Makefile.PL
# Fix docbook2texi command
sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
Documentation/Makefile || die "sed failed"
# Fix git-subtree missing DESTDIR
sed -i \
-e '/$(INSTALL)/s/ $(libexecdir)/ $(DESTDIR)$(libexecdir)/g' \
-e '/$(INSTALL)/s/ $(man1dir)/ $(DESTDIR)$(man1dir)/g' \
contrib/subtree/Makefile
}
git_emake() {
# bug #326625: PERL_PATH, PERL_MM_OPT
# bug #320647: PYTHON_PATH
PYTHON_PATH=""
use python && PYTHON_PATH="${PYTHON}"
emake ${MY_MAKEOPTS} \
DESTDIR="${D}" \
OPTCFLAGS="${CFLAGS}" \
OPTLDFLAGS="${LDFLAGS}" \
OPTCC="$(tc-getCC)" \
OPTAR="$(tc-getAR)" \
prefix="${EPREFIX}"/usr \
htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
sysconfdir="${EPREFIX}"/etc \
PYTHON_PATH="${PYTHON_PATH}" \
PERL_MM_OPT="" \
GIT_TEST_OPTS="--no-color" \
V=1 \
"$@"
# This is the fix for bug #326625, but it also causes breakage, see bug
# #352693.
# PERL_PATH="${EPREFIX}/usr/bin/env perl" \
}
src_configure() {
exportmakeopts
}
src_compile() {
if use perl ; then
git_emake perl/PM.stamp || die "emake perl/PM.stamp failed"
git_emake perl/perl.mak || die "emake perl/perl.mak failed"
fi
git_emake || die "emake failed"
if use emacs ; then
elisp-compile contrib/emacs/git{,-blame}.el
fi
if use perl && use cgi ; then
git_emake \
gitweb/gitweb.cgi \
|| die "emake gitweb/gitweb.cgi failed"
fi
if [[ ${CHOST} == *-darwin* ]]; then
cd "${S}"/contrib/credential/osxkeychain || die "cd credential/osxkeychain"
git_emake || die "emake credential-osxkeychain"
fi
cd "${S}"/Documentation
if [[ ${PV} == *9999 ]] ; then
git_emake man \
|| die "emake man failed"
if use doc ; then
git_emake info html \
|| die "emake info html failed"
fi
else
if use doc ; then
git_emake info \
|| die "emake info html failed"
fi
fi
if use subversion ; then
cd "${S}"/contrib/svn-fe
git_emake EXTLIBS="${EXTLIBS}" || die "emake svn-fe failed"
if use doc ; then
git_emake svn-fe.{1,html} || die "emake svn-fe.1 svn-fe.html failed"
fi
cd "${S}"
fi
if use gnome-keyring ; then
cd "${S}"/contrib/credential/gnome-keyring
git_emake || die "emake git-credential-gnome-keyring failed"
fi
cd "${S}"/contrib/subtree
git_emake
use doc && git_emake doc
}
src_install() {
git_emake \
install || \
die "make install failed"
if [[ ${CHOST} == *-darwin* ]]; then
dobin contrib/credential/osxkeychain/git-credential-osxkeychain
fi
# Depending on the tarball and manual rebuild of the documentation, the
# manpages may exist in either OR both of these directories.
find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
dodoc README Documentation/{SubmittingPatches,CodingGuidelines}
use doc && dodir /usr/share/doc/${PF}/html
for d in / /howto/ /technical/ ; do
docinto ${d}
dodoc Documentation${d}*.txt
use doc && dohtml -p ${d} Documentation${d}*.html
done
docinto /
# Upstream does not ship this pre-built :-(
use doc && doinfo Documentation/{git,gitman}.info
newbashcomp contrib/completion/git-completion.bash ${PN}
newbashcomp contrib/completion/git-prompt.sh ${PN}-prompt
if use emacs ; then
elisp-install ${PN} contrib/emacs/git.{el,elc}
elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
# don't add automatically to the load-path, so the sitefile
# can do a conditional loading
touch "${ED}${SITELISP}/${PN}/compat/.nosearch"
elisp-site-file-install "${FILESDIR}"/${SITEFILE}
fi
if use python && use gtk ; then
python_doscript "${S}"/contrib/gitview/gitview
dodoc "${S}"/contrib/gitview/gitview.txt
fi
#dobin contrib/fast-import/git-p4 # Moved upstream
#dodoc contrib/fast-import/git-p4.txt # Moved upstream
newbin contrib/fast-import/import-tars.perl import-tars
exeinto /usr/libexec/git-core/
newexe contrib/git-resurrect.sh git-resurrect
# git-subtree
cd "${S}"/contrib/subtree
git_emake install || die "Failed to emake install git-subtree"
if use doc ; then
git_emake install-man install-doc || die "Failed to emake install-doc install-mangit-subtree"
fi
newdoc README README.git-subtree
dodoc git-subtree.txt
cd "${S}"
# git-diffall
dobin contrib/diffall/git-diffall
newdoc contrib/diffall/README git-diffall.txt
# diff-highlight
dobin contrib/diff-highlight/diff-highlight
newdoc contrib/diff-highlight/README README.diff-highlight
# git-jump
exeinto /usr/libexec/git-core/
doexe contrib/git-jump/git-jump
newdoc contrib/git-jump/README git-jump.txt
# git-contacts
exeinto /usr/libexec/git-core/
doexe contrib/contacts/git-contacts
dodoc contrib/contacts/git-contacts.txt
if use gnome-keyring ; then
cd "${S}"/contrib/credential/gnome-keyring
dobin git-credential-gnome-keyring
fi
if use subversion ; then
cd "${S}"/contrib/svn-fe
dobin svn-fe
dodoc svn-fe.txt
use doc && doman svn-fe.1 && dohtml svn-fe.html
cd "${S}"
fi
# remote-helpers
if use python ; then
python_scriptinto /usr/libexec/git-core/
python_doscript "${S}"/contrib/remote-helpers/git-remote-{bzr,hg}
python_optimize
fi
dodir /usr/share/${PN}/contrib
# The following are excluded:
# completion - installed above
# credential/gnome-keyring TODO
# diff-highlight - done above
# diffall - done above
# emacs - installed above
# examples - these are stuff that is not used in Git anymore actually
# git-jump - done above
# gitview - installed above
# p4import - excluded because fast-import has a better one
# patches - stuff the Git guys made to go upstream to other places
# persistent-https - TODO
# mw-to-git - TODO
# subtree - build seperately
# svnimport - use git-svn
# thunderbird-patch-inline - fixes thunderbird
for i in \
buildsystems ciabot convert-objects fast-import \
hg-to-git hooks remotes2config.sh rerere-train.sh \
stats vim workdir \
; do
cp -rf \
"${S}"/contrib/${i} \
"${ED}"/usr/share/${PN}/contrib \
|| die "Failed contrib ${i}"
done
if use perl && use cgi ; then
# We used to install in /usr/share/${PN}/gitweb
# but upstream installs in /usr/share/gitweb
# so we will install a symlink and use their location for compat with other
# distros
dosym /usr/share/gitweb /usr/share/${PN}/gitweb
# INSTALL discusses configuration issues, not just installation
docinto /
newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb
newdoc "${S}"/gitweb/README README.gitweb
find "${ED}"/usr/lib64/perl5/ \
-name .packlist \
-exec rm \{\} \;
else
rm -rf "${ED}"/usr/share/gitweb
fi
if ! use subversion ; then
rm -f "${ED}"/usr/libexec/git-core/git-svn \
"${ED}"/usr/share/man/man1/git-svn.1*
fi
if use xinetd ; then
insinto /etc/xinetd.d
newins "${FILESDIR}"/git-daemon.xinetd git-daemon
fi
if use !prefix ; then
newinitd "${FILESDIR}"/git-daemon.initd git-daemon
newconfd "${FILESDIR}"/git-daemon.confd git-daemon
systemd_newunit "${FILESDIR}/git-daemon_at.service" "git-daemon@.service"
systemd_dounit "${FILESDIR}/git-daemon.socket"
fi
fixlocalpod
}
src_test() {
local disabled=""
local tests_cvs="t9200-git-cvsexportcommit.sh \
t9400-git-cvsserver-server.sh \
t9401-git-cvsserver-crlf.sh \
t9600-cvsimport.sh \
t9601-cvsimport-vendor-branch.sh \
t9602-cvsimport-branches-tags.sh \
t9603-cvsimport-patchsets.sh"
local tests_perl="t3701-add-interactive.sh \
t5502-quickfetch.sh \
t5512-ls-remote.sh \
t5520-pull.sh \
t7106-reset-unborn-branch.sh \
t7501-commit.sh"
# Bug #225601 - t0004 is not suitable for root perm
# Bug #219839 - t1004 is not suitable for root perm
# t0001-init.sh - check for init notices EPERM* fails
local tests_nonroot="t0001-init.sh \
t0004-unwritable.sh \
t0070-fundamental.sh \
t1004-read-tree-m-u-wf.sh \
t3700-add.sh \
t7300-clean.sh"
# t9100 still fails with symlinks in SVN 1.7
local test_svn="t9100-git-svn-basic.sh"
# Unzip is used only for the testcase code, not by any normal parts of Git.
if ! has_version app-arch/unzip ; then
einfo "Disabling tar-tree tests"
disabled="${disabled} t5000-tar-tree.sh"
fi
cvs=0
use cvs && let cvs=$cvs+1
if [[ ${EUID} -eq 0 ]]; then
if [[ $cvs -eq 1 ]]; then
ewarn "Skipping CVS tests because CVS does not work as root!"
ewarn "You should retest with FEATURES=userpriv!"
disabled="${disabled} ${tests_cvs}"
fi
einfo "Skipping other tests that require being non-root"
disabled="${disabled} ${tests_nonroot}"
else
[[ $cvs -gt 0 ]] && \
has_version dev-vcs/cvs && \
let cvs=$cvs+1
[[ $cvs -gt 1 ]] && \
has_version "dev-vcs/cvs[server]" && \
let cvs=$cvs+1
if [[ $cvs -lt 3 ]]; then
einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
disabled="${disabled} ${tests_cvs}"
fi
fi
if ! use perl ; then
einfo "Disabling tests that need Perl"
disabled="${disabled} ${tests_perl}"
fi
einfo "Disabling tests that fail with SVN 1.7"
disabled="${disabled} ${test_svn}"
# Reset all previously disabled tests
cd "${S}/t"
for i in *.sh.DISABLED ; do
[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
done
einfo "Disabled tests:"
for i in ${disabled} ; do
[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled $i"
done
# Avoid the test system removing the results because we want them ourselves
sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
-i "${S}"/t/Makefile
# Clean old results first, must always run
cd "${S}/t"
nonfatal git_emake clean
# Now run the tests, keep going if we hit an error, and don't terminate on
# failure
cd "${S}"
einfo "Start test run"
#MAKEOPTS=-j1
nonfatal git_emake --keep-going test
rc=$?
# Display nice results, now print the results
cd "${S}/t"
nonfatal git_emake aggregate-results
# And bail if there was a problem
[ $rc -eq 0 ] || die "tests failed. Please file a bug."
}
showpkgdeps() {
local pkg=$1
shift
elog " $(printf "%-17s:" ${pkg}) ${@}"
}
pkg_postinst() {
use emacs && elisp-site-regen
einfo "Please read /usr/share/bash-completion/git for Git bash command completion"
einfo "Please read /usr/share/bash-completion/git-prompt for Git bash prompt"
einfo "Note that the prompt bash code is now in the seperate script"
elog "These additional scripts need some dependencies:"
echo
showpkgdeps git-quiltimport "dev-util/quilt"
showpkgdeps git-instaweb \
"|| ( www-servers/lighttpd www-servers/apache )"
echo
}
pkg_postrm() {
use emacs && elisp-site-regen
}

View File

@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-vcs/git/git-9999.ebuild,v 1.45 2013/09/16 17:53:28 mgorny Exp $
# $Header: /var/cvsroot/gentoo-x86/dev-vcs/git/git-9999.ebuild,v 1.48 2013/10/20 20:11:50 grobian Exp $
EAPI=5
@ -68,7 +68,7 @@ RDEPEND="${CDEPEND}
python? ( gtk?
(
>=dev-python/pygtk-2.8[${PYTHON_USEDEP}]
dev-python/pygtksourceview:2[${PYTHON_USEDEP}]
>=dev-python/pygtksourceview-2.10.1-r1:2[${PYTHON_USEDEP}]
)
${PYTHON_DEPS} )"
@ -165,7 +165,8 @@ exportmakeopts() {
use subversion \
|| myopts="${myopts} NO_SVN_TESTS=YesPlease"
use threads \
&& myopts="${myopts} THREADED_DELTA_SEARCH=YesPlease"
&& myopts="${myopts} THREADED_DELTA_SEARCH=YesPlease" \
|| myopts="${myopts} NO_PTHREADS=YesPlease"
use cvs \
|| myopts="${myopts} NO_CVS=YesPlease"
# Disabled until ~m68k-mint can be keyworded again
@ -219,15 +220,15 @@ src_unpack() {
src_prepare() {
# bug #350330 - automagic CVS when we don't want it is bad.
epatch "${FILESDIR}"/git-1.8.2-optional-cvs.patch
epatch "${FILESDIR}"/git-1.8.4-optional-cvs.patch
sed -i \
-e 's:^\(CFLAGS =\).*$:\1 $(OPTCFLAGS) -Wall:' \
-e 's:^\(LDFLAGS =\).*$:\1 $(OPTLDFLAGS):' \
-e 's:^\(CC = \).*$:\1$(OPTCC):' \
-e 's:^\(AR = \).*$:\1$(OPTAR):' \
-e "s:\(PYTHON_PATH = \)\(.*\)$:\1${EPREFIX}\2:" \
-e "s:\(PERL_PATH = \)\(.*\)$:\1${EPREFIX}\2:" \
-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
Makefile contrib/svn-fe/Makefile || die "sed failed"
# Never install the private copy of Error.pm (bug #296310)
@ -236,7 +237,7 @@ src_prepare() {
perl/Makefile.PL
# Fix docbook2texi command
sed -i 's/DOCBOOK2X_TEXI=docbook2x-texi/DOCBOOK2X_TEXI=docbook2texi.pl/' \
sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
Documentation/Makefile || die "sed failed"
# Fix git-subtree missing DESTDIR
@ -376,7 +377,8 @@ src_install() {
#dobin contrib/fast-import/git-p4 # Moved upstream
#dodoc contrib/fast-import/git-p4.txt # Moved upstream
newbin contrib/fast-import/import-tars.perl import-tars
newbin contrib/git-resurrect.sh git-resurrect
exeinto /usr/libexec/git-core/
newexe contrib/git-resurrect.sh git-resurrect
# git-subtree
cd "${S}"/contrib/subtree
@ -397,9 +399,15 @@ src_install() {
newdoc contrib/diff-highlight/README README.diff-highlight
# git-jump
dobin contrib/git-jump/git-jump
exeinto /usr/libexec/git-core/
doexe contrib/git-jump/git-jump
newdoc contrib/git-jump/README git-jump.txt
# git-contacts
exeinto /usr/libexec/git-core/
doexe contrib/contacts/git-contacts
dodoc contrib/contacts/git-contacts.txt
if use gnome-keyring ; then
cd "${S}"/contrib/credential/gnome-keyring
dobin git-credential-gnome-keyring
@ -415,6 +423,7 @@ src_install() {
# remote-helpers
if use python ; then
python_scriptinto /usr/libexec/git-core/
python_doscript "${S}"/contrib/remote-helpers/git-remote-{bzr,hg}
python_optimize
fi
@ -437,7 +446,7 @@ src_install() {
# svnimport - use git-svn
# thunderbird-patch-inline - fixes thunderbird
for i in \
blameview buildsystems ciabot continuous convert-objects fast-import \
buildsystems ciabot convert-objects fast-import \
hg-to-git hooks remotes2config.sh rerere-train.sh \
stats vim workdir \
; do

View File

@ -5,6 +5,13 @@
<email>robbat2@gentoo.org</email>
<name>Robin H. Johnson</name>
</maintainer>
<maintainer>
<email>prometheanfire@gentoo.org</email>
</maintainer>
<maintainer>
<email>polynomial-c@gentoo.org</email>
<name>Lars Wendler</name>
</maintainer>
<longdescription lang="en">
Git - Fast Version Control System. Official titled
"GIT - the stupid content tracker".