summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2014-07-07 03:56:52 +0000
committerRobin H. Johnson <robbat2@gentoo.org>2014-07-07 03:56:52 +0000
commit5f52434ba626f9a283b724f20af422eabcbe5ea2 (patch)
treef4e5d0a6d5d3c9af9c375d14d9709238323c1f97 /dev-vcs
parentpatch to fix broken test, update ebuild accordingly (diff)
downloadhistorical-5f52434ba626f9a283b724f20af422eabcbe5ea2.tar.gz
historical-5f52434ba626f9a283b724f20af422eabcbe5ea2.tar.bz2
historical-5f52434ba626f9a283b724f20af422eabcbe5ea2.zip
Bug #514010: Wrong git-instaweb install update patch to fix.
Package-Manager: portage-2.2.10/cvs/Linux x86_64
Diffstat (limited to 'dev-vcs')
-rw-r--r--dev-vcs/git/ChangeLog8
-rw-r--r--dev-vcs/git/Manifest22
-rw-r--r--dev-vcs/git/files/git-2.0.0-r2-optional-cvs.patch375
-rw-r--r--dev-vcs/git/git-2.0.0-r2.ebuild644
4 files changed, 1033 insertions, 16 deletions
diff --git a/dev-vcs/git/ChangeLog b/dev-vcs/git/ChangeLog
index 8e423edf56fa..a5ff7f893afc 100644
--- a/dev-vcs/git/ChangeLog
+++ b/dev-vcs/git/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-vcs/git
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-vcs/git/ChangeLog,v 1.266 2014/06/24 01:44:07 tetromino Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-vcs/git/ChangeLog,v 1.267 2014/07/07 03:56:46 robbat2 Exp $
+
+*git-2.0.0-r2 (07 Jul 2014)
+
+ 07 Jul 2014; Robin H. Johnson <robbat2@gentoo.org>
+ +files/git-2.0.0-r2-optional-cvs.patch, +git-2.0.0-r2.ebuild:
+ Bug #514010: Wrong git-instaweb install update patch to fix.
24 Jun 2014; Alexandre Rostovtsev <tetromino@gentoo.org> git-1.8.1.5.ebuild,
git-1.8.1.5-r1.ebuild, git-1.8.2.1.ebuild, git-1.8.3.2-r1.ebuild,
diff --git a/dev-vcs/git/Manifest b/dev-vcs/git/Manifest
index 5f36f41313da..96b7ccba56df 100644
--- a/dev-vcs/git/Manifest
+++ b/dev-vcs/git/Manifest
@@ -1,6 +1,3 @@
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA256
-
AUX 50git-gentoo.el 472 SHA256 7cd37e8db7eaeee8d822d38851eb69771b0f09c79883a8e51309a9add85fdbe2 SHA512 0435d7d67f2b64460a62c6a95c65a722c0f8d5d50d064a81e690de84a761ba518d32db545ee70c0fa3ad7803d77d5dab100689888bc92c9d82f2d6d5073623b3 WHIRLPOOL 887682f79182f6728af3c0fd2ee0e81319d49761a987559684be5e4acae4af579a5b8d1197ddba31452cec179de3c8f5784cc85ad61f78b400e42c204c93f642
AUX git-1.7.12-optional-cvs.patch 11683 SHA256 4ffbbef802c60315740820491c25eaa57e1bba2c74cb5b2f7115b9c28b31d1bf SHA512 9f0af51636d95f78e6708dd2612aeaa8e439308a0537035019ae85a53ee124d73c74380e48706ef718666041e37d721d5ad1c224f902e3e0f88bf16214f6cfed WHIRLPOOL abebd47297245d8da9a28bd5454b6e54c5d16fb0757d099704f6fd7abeac67d2837bc6893bc7bc06145adf9ebc967871a4eec1a86924671b4b04c0b0d72742ed
AUX git-1.8.2-optional-cvs.patch 11737 SHA256 37e092ca2dfa3ec216df568c1439acb3bdcc7366b75feb092f39642fc5894ce4 SHA512 7f914f16efee2f81a6f42a0e7ff1d72094bf032e98fa1a22f4b1e848eebf3a056ccdea1c84b24310cff4f19737b336d79a4f9c098a0ac4b0556e1a74708ef870 WHIRLPOOL d5e66fbfe0a6ae6c956ffb886d66c7a7906a3d60eac43b87d1e40206197f58d9aed54ee57cf5bb592147b7b9ac50fe50996f3b7e94161e5e308567c3a108cf43
@@ -11,6 +8,7 @@ AUX git-1.8.5-mw-vendor.patch 1160 SHA256 e613f8874beec8d11644ad8d12c43cccb6585f
AUX git-1.8.5-optional-cvs.patch 10088 SHA256 a35732c6d3bfbe62b298a730652a85f7deac6bdd59bd842b4dddedaa6ad0f1fb SHA512 f78f82af4e51002553157e61a16fb9855743acaa9cd9b9914e047eb3ff7f7fc4aa2d89e9c7f86fb6bf9d3f5854e44519c72669c6436132c728b28a4599d184f1 WHIRLPOOL f8080b56bff0c1add20d9c3c3e2b842e351029cae02e147307260a6504de4300d01262176c03203259037e6f98ffb043e1e1b4a914b1110d666b30383ead2e24
AUX git-1.9.0_rc3-optional-cvs.patch 11798 SHA256 3ebd298202ef9877114abbfdfccba20b28a8ab01958828079e0b2adf77525aa3 SHA512 308fd4d00803b30e2307d8665f5a5d0a6f2e2022ba462876afea35eb2ebb246ef8d82671467e2ad1744c981d523a156d5825deceaca28f17e43604695edecc60 WHIRLPOOL c4413f0233fcf41463a2ee73567a0743c436c17d14186f1c04fd78eafb38eaba95f685db2824867b6c0e900b4657cf847de5f46fa8136b40f0a0fcdad23122af
AUX git-2.0.0-optional-cvs.patch 12140 SHA256 f0dd00d992b7eb0e6d1727d50a3682fe1dc0d1612d016bc60a64acd72adabbd9 SHA512 1d682ed01d1a8424f6e1657135cbc08b1b618ed885ead2e1ec3ef02e637ba51edf619b02445fc428a4959a6c64b59d3d6a5769e446bae8271e00e1da320faef6 WHIRLPOOL f13466ca19a4208ff1d16cacf2876dbeb565ffb3f0aef04c6d532c138a582a1a7298fd5ee055a6f12983348c6d85c03a06ed70fdd72e03aa881fe3f4fbd4ebeb
+AUX git-2.0.0-r2-optional-cvs.patch 12127 SHA256 23a50f98a01b233576da6cadbc2add7481a5b3668de15f4942fe9366e30735b9 SHA512 1594482e14634083ae571223194697986d7fd08f79eca6215692b6d10f7fa3f8947cf7a1699ad2a9e24de1bc6f9aaaf86d78a953cf05f4a9954a52ea0cc406b3 WHIRLPOOL ab73c201a29b47e4a2ca2acbf80ec2fbb1e21e6d988f2e1faf1cf9aa5972ff7af86681499e0b9c8d0567a60efed198a2a87ab4c6704ceda71a200db98718f1a9
AUX git-2.0.0_rc0-optional-cvs.patch 11711 SHA256 be659e46b51f400c1c52b1d571a9e4313e5550d00763a15139f6230af0af8560 SHA512 121d2fd3d078f5e06bdae176ac235a51f0b3a8540989cf44e3f17276a013f30b1b88c9b71884d4607b0f42f22274220c576aabbf128183f646f6640af70c8d73 WHIRLPOOL 83a5e4898eddbbd9037b91ca59301884626e8cf27b20ce9b54366a4f8fba62138c52d055640759d87c21996ffa50d70b7304766ab10d213ab17e4f873202b7f7
AUX git-daemon-r1.initd 485 SHA256 421e68201619bfbf7535d8b1a0030390b7ffab998e025f7cbd7e879c677c2819 SHA512 cd1635bf8bbd39e93d5fd44a7c3f46ad01a57894525da4d8cf05c1d2099bd0dd80440e67eb73848fe26d0442361bef9e551f5180139f46f3c65ca6c9bb739072 WHIRLPOOL c8a14e7c49d03f4c4b189a234fbd991deedf1b8f378f6bdaded8b95060f6f6a8b78f3d5bbe19fa49c1b263ed25ee0a3a9afc8ccec38af801ace207a08d8e6e35
AUX git-daemon.confd 712 SHA256 9bf02170dcf73e930a992adf44326ed7c27159d41a503ca4d9371861ee5030c9 SHA512 bf715ce0d3cd6a5be405d7739bc06252b95f93f9874716dadf666d33063be6ab3e37ae1ee253ed291bfb4f66df268b44d9653672851e1bb40112c0aae08fc4ea WHIRLPOOL 13643f53cd2f9675867ff194d680cd8ffe91bccbd0b15ae41b45471ec7310c09af8335619ff2a1562a835d8449eb44f9a9e9453c3ba15005763497c668d59181
@@ -51,22 +49,16 @@ EBUILD git-1.8.5.5.ebuild 18444 SHA256 f3911d0fe5508f6b304fc9e10f66e14206c5d495c
EBUILD git-1.9.2.ebuild 18336 SHA256 58cd27ce11db6f63abaa967bfd8c20b479d162c28de85a6ca9faa269a9c22937 SHA512 95a4ce4656390c74d781fa9dd552b58ec292ff7e1375932c58fb3f201c57348407790b0ce51bbc4408762fb379414ebb4382e0ce98cae1b601fab156671b0d40 WHIRLPOOL 9968bb9585a77df66b3dd0d6a359f928c5cc7856a378cee9008f14b68d94a9b994193d15066b8794f4b199af04e049e1f61870c02073ccf9086cd65b3ac20b9a
EBUILD git-1.9.3.ebuild 18401 SHA256 b5c8e8c34f18fe480316a4c1a362f5516c6694f9dcdb21cc701796a02c71095e SHA512 8713955f11876f0de849459d327ecdf5d04d454257683187d55477d73ee12cd592f79f0642aa3bbb7c62ef1cbb3b1eca2877fd169bc0cab748a102cc7ca9d05c WHIRLPOOL 363b60787caee4e3fdc24f444dac781138af6e998db0de0c50715ccc040ace7c4c24b1ebc47e1730a8bf85660494d865f929a85dbda0b394205ce1269c581688
EBUILD git-2.0.0-r1.ebuild 18415 SHA256 056f40dab36736f7a009013918b2bec5a0ec667c3b8d10a2fa8d7f62acd8bccc SHA512 a925afd488a7f7cc0d560285d86123f25b2e82b0aa6e8d56c3d885780cff439a64f033c66f35a6aaa324bb86dfbbb41a036918a249a7714865ddcf3604cac8ed WHIRLPOOL 5c750af6dbece7e8c33464796cde8f62346dc01a1d06e50bec93bb6f7acef7102651bd24dbf440acc6e4a7cfe1897584260dcf6099042643507fea1cbaa18fb2
+EBUILD git-2.0.0-r2.ebuild 18416 SHA256 4a4b6a2d9dc34292bc5de120291801f1aaef76a140dfb7b388454ed9b0ce7c44 SHA512 661c1c1393633cf710bb4134221458a2b2afd0532c7bb74a33b3876c1d7b0a1c12a6b0cadfb2bc468697de8c0b4bd58d4acd910c0609be9fc3ef880be6aa7835 WHIRLPOOL c8d43357bff9d69dbdeb60600c416a26b9a7762bc8142fb2d1f1891aedfb130bafca1442b9e93437ba40335989a5c52ec6895db3bcd12108f09b47aa4926223f
EBUILD git-2.0.0.ebuild 18412 SHA256 293603f2ce9889a69c84e24852c776cd581ed8933d9975f0a0a0826630ca8149 SHA512 abd8627754f85586c49aad47d35caec44723f1aea2e2b4ec17128d1d2ead567c0a35fbecdf0748c606b3974d3f7bae38c9f8077f73bff082951651dd2ddbcf7c WHIRLPOOL 5c051885b223e41e5ad935df681f804a9b4e3d48b9ffff58637deef51aaf73bbe63157f10d452e4f666ea409f5616e5433d91809de074055fb278eb61fed9399
EBUILD git-9999-r1.ebuild 18429 SHA256 b7a46df58d8db77fdb92dd9d38aa79ec13333663921a9ab5b555669dabbb6243 SHA512 e98f691dfb497c4026de6e809a9e1ead4d2039f62ef8c41535a738a923fed864d718173346765282fd344a5a93f599f97d2ff998c2d12d8cc974ff8a8f5cf5db WHIRLPOOL 236c89dbcedfc91a9a2f5a882eac340736e933e509c232c55ef0ca1c7b1dfab25da817d7afe9a35b3930ad54072b4a93f75b5064a9b7ce1f62ef943673ecd6f1
EBUILD git-9999-r2.ebuild 18428 SHA256 7949810c2fc4a3a0949f2c6c79a6f0be5576c9bffae0668d15821529cb3fc114 SHA512 1e26eccf828111a432b1b72f4dbae0ff612617b95f4765d63d925aadc5c80cf0fe52c63c3f3614032c8825f2858205f66b9ebc7a1f5fcbd8e9589ea3313d3196 WHIRLPOOL 557acd343e23da274860ce0f1af59d3c9c86069d0690f0441418396ad661b8f50d82d91e0b7dbf951c7247de7232bcdf7867dd4080e5f1ea33dd67a0aed742cf
EBUILD git-9999-r3.ebuild 18426 SHA256 472e5aba211cc1815a4f0fdc4c2681a0bf18ad00420dd6bd99b0dbe25506a99a SHA512 0cd75f80a7b04bedbefd264ea4dfc2fe9386ef85bef5d95c8f8fd9ae3fc56cd5e99d54d74af10228d33a32ded44d0987803c43dc7d6eb7ed6740d0dece98cf2c WHIRLPOOL 0a3f92bcbdf0475bb9a6c7026543e62e05649645e54c410d713443c033c7f24f30299568f037d3b46995c212c8c087de7acdbdc068f86e49167a5d6f572b6321
EBUILD git-9999.ebuild 18428 SHA256 b15f3f6c987df2cebeae2537ffafe94d413b1370f620019593b58770b85935f4 SHA512 68d16476f4bef771feebc32caa866a31d60496f99ef18fdbd26a44cd5f9bb7bd2f98505a7d543011781228c02c494e2d91e7194a97d3cafe9424f464565bca96 WHIRLPOOL 5178cd97cdb410c7f3049352ae672a1aeafd913f093e0fd724c4232a9c37f237157ef2cfc0e4453a5610062f1fb355e2374f3bb568cbd430304199fe9017712d
-MISC ChangeLog 16416 SHA256 50707d8531c9d63d6c906c1fae1964a8343d9cac32d368eb282f8339e1a58c51 SHA512 f5a263d19130a8206c6aefac48ea8fb756c40c904981720fce9bb0095ff80bac0c17c1300f59e2290745d287691875d160e4f07d4ab799ea9c8ea0b69439227c WHIRLPOOL 4b724408d6af27570e73cd70267d33d3fb7080163b0ce9d7d3ce304017668dfb5983079733c873ce53df1a57e80c5b5679bf70a1c7fcb0112f7951fd0c733f28
+MISC ChangeLog 16624 SHA256 31b34cd70a39ce3a6341ad44d65454ff49613276f1112f56226783f70245825a SHA512 82b0de418c1c88c28614c91ec6638ced8c3de964c9077daa14350c367639802bece3f57c54f9aa8530e0a449f0aeceb1c12d4cdbf69d09f91bc8ce13e3a70cfe WHIRLPOOL f9825c2b131fb73a57a8897f6f3b36f5f81805f87cdab7621c0434a7cbf72312a77c7d8ec6b091888470711e84e3b489f8bc3b4954c373c7e501fa5081bdbc2e
MISC ChangeLog-2012 94624 SHA256 7c8c313ea4800194191f7255023cabd205e56bb9761e8877dfab3770024b158c SHA512 f19cae0a29e8598e3bb68f1295baa56ff0edf06b2e3a95081ea2f95c4555d63dd6a0bff5a82345b274a1936104a75a69fe7862d7738a7fa2539ec9a7afd6b28f WHIRLPOOL 059ab6c542757c4524cb20cebb3cfa4bfbbe16d3a66da0805fb972d32f91f2a49bee97d1d73acf74d8e2cf3cc7a552371cf66db0580506d4b1a9e05ee52bdea4
+MISC git-9999-r1.ebuild.orig 18351 SHA256 0b619797d439af7a9911a00cff0b08d11baceefbce731e049d503520bc35cec8 SHA512 ff1354eb6183d7dd487ad7181b38b68592e01b3d3223efe6fa069cd10a25047e9003771d3b63ce5fb8f6e83daa4aeadcc75d6695e1a6359ff8e609d65e4d2381 WHIRLPOOL 02e58bce26e71bbebdd05895f3655624b7c10073f5a8572c73880cef1916b6b887e69e09adf0f952391f40f9662955bbdd390e6dd281b1046cad47a2acbca4fa
+MISC git-9999-r2.ebuild.orig 18350 SHA256 64886b9c2a7c7071372d705519e74e1e37d81e693142e0dcff0c8d3e870f6f7d SHA512 3337e7f6289680a0c77540d80c68a95e8bcd100d68eacfc6c460d63d8f64af20533de61f19808ec5ae9e4375d9194f9baccaf115dbf9e6fbe7b1df49b9ce16d3 WHIRLPOOL 4c21230ac25034862756293062553afbde045f3dcc8a559d0806f75ee687266c41e99428b0775bab52ea775ed35351adc205479472fe8e13456d7c821201646a
+MISC git-9999-r3.ebuild.orig 18353 SHA256 ffa7eb06ec8d294f67c4a86e689d7e253cc971890afa169249a27b03558ff352 SHA512 103a7d889d8dfe011759be8919037b8640ab0099900480beb8c1bba25c58bfe6a9bfa96d7e25c21347b4d1a5a7541c769928e093334fcba4127d329d92f8e404 WHIRLPOOL 866b3f4d81df7b10485ae8851b5e0961e0cacffd3456aa27cbd90c148c1ec5bcb7de7f4b9b60b766ae8a4079c9eeb54d2923c10853311198dd5a244a2d089b5d
+MISC git-9999.ebuild.orig 18350 SHA256 90cad2eaf6bd0558996331210c9de028d4ad81d9b2e374cb2868db7311972b01 SHA512 dc8011ebf3fae80a93d7c91641b847ff66e11a9eac36dd4dec782de10bb47f8c8520b658ff088d75bf005d15073d5177284b6b5992d0aaa4fcfff9b807852414 WHIRLPOOL 128e9cfab049d362471d17510ffe2ff4cfd580cb22af65048234adfa17d2776f5e7224ddd0462d13e5829778b86b6e72a166c4c31618093603d5d736c4d64ad7
MISC metadata.xml 1877 SHA256 74e93a953d9484c1f5806efc9c80bfa729b4d53415a00168e5ffec255750f7bd SHA512 3ef0d74206f67c27b82cefa40602cd33e432cc0f06ce900766d32f1ebd0a71d6cfa750ae77660531fc61a1117f7959d7df6ec10f439cfa2ee372d54d7ac87c5c WHIRLPOOL b9d97eb6b92a1894d965a5e9fbfbfd0d64625b31318fab2eb11b4dcb331133dbf678f62a7216c12b53a2546fa5d6a07c6240bddfa7784a925eafed602a7ffa75
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v2
-
-iQEcBAEBCAAGBQJTqNelAAoJEJ0WA1zPCt1hTPMH/1mkdNRfwfmIG+yQ2B7UocbY
-vRcTqCWZvOuy2sh30xr4NUEnlcwF5li+KjnTTKf6eYQS7D0a7QxtTbQy/GnCYWZA
-0iyT887CzXwm7GuaZRy2rCtdvrHnIYqa50wStp0/SqjpIk0hkqfFeDYOZ5WEtgMH
-q1UoijACd5HAepg5D7tHNYGRCFrL6KKUhQb1DE8fTCIvhssbqpp+mQOY8ngA6D5z
-FkEGX+eJcbWHPE1QMs3pNwinCNMJH7hfBaGDRcOq2pTJXlGqyOOptbFJJ448wntt
-cM6axbO2azqTPm1r5AQgh+M6up4HsUFTh8Id+aG55YIkZXITsxee4PX3s7Lz36o=
-=kOCQ
------END PGP SIGNATURE-----
diff --git a/dev-vcs/git/files/git-2.0.0-r2-optional-cvs.patch b/dev-vcs/git/files/git-2.0.0-r2-optional-cvs.patch
new file mode 100644
index 000000000000..b2d8e5c01c85
--- /dev/null
+++ b/dev-vcs/git/files/git-2.0.0-r2-optional-cvs.patch
@@ -0,0 +1,375 @@
+From e19ad5a8492d83db79a09b459cb17ccee78e0001 Mon Sep 17 00:00:00 2001
+From: Robin Johnson <robbat2@gentoo.org>
+Date: Fri, 25 Apr 2014 12:30:42 +0200
+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
+Forward-ported from v1.8.4 to v1.8.5.1
+Forward-ported from v1.8.5.3 to v1.9.0_rc3
+Forward-ported from 1.9.0_rc3 to current git.git v2.0.0_rc0
+Forward-ported from v2.0.0_rc0 to v2.0.0
+
+diff -Nuar --exclude '*.orig' --exclude '*.rej' git-2.0.0.orig/Makefile git-2.0.0/Makefile
+--- git-2.0.0.orig/Makefile 2014-05-28 12:10:36.000000000 -0700
++++ git-2.0.0/Makefile 2014-05-28 16:50:10.148376954 -0700
+@@ -255,6 +255,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'.
+@@ -436,6 +438,7 @@
+ PROGRAM_OBJS =
+ PROGRAMS =
+ SCRIPT_PERL =
++SCRIPT_PERL_CVS =
+ SCRIPT_PYTHON =
+ SCRIPT_SH =
+ SCRIPT_LIB =
+@@ -475,20 +478,21 @@
+ 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-p4.py
+
+ NO_INSTALL += git-remote-testgit
+
+ # 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))
+@@ -1779,8 +1783,18 @@
+ $(join -DMAJOR= -DMINOR=, $(wordlist 1,2,$(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
+
+@@ -1793,7 +1807,7 @@
+ $(QUIET_SUBDIR0)perl $(QUIET_SUBDIR1) PERL_PATH='$(PERL_PATH_SQ)' prefix='$(prefix_SQ)' $(@F)
+
+ PERL_DEFINES = $(PERL_PATH_SQ):$(PERLLIB_EXTRA_SQ)
+-$(patsubst %.perl,%,$(SCRIPT_PERL)): % : %.perl perl/perl.mak GIT-PERL-DEFINES GIT-VERSION-FILE
++$(patsubst %.perl,%,$(_SCRIPT_PERL_BUILD)): % : %.perl perl/perl.mak GIT-PERL-DEFINES GIT-VERSION-FILE
+ $(QUIET_GEN)$(RM) $@ $@+ && \
+ INSTLIBDIR=`MAKEFLAGS= $(MAKE) -C perl -s --no-print-directory instlibdir` && \
+ INSTLIBDIR_EXTRA='$(PERLLIB_EXTRA_SQ)' && \
+@@ -1826,15 +1840,18 @@
+ $(QUIET_GEN)$(cmd_munge_script) && \
+ 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
+diff -Nuar --exclude '*.orig' --exclude '*.rej' git-2.0.0.orig/t/t9200-git-cvsexportcommit.sh git-2.0.0/t/t9200-git-cvsexportcommit.sh
+--- git-2.0.0.orig/t/t9200-git-cvsexportcommit.sh 2014-05-28 12:10:36.000000000 -0700
++++ git-2.0.0/t/t9200-git-cvsexportcommit.sh 2014-05-28 16:47:41.812727825 -0700
+@@ -11,6 +11,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-2.0.0.orig/t/t9400-git-cvsserver-server.sh git-2.0.0/t/t9400-git-cvsserver-server.sh
+--- git-2.0.0.orig/t/t9400-git-cvsserver-server.sh 2014-05-28 12:10:36.000000000 -0700
++++ git-2.0.0/t/t9400-git-cvsserver-server.sh 2014-05-28 16:47:41.812727825 -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-2.0.0.orig/t/t9401-git-cvsserver-crlf.sh git-2.0.0/t/t9401-git-cvsserver-crlf.sh
+--- git-2.0.0.orig/t/t9401-git-cvsserver-crlf.sh 2014-05-28 12:10:36.000000000 -0700
++++ git-2.0.0/t/t9401-git-cvsserver-crlf.sh 2014-05-28 16:47:41.812727825 -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 -e 'use DBI; use DBD::SQLite' >/dev/null 2>&1 || {
+diff -Nuar --exclude '*.orig' --exclude '*.rej' git-2.0.0.orig/t/t9600-cvsimport.sh git-2.0.0/t/t9600-cvsimport.sh
+--- git-2.0.0.orig/t/t9600-cvsimport.sh 2014-05-28 12:10:36.000000000 -0700
++++ git-2.0.0/t/t9600-cvsimport.sh 2014-05-28 16:47:41.813727843 -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-2.0.0.orig/t/t9601-cvsimport-vendor-branch.sh git-2.0.0/t/t9601-cvsimport-vendor-branch.sh
+--- git-2.0.0.orig/t/t9601-cvsimport-vendor-branch.sh 2014-05-28 12:10:36.000000000 -0700
++++ git-2.0.0/t/t9601-cvsimport-vendor-branch.sh 2014-05-28 16:47:41.813727843 -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-2.0.0.orig/t/t9602-cvsimport-branches-tags.sh git-2.0.0/t/t9602-cvsimport-branches-tags.sh
+--- git-2.0.0.orig/t/t9602-cvsimport-branches-tags.sh 2014-05-28 12:10:36.000000000 -0700
++++ git-2.0.0/t/t9602-cvsimport-branches-tags.sh 2014-05-28 16:47:41.813727843 -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-2.0.0.orig/t/t9603-cvsimport-patchsets.sh git-2.0.0/t/t9603-cvsimport-patchsets.sh
+--- git-2.0.0.orig/t/t9603-cvsimport-patchsets.sh 2014-05-28 12:10:36.000000000 -0700
++++ git-2.0.0/t/t9603-cvsimport-patchsets.sh 2014-05-28 16:47:41.813727843 -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-2.0.0.orig/t/test-lib.sh git-2.0.0/t/test-lib.sh
+--- git-2.0.0.orig/t/test-lib.sh 2014-05-28 12:10:36.000000000 -0700
++++ git-2.0.0/t/test-lib.sh 2014-05-28 16:47:41.813727843 -0700
+@@ -777,6 +777,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
diff --git a/dev-vcs/git/git-2.0.0-r2.ebuild b/dev-vcs/git/git-2.0.0-r2.ebuild
new file mode 100644
index 000000000000..366517933a11
--- /dev/null
+++ b/dev-vcs/git/git-2.0.0-r2.ebuild
@@ -0,0 +1,644 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-vcs/git/git-2.0.0-r2.ebuild,v 1.1 2014/07/07 03:56:46 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"
+EGIT_MASTER=pu
+
+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 mediawiki +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/libgnome-keyring )"
+
+RDEPEND="${CDEPEND}
+ gpg? ( app-crypt/gnupg )
+ mediawiki? (
+ dev-perl/HTML-Tree
+ dev-perl/MediaWiki-API
+ )
+ 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
+ )
+ nls? ( sys-devel/gettext )
+ 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 )
+ mediawiki? ( 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-2.0.0-r2-optional-cvs.patch
+
+ # install mediawiki perl modules also in vendor_dir
+ # hack, needs better upstream solution
+ epatch "${FILESDIR}"/git-1.8.5-mw-vendor.patch
+
+ epatch_user
+
+ 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
+
+ if use mediawiki ; then
+ cd "${S}"/contrib/mw-to-git
+ git_emake
+ fi
+}
+
+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}
+ # Not really a bash-completion file (bug #477920)
+ # but still needed uncompressed (bug #507480)
+ insinto /usr/share/${PN}
+ doins contrib/completion/git-prompt.sh
+
+ 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}"
+
+ if use mediawiki ; then
+ cd "${S}"/contrib/mw-to-git
+ git_emake install
+ cd "${S}"
+ fi
+
+ # 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 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-r1.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 \
+ t9402-git-cvsserver-refs.sh \
+ t9600-cvsimport.sh \
+ t9601-cvsimport-vendor-branch.sh \
+ t9602-cvsimport-branches-tags.sh \
+ t9603-cvsimport-patchsets.sh \
+ t9604-cvsimport-timestamps.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/git/git-prompt.sh for Git bash prompt"
+ einfo "Note that the prompt bash code is now in that separate script"
+ elog "These additional scripts need some dependencies:"
+ echo
+ showpkgdeps git-quiltimport "dev-util/quilt"
+ showpkgdeps git-instaweb \
+ "|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
+ echo
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}