diff options
author | Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org> | 2009-05-31 00:35:32 +0000 |
---|---|---|
committer | Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org> | 2009-05-31 00:35:32 +0000 |
commit | b1811ed7a134a4846a73ca1e76ec5ce256896d3b (patch) | |
tree | e44680cb14587158acd878e700f4eaafb47917cc /dev-lang | |
parent | Version bump. This release fixes parallel make issues, bug 271240. (diff) | |
download | gentoo-2-b1811ed7a134a4846a73ca1e76ec5ce256896d3b.tar.gz gentoo-2-b1811ed7a134a4846a73ca1e76ec5ce256896d3b.tar.bz2 gentoo-2-b1811ed7a134a4846a73ca1e76ec5ce256896d3b.zip |
Remove older ebuilds.
Diffstat (limited to 'dev-lang')
19 files changed, 0 insertions, 3975 deletions
diff --git a/dev-lang/python/Manifest b/dev-lang/python/Manifest index 127a59daccfa..1032e2c5a7e0 100644 --- a/dev-lang/python/Manifest +++ b/dev-lang/python/Manifest @@ -1,51 +1,21 @@ -AUX depreorder-topsort.py 1958 RMD160 4192ad9ed14064a9da42ce1faedcf28996094da3 SHA1 2c900abeb6cfcc4327f0e9418b5abd7761ce5879 SHA256 7406f639d17b8acab6a1db7e398e74379b44950d4821bc36901abd3455d63b3d -AUX depreorder.py 2235 RMD160 a6da5f336bdf8c370861c7922a5fa79ce4ab89cb SHA1 3b8590d7fbece2367088c646a792a9618d786dec SHA256 93920120e596f34e4222e8686e6283b03cdd517f89f2dba3eda90d79fa016aba AUX pydoc.conf 330 RMD160 0cd619ec251597e0fcadc05bfd249915e73baa17 SHA1 a56100d45378c554b9822f6ed512a6cb7841ef50 SHA256 a45ebba2de5f2b0e963db4101507203d095c5ff667ae5002c4897a9c87786fa1 AUX pydoc.init 666 RMD160 11caf3a78bce4cdaebacaf21eaf26cc1ce30282e SHA1 88c5cb6d5bf737c74e1be93118cf157630af9ad7 SHA256 0d25c71232b74adb87dc709cc7cd8f8b13c452c0fe82fa33808f907f7a96d628 -AUX python-2.4.2-gentoo_obsd-r1.patch 1630 RMD160 77c7c13be17f7dcf1abccab2a0fb5818f4f7c261 SHA1 ba795d0aeba9986ed6077217848fd8ba1eb0d39c SHA256 b96f687a18cdfd75090a7401298568ee5819046a54eb58c1527126dd36596d47 -AUX python-2.4.2-gentoo_obsd.patch 1554 RMD160 c93e34df155440e68e7db283d709c3ef301933d2 SHA1 83ef3e0f43f2d6100d2416f5c47776af5f643fab SHA256 89a870d045246c66a67e7931afd38260c8b1e3d0c8f2db9b73e36cf014e98dee AUX python-2.4.4-test-cross.patch 977 RMD160 8fdcd45dc202993988f7a1c2b3d918068883b99e SHA1 96f25777150ba05765282a43f08da6b6fab3cb73 SHA256 ff2a131776d560d188ec5069e17fea3eb09c26fdd02124ae5ff34d791c9fd9f6 AUX python-2.5-cross-printf.patch 903 RMD160 8dc0ee148120aaf7667624bdb5574bb6af5d2a00 SHA1 596e05be8cde43e4cdd87c8ed06ebb40828f7cea SHA256 1e91e5123d74d89aa8fc9dc60d98516b785f851e43da9b634ae535130e24e780 -AUX python-2.5.2_turkish.patch 4882 RMD160 69486e369849e0706f4261410f231649397cf793 SHA1 1dc369bdfb10bc9ddb63a5672fa561acf8dee32c SHA256 bf4019ae2acd4b6868db0b625910f668f857711ae00b29f638d038611444b169 AUX python-2.6-chflags-cross.patch 1716 RMD160 b0ec772a41a24d51f4c7430b19bcc6251cd6be87 SHA1 4745cd53cef503c41c50573ad97f40eb89fd4bcd SHA256 7c36689db47720052069725036983c2fb6959f425e3777aae55976b2788d463f -AUX python-2.6-cross-patch-tweak.patch 717 RMD160 4791a798b494de925100c33ad42c214038414d7f SHA1 c84d19c2846136eb5cfb2da6a316f7d9688b7c90 SHA256 9a5c4142738daf1fe0f78747ee4b03c4402c2b84f1349150dce99f6631688abd AUX python-2.6-test-cross.patch 914 RMD160 1f421b5565d39a24b887e85cbecaf3857741f756 SHA1 9c05fbe28aac6373f24317db5c277bc4549dde0c SHA256 8264f6ffe5aedcce67bea00b0346e5416a5486da2229bf82fe748d87ec65c4de -AUX python-2.6_turkish.patch 4606 RMD160 e8a12a537fd81e8a4de0f29ce57ebf48cf786e69 SHA1 9ae0d969f34513da90b87bed966d48ea91b46bf2 SHA256 1f90030a415a5395b14677dce1bd07fbaa56d235aecd4fdfae086d09f756c138 AUX python-config-2.4 179 RMD160 087417fb7080be00cf62381d5e16fb4e4cb4538f SHA1 3ffffc6e4f4c7b774135f2635601b92a5b13e259 SHA256 86b87546be79ee6027df70046b33808b64921eea71618c81810e6b1280604221 AUX python-config-2.4-r1 1624 RMD160 e4e6893c9e8414289c0c70c0f4be58835911e376 SHA1 addf9a6eb81e636364264a6abb3d96f01ea0cf90 SHA256 923a9e896f99cca5aa4ccbb02f981c6e26a2b1aa42326de2359d3c884bde2a9f -AUX python-updater 8777 RMD160 f177c5ae1f1d5dabffd9c52da10704999284af0c SHA1 91719ec53bd5e128042fedaed68d40fcb4abd65b SHA256 25d24778518f33e24e735e2319b1f6aa6a94137afe30b55cfeb974a74cf3873a -AUX python-updater-r1 8785 RMD160 a395283fc17565fc9bc68e59928c74aafe3f19e5 SHA1 6d6f2d44bf20a528693d017b99f45541ae535bf5 SHA256 850bce6c25b33fbc05da98387bf7bd8652d4d6af4c8a7c11b4956e26a84a86b6 -DIST Python-2.4.4.tar.bz2 8158073 RMD160 4c7b5b70178fe69881b62201ef0bab55037d8708 SHA1 9e0971f93df8acbd947378d0d16a32fcc8897ba2 SHA256 325fdc7351a08bd8d811e7fb53c41bff11764648ab1a671abd910afec946b38a DIST Python-2.4.6.tar.bz2 8154677 RMD160 0687989193dec2ac108142759281be7ddcf7f31e SHA1 cb1972a554a458f6a26d3e047b359251865d7c96 SHA256 da104139ad3f4534482942ac02cf8f8ed9badd370ffa14f06b07c44914423e08 -DIST Python-2.5.2.tar.bz2 9807597 RMD160 b23b02739833e6730799c5866e2b77aae884b63f SHA1 4755d212f50af704c20224a6966e23acc5aea60f SHA256 f2f80e2a62a039e9a1ffa0fdf58707b2d12b3ff33c56472b46bb6d53f45e083e DIST Python-2.5.4.tar.bz2 9821313 RMD160 3a76c83464c3b1c38a60351ab054e33ac7195663 SHA1 0f2e819d6381f72f26c734e00a6780b3933ea404 SHA256 bc8d896a2bfe5523ba93b8d89b71017b74e8e6cb21dc676a0ccff668c8780110 -DIST Python-2.6.1.tar.bz2 10960385 RMD160 497dafaca9c150fca611b0175eeb13c2fc4d3e2d SHA1 419f0cb29e9713ea861dde8c43d107c51329e57b SHA256 cf153f10ba6312a8303ceb01bed834a2786d28aa89c7d73dba64714f691628f6 DIST Python-2.6.2.tar.bz2 11156901 RMD160 85fa3540cbacf4d0547d2381eb3aa76bef35c2e1 SHA1 125d4ed90f82de1d44f288150bbbda23a6cd27a4 SHA256 a1cdc4a8f6c1f947ea3b87d097af2db4371019bac941d92c3844124c5694328b -DIST Python-2.6.tar.bz2 10957859 RMD160 68c8867b10bd547e78a27825132570d96aa850f2 SHA1 1a7d60009e72605ddd638f35a5bfe99b4ede6823 SHA256 12e0b278af0f4d741949d2567c8627ae99739be544e510e30dce3f9acbb5a6ff -DIST python-gentoo-patches-2.4.4-r11.tar.bz2 22397 RMD160 d805a16f1e719c06f0d9b81482e126a4e266fbc5 SHA1 3270e797c8dfb84aa5bf564de63523552e14f821 SHA256 84ea076ad06e20578e1c97337d98afe3abb0e69518a7cc814841fd34f29ec71c -DIST python-gentoo-patches-2.4.4-r12.tar.bz2 22595 RMD160 ec9a60d0ddaa1ad5e971d6d57d672f61e41611ca SHA1 b27188459902e055c79a59f16aea9803fb5e5a8c SHA256 267bebdcdb9446b4943c6a745cf437ff585ca8fac0c2706ab16ef8175029cc23 -DIST python-gentoo-patches-2.4.4-r3.tar.bz2 8348 RMD160 e9b59a7cd1469668d43a41d396d7a275bef78270 SHA1 16373b922895d1c14ccfa9d6b39079f2d5a2bcb6 SHA256 1c81397312136625fc220db660f701d4eccbde75e74bb40a0d77015b4d5d4f9f -DIST python-gentoo-patches-2.4.4-r4.tar.bz2 9569 RMD160 2e618e2bf8d0d9d1e722f60b6b781af8906b1750 SHA1 f2253df5b52350fdfbd06054597814d705c088c5 SHA256 a5e9783a4ad57c60f91e3f943f4ff60dcb9b2eb64aa9226598bff9658473781e DIST python-gentoo-patches-2.4.6.tar.bz2 10983 RMD160 c06dc76edec86d708a0c0e37126ae50f49f61bd3 SHA1 bbc04083fe74cff8c723c5c3cab70b1b814c987f SHA256 0508a66408f218c655823303833599344d2edeec1ffc683c6ada3fc33731590d -DIST python-gentoo-patches-2.5.2-r7.tar.bz2 28160 RMD160 c2a8c71f464f1cf0cd8e3d142a3f3454de46bc55 SHA1 b64fc90f331e42ea2c364fd61d13b515300fdcbf SHA256 8afff4ed12c3c5ca4418da657617317a8c646a69ae341a3d494747659825355f -DIST python-gentoo-patches-2.5.2-r8.tar.bz2 28376 RMD160 c4e02a5ed947b253781ec11fd9f5f26498e41c81 SHA1 92e359402e7b6751b28671e19ad7ea0736b62614 SHA256 c008abb01c40057facf3d7fa8ad3a31e792f1b7d41bba96e0084e7476e05a0e3 DIST python-gentoo-patches-2.5.4-r1.tar.bz2 20485 RMD160 f8e2d19fe0ad7b2176795c159768c406d3a08801 SHA1 62565a95ab46e9bf8ac20318d1c662ce44230949 SHA256 0d502be02d16c2acdf82aba14909d8c1201091bb696456ec3542fc58466e8655 DIST python-gentoo-patches-2.5.4.tar.bz2 19474 RMD160 00bb0918414db251b11b7f19a9f8a112c9e49fbd SHA1 fd4955f7da3049abecc4df0e203e783a90390cf8 SHA256 6e050dd8e8a90655bf935af99ad1ae6456bc072f075ddb9bcd532201bbb37274 -DIST python-gentoo-patches-2.6-r2.tar.bz2 7449 RMD160 f8b33f9ce9b466a6dc8409b297b5ebf774b18d96 SHA1 ba89ecf750160d1ce631bb1f32887ad949749426 SHA256 c6ea56ca00faa8d8fee6bd68ae463c16632bee2579d296219d2403ed76e52ed8 DIST python-gentoo-patches-2.6.2-r1.tar.bz2 9706 RMD160 8868231a1759cfeb4497c409f4aaf71329c1675f SHA1 0c48800969cf50fa93fc2657f5106d332b9d4c05 SHA256 13b40e4f9ef89b7440606d437daed8617c39219e73aa3605c5157e0f09c703df -DIST python-gentoo-patches-2.6.2.tar.bz2 8848 RMD160 e3cf700fd8966a6bd6e3e4b64534b72e56863819 SHA1 e073af86f27db77d2eb396ff78814f2b8920811b SHA256 9178be1a77893dc2c74e40073095bbc560d02e5456f1e6be6da20930470950f7 -EBUILD python-2.4.4-r14.ebuild 10746 RMD160 4c5e1215ad1756eeab64bbe52ef88ffdcb0479e2 SHA1 11632c551e32b0e7bce17b8dfc4eb7b3a5785b53 SHA256 4061e0b5b64ee751e2e97d5a60e274e3834151d764f7d3a88a3aae4a90e9b0bf -EBUILD python-2.4.4-r15.ebuild 10743 RMD160 1df6ba576dfd3b0a5eb25b5b29a0dbedf53c483e SHA1 8c43ac03cdbbf6e91b7a9e7eec766cbf4f2f59ae SHA256 1a4515d15197601c56f27a0f9b4d206dff67ed8a02472b5c046dd04e6977a24a -EBUILD python-2.4.4-r5.ebuild 10577 RMD160 9beeae06b88a2fb12d55a8a3e40e0444b4d7c382 SHA1 91c46a25e45ef7d87c69426cfeee1f4b4ac28287 SHA256 cf164d816a56fdc6ebd9f4482a03cc574e1c7429f4cab4a2002796d678576899 -EBUILD python-2.4.4-r6.ebuild 10578 RMD160 1ae5c7e5c2130c5822de6923211c0507605d2d0b SHA1 b74df8d15b3ae97a38e961abb59720e5bb492795 SHA256 f3f0c49db7b629fa16b4cf27b7ab999e049209ff9b71df8982586dce76530b3b EBUILD python-2.4.6.ebuild 9940 RMD160 2659cc53772a494bfd89a1a3fc6fb05f35b3d17d SHA1 c311eea6081f01a87b352f6e31c96bb2862b3e4e SHA256 55e8e995800a3380dd6bcbd6167c19aec53a7fb77bb3e1226ea752ab76a9dfba -EBUILD python-2.5.2-r7.ebuild 10669 RMD160 b155d1db61f9bbf21195358d4bf924a77847e2d9 SHA1 49d5a793399e3e1164a23ca391332badd9dcc7ab SHA256 8218d47daf2414fc210063c15e32fb3c0e007f9532dfdb1f2c1cb186fe1e0411 -EBUILD python-2.5.2-r8.ebuild 10797 RMD160 8f30ee723f9371f4fe228a188248d6aa8140ab5c SHA1 b29df521b889c292f8eebcab767997f452252c7e SHA256 4949ecd970eee3531969e0d13c3c8eb2b2dfbf73e9a8e86bd7d1449ea83b99c7 EBUILD python-2.5.4-r2.ebuild 10691 RMD160 01893e25086cbbcbac9d5aecf2fab2d887a42b2b SHA1 3a99dfdacf14dd215d3415d5174e85a82b14f1c0 SHA256 6c220c17509b37b3651000ef05e2c4513b5f0ffd78080d9963c7255c696a35df EBUILD python-2.5.4-r3.ebuild 8413 RMD160 3a5e53ed371d14cb4c4a64645dc261ad8aed4c8b SHA1 9e7480bfcad840ffdf40c4efae2b7e1fa36a4152 SHA256 c420f8833bf9eed93a208599e997521a0f7a72a3b4b7ab8bf953c0700e8d16f6 -EBUILD python-2.6-r5.ebuild 8678 RMD160 5499995f99198fd01c3066add3fae31521f63f25 SHA1 2e452754421b2024f14eb9371b4281b31e5f608e SHA256 ad55273c6bfd924c9e80d018f947361f909f6b931371a2fb10316d6bb958d32e -EBUILD python-2.6.1-r1.ebuild 8895 RMD160 d2023c5a58e42fcfbc10971fef329ab87c1d49ab SHA1 a03a5ab2fcf9673fad55db05a626e3d374220df4 SHA256 b552836d36978d62a27168cd8f0f46c5497f1ffea1941f83bdbe69920675b1cb EBUILD python-2.6.2-r1.ebuild 8454 RMD160 c76f1ae0c5ce8cf3b782aeefe8d35d1ad2245f8c SHA1 0223f9d9479d9beeb065a08ad57b26add722b0bb SHA256 2b8f9f387b8262f3f150fc67f769f4d86a58792fb120fd17527fc04132d2296f -EBUILD python-2.6.2.ebuild 8434 RMD160 5316ce9620302704cbe61059a192d22e1f2ad7c5 SHA1 7be851d906745eea0c9b3dc5f86767151aea2b1a SHA256 221d09d6a988ce01158aa53d7d04ff37462f1341b8dfe0d7ad39f1a1bc64ecc5 MISC ChangeLog 68482 RMD160 7c5d6d07546990c639d093fd673ff1d8667566de SHA1 1dba15df16647d88ab41e433fb7e0150afc184a7 SHA256 19bf2a6bac00abeaece4508a6491aaae4be879e09e14142840711375c36b4c7f MISC metadata.xml 490 RMD160 b919b92704616b974d1da46bfea1f03c7ea50330 SHA1 d1901bc18d0aa431b05fccfe13f2f87ab2aa9e18 SHA256 765be0142679faeeaf01cfa489424c3af08ad38ed627e6a7246b4a6f96f2dffa diff --git a/dev-lang/python/files/depreorder-topsort.py b/dev-lang/python/files/depreorder-topsort.py deleted file mode 100644 index 4c3cb7bc84ab..000000000000 --- a/dev-lang/python/files/depreorder-topsort.py +++ /dev/null @@ -1,65 +0,0 @@ -#!/usr/bin/python - -# tries to reorder the deps of a given list of packages so they -# are merged in order - liquidx@g.o (09 Oct 03) - -import portage -import sys, string - -fakedbapi = portage.fakedbapi() -varapi = portage.db["/"]["vartree"].dbapi - -pkgs_to_reorder = sys.argv[1:] -pkgs_ordered = [] - -# key = catpkgver -# value = dependencies -dep_cache = {} - - -# very simply, we extract the dependencies for each package -for pkg in pkgs_to_reorder: - try: - deps, slot = varapi.aux_get(pkg, ["DEPEND", "SLOT"]) - except ValueError: - sys.stderr.write("Error getting dependency information off " + pkg + "\n") - continue - try: - realdeps = portage.dep_check(deps, fakedbapi) - except TypeError: - # we're probably running >=portage-2.0.50 - pkgsettings = portage.config(clone=portage.settings) - realdeps = portage.dep_check(deps, fakedbapi, pkgsettings) - - vardeps = [] - # match() finds the versions of all those that are installed - for dep in realdeps[1]: - vardeps = vardeps + varapi.match(dep) - dep_cache[pkg] = vardeps - -# topsort takes a graph (given as a dictionary with the nodes -# as keys and the outgoing edges as values), and returns a -# list of nodes that is topologically sorted -def topsort (graph) : - visited = dict([(node,False) for node in graph.keys()]) - result = [] - - def dfs_single (node) : - visited[node] = True - for adj in graph[node]: - # we ignore dependencies that are not nodes in the graph - if adj in graph.keys() and not visited[adj]: - dfs_single (adj) - result.append(node) - - for node in graph.keys(): - if not visited[node]: - dfs_single (node) - - return result - -pkgs_final_order = topsort(dep_cache) - -print string.join(pkgs_final_order, "\n") -#print portage.dep_expand("=dev-python/sip-3.8", portage.portdb) -#print portage.dep_check("X? ( >=dev-python/sip-3.8 )", fakedbapi) diff --git a/dev-lang/python/files/depreorder.py b/dev-lang/python/files/depreorder.py deleted file mode 100644 index 2305eb08aacd..000000000000 --- a/dev-lang/python/files/depreorder.py +++ /dev/null @@ -1,66 +0,0 @@ -#!/usr/bin/python - -# tries to reorder the deps of a given list of packages so they -# are merged in order - liquidx@g.o (09 Oct 03) - -import portage -import sys, string - -fakedbapi = portage.fakedbapi() -varapi = portage.db["/"]["vartree"].dbapi - -pkgs_to_reorder = sys.argv[1:] -pkgs_ordered = [] -# key = catpkgver -# value = ( added, dependencies, slot ) -DEP_ADDED = 0 -DEP_DEPLIST = 1 -DEP_SLOT = 2 -dep_cache = {} - - -# very simply, we extract the dependencies for each package -for pkg in pkgs_to_reorder: - try: - deps, slot = varapi.aux_get(pkg, ["DEPEND", "SLOT"]) - except ValueError: - sys.stderr.write("Error getting dependency information off " + pkg + "\n") - continue - try: - realdeps = portage.dep_check(deps, fakedbapi) - except TypeError: - # we're probably running >=portage-2.0.50 - pkgsettings = portage.config(clone=portage.settings) - realdeps = portage.dep_check(deps, fakedbapi, pkgsettings) - - vardeps = [] - # match() finds the versions of all those that are installed - for dep in realdeps[1]: - vardeps = vardeps + varapi.match(dep) - dep_cache[pkg] = ( 0, vardeps, slot ) - -# then we just naively append to a sorted list of deps using this rule. -# if a dependency is going to be merged, we add it to the list like -# with the dep then the pkg itself. -# eg: dev-python/pyqt deps on dev-python/sip, so we the list will look like -# [dev-python/sip, dev-python/pyqt] -for pkg, depinfo in dep_cache.items(): - dep_to_add = [] - for dep in depinfo[DEP_DEPLIST]: - if dep in pkgs_to_reorder: - dep_to_add.append(dep) - - pkgs_ordered += dep_to_add + [pkg] - -# now, because the packages may have nested or multple dependencies, we -# then move thru the list from first to last and remove all duplicates. -# that way we know for sure that a package isn't merged twice or a dep -# comes before the package that depends on it. -pkgs_final_order = [] -for pkg in pkgs_ordered: - if pkg not in pkgs_final_order: - pkgs_final_order += [pkg] - -print string.join(pkgs_final_order, "\n") -#print portage.dep_expand("=dev-python/sip-3.8", portage.portdb) -#print portage.dep_check("X? ( >=dev-python/sip-3.8 )", fakedbapi) diff --git a/dev-lang/python/files/python-2.4.2-gentoo_obsd-r1.patch b/dev-lang/python/files/python-2.4.2-gentoo_obsd-r1.patch deleted file mode 100644 index 1c3a4899fc60..000000000000 --- a/dev-lang/python/files/python-2.4.2-gentoo_obsd-r1.patch +++ /dev/null @@ -1,44 +0,0 @@ -diff -ruN Python-2.4.2.orig/configure.in Python-2.4.2/configure.in ---- Python-2.4.2.orig/configure.in 2005-08-07 23:08:53.000000000 +0200 -+++ Python-2.4.2/configure.in 2006-04-26 16:25:03.241669250 +0200 -@@ -140,7 +140,7 @@ - # On OpenBSD, select(2) is not available if _XOPEN_SOURCE is defined, - # even though select is a POSIX function. Reported by J. Ribbens. - # Reconfirmed for OpenBSD 3.3 by Zachary Hamm, for 3.4 by Jason Ish. -- OpenBSD/2.* | OpenBSD/3.@<:@0123456@:>@) -+ OpenBSD/2.* | OpenBSD/3.@<:@0123456789@:>@) - define_xopen_source=no;; - # On Solaris 2.6, sys/wait.h is inconsistent in the usage - # of union __?sigval. Reported by Stuart Bishop. -@@ -1517,9 +1517,16 @@ - - # only check for sem_ini if thread support is requested - if test "$with_threads" = "yes" -o -z "$with_threads"; then -+ case "$ac_sys_system" in -+ OpenBSD*) -+ LIBS="-pthread ${LIBS}" -+ ;; -+ *) - AC_SEARCH_LIBS(sem_init, pthread rt posix4) # 'Real Time' functions on Solaris - # posix4 on Solaris 2.6 - # pthread (first!) on Linux -+ ;; -+ esac - fi - - # check if we need libintl for locale functions -diff -ruN Python-2.4.2.orig/Include/Python.h Python-2.4.2/Include/Python.h ---- Python-2.4.2.orig/Include/Python.h 2004-07-27 17:57:23.000000000 +0200 -+++ Python-2.4.2/Include/Python.h 2006-04-26 16:24:15.274671500 +0200 -@@ -2,6 +2,11 @@ - #define Py_PYTHON_H - /* Since this is a "meta-include" file, no #ifdef __cplusplus / extern "C" { */ - -+/* Required on Gentoo/OpenBSD */ -+#if defined(__OpenBSD__) -+#include <sys/types.h> -+#endif -+ - /* Include nearly all Python header files */ - - #include "patchlevel.h" diff --git a/dev-lang/python/files/python-2.4.2-gentoo_obsd.patch b/dev-lang/python/files/python-2.4.2-gentoo_obsd.patch deleted file mode 100644 index 69c59747a423..000000000000 --- a/dev-lang/python/files/python-2.4.2-gentoo_obsd.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff -ruN Python-2.4.2.orig/Include/Python.h Python-2.4.2/Include/Python.h ---- Python-2.4.2.orig/Include/Python.h 2004-07-27 17:57:23 +0200 -+++ Python-2.4.2/Include/Python.h 2006-01-01 17:50:35 +0100 -@@ -2,6 +2,9 @@ - #define Py_PYTHON_H - /* Since this is a "meta-include" file, no #ifdef __cplusplus / extern "C" { */ - -+/* Required on Gentoo/OpenBSD */ -+#include <sys/types.h> -+ - /* Include nearly all Python header files */ - - #include "patchlevel.h" -diff -ruN Python-2.4.2.orig/configure.in Python-2.4.2/configure.in ---- Python-2.4.2.orig/configure.in 2005-08-07 23:08:53 +0200 -+++ Python-2.4.2/configure.in 2006-01-01 17:53:27 +0100 -@@ -140,7 +140,7 @@ - # On OpenBSD, select(2) is not available if _XOPEN_SOURCE is defined, - # even though select is a POSIX function. Reported by J. Ribbens. - # Reconfirmed for OpenBSD 3.3 by Zachary Hamm, for 3.4 by Jason Ish. -- OpenBSD/2.* | OpenBSD/3.@<:@0123456@:>@) -+ OpenBSD/2.* | OpenBSD/3.@<:@012345678@:>@) - define_xopen_source=no;; - # On Solaris 2.6, sys/wait.h is inconsistent in the usage - # of union __?sigval. Reported by Stuart Bishop. -@@ -1517,9 +1517,16 @@ - - # only check for sem_ini if thread support is requested - if test "$with_threads" = "yes" -o -z "$with_threads"; then -+ case "$ac_sys_system" in -+ OpenBSD*) -+ LIBS="-pthread ${LIBS}" -+ ;; -+ *) - AC_SEARCH_LIBS(sem_init, pthread rt posix4) # 'Real Time' functions on Solaris - # posix4 on Solaris 2.6 - # pthread (first!) on Linux -+ ;; -+ esac - fi - - # check if we need libintl for locale functions diff --git a/dev-lang/python/files/python-2.5.2_turkish.patch b/dev-lang/python/files/python-2.5.2_turkish.patch deleted file mode 100644 index 2685e87a3851..000000000000 --- a/dev-lang/python/files/python-2.5.2_turkish.patch +++ /dev/null @@ -1,138 +0,0 @@ -#Purpose: Add Turkish tr_TR locale support in some modules. -#Added by: Jesus Rivero <neurogeek@gentoo.org> -#Thanks to Serkan <serkan@gentoo.org> -#Upstream bug: http://bugs.python.org/issue1813 -#Date Added: 06/12/2008 -#Gentoo bug: 250075 - -diff -uNr Python-2.5.2.orig/Lib/decimal.py Python-2.5.2/Lib/decimal.py ---- Python-2.5.2.orig/Lib/decimal.py 2008-12-01 23:39:58.000000000 -0430 -+++ Python-2.5.2/Lib/decimal.py 2008-12-01 23:43:17.000000000 -0430 -@@ -146,6 +146,13 @@ - ROUND_HALF_DOWN = 'ROUND_HALF_DOWN' - ROUND_05UP = 'ROUND_05UP' - -+import string -+ -+def ascii_upper(s): -+ trans_table = string.maketrans(string.ascii_lowercase, string.ascii_uppercase) -+ return s.translate(trans_table) -+ -+ - # Errors - - class DecimalException(ArithmeticError): -@@ -3354,7 +3361,7 @@ - if name.startswith('_round_')] - for name in rounding_functions: - # name is like _round_half_even, goes to the global ROUND_HALF_EVEN value. -- globalname = name[1:].upper() -+ globalname = ascii_upper(name[1:]) - val = globals()[globalname] - Decimal._pick_rounding_function[val] = name - -diff -uNr Python-2.5.2.orig/Lib/email/__init__.py Python-2.5.2/Lib/email/__init__.py ---- Python-2.5.2.orig/Lib/email/__init__.py 2008-12-01 23:39:57.000000000 -0430 -+++ Python-2.5.2/Lib/email/__init__.py 2008-12-06 15:14:43.000000000 -0430 -@@ -109,15 +109,18 @@ - 'Text', - ] - -+import string -+lower_map = string.maketrans(string.ascii_uppercase, string.ascii_lowercase) -+ - for _name in _LOWERNAMES: -- importer = LazyImporter(_name.lower()) -+ importer = LazyImporter(_name.translate(lower_map)) - sys.modules['email.' + _name] = importer - setattr(sys.modules['email'], _name, importer) - - - import email.mime - for _name in _MIMENAMES: -- importer = LazyImporter('mime.' + _name.lower()) -+ importer = LazyImporter('mime.' + _name.translate(lower_map)) - sys.modules['email.MIME' + _name] = importer - setattr(sys.modules['email'], 'MIME' + _name, importer) - setattr(sys.modules['email.mime'], _name, importer) -diff -uNr Python-2.5.2.orig/Lib/locale.py Python-2.5.2/Lib/locale.py ---- Python-2.5.2.orig/Lib/locale.py 2008-12-01 23:39:57.000000000 -0430 -+++ Python-2.5.2/Lib/locale.py 2008-12-06 15:18:26.000000000 -0430 -@@ -278,6 +278,15 @@ - # overridden below) - _setlocale = setlocale - -+# Avoid relying on the locale-dependent .lower() method -+# (see bug #1813). -+_ascii_lower_map = ''.join( -+ chr(x + 32 if x >= ord('A') and x <= ord('Z') else x) -+ for x in range(256) -+) -+ -+ -+ - def normalize(localename): - - """ Returns a normalized locale code for the given locale -@@ -295,7 +304,7 @@ - - """ - # Normalize the locale name and extract the encoding -- fullname = localename.lower() -+ fullname = localename.encode('ascii').translate(_ascii_lower_map) - if ':' in fullname: - # ':' is sometimes used as encoding delimiter. - fullname = fullname.replace(':', '.') -diff -uNr Python-2.5.2.orig/Lib/test/test_codecs.py Python-2.5.2/Lib/test/test_codecs.py ---- Python-2.5.2.orig/Lib/test/test_codecs.py 2008-12-01 23:39:57.000000000 -0430 -+++ Python-2.5.2/Lib/test/test_codecs.py 2008-12-06 15:21:02.000000000 -0430 -@@ -1,6 +1,7 @@ - from __future__ import with_statement - from test import test_support - import unittest -+import locale - import codecs - import sys, StringIO, _testcapi - -@@ -938,6 +939,16 @@ - self.assertRaises(LookupError, codecs.lookup, "__spam__") - self.assertRaises(LookupError, codecs.lookup, " ") - -+ def test_lookup_with_locale(self): -+ # Bug #1813: when normalizing codec name, lowercasing must be locale -+ # agnostic, otherwise the looked up codec name might end up wrong. -+ try: -+ locale.setlocale(locale.LC_CTYPE, 'tr') -+ except locale.Error: -+ # SKIPped test -+ return -+ codecs.lookup('ISO8859_1') -+ - def test_getencoder(self): - self.assertRaises(TypeError, codecs.getencoder) - self.assertRaises(LookupError, codecs.getencoder, "__spam__") -diff -uNr Python-2.5.2.orig/Python/codecs.c Python-2.5.2/Python/codecs.c ---- Python-2.5.2.orig/Python/codecs.c 2008-12-01 23:39:58.000000000 -0430 -+++ Python-2.5.2/Python/codecs.c 2008-12-01 23:41:58.000000000 -0430 -@@ -45,6 +45,12 @@ - return -1; - } - -+/* isupper() forced into the ASCII Locale */ -+#define ascii_isupper(x) (((x) >= 0x41) && ((x) <= 0x5A)) -+/* tolower() forced into the ASCII Locale */ -+#define ascii_tolower(x) (ascii_isupper(x) ? ((x) + 0x20) : (x)) -+ -+ - /* Convert a string to a normalized Python string: all characters are - converted to lower case, spaces are replaced with underscores. */ - -@@ -70,7 +76,7 @@ - if (ch == ' ') - ch = '-'; - else -- ch = tolower(Py_CHARMASK(ch)); -+ ch = ascii_tolower(Py_CHARMASK(ch)); - p[i] = ch; - } - return v; diff --git a/dev-lang/python/files/python-2.6-cross-patch-tweak.patch b/dev-lang/python/files/python-2.6-cross-patch-tweak.patch deleted file mode 100644 index 4aa5cf49a115..000000000000 --- a/dev-lang/python/files/python-2.6-cross-patch-tweak.patch +++ /dev/null @@ -1,15 +0,0 @@ -our patchset is out dated ... this really should get merged ... - ---- ../2.6/08_all_crosscompile.patch -+++ ../2.6/08_all_crosscompile.patch -@@ -60,8 +60,8 @@ - -d $(LIBDEST)/site-packages -f \ - -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages - -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ --- ./$(BUILDPYTHON) -Wi -t -c "import lib2to3.pygram" --+ ./$(HOSTPYTHON) -Wi -t -c "import lib2to3.pygram" -+- ./$(BUILDPYTHON) -Wi -t -c "import lib2to3.pygram, lib2to3.patcomp;lib2to3.patcomp.PatternCompiler()" -++ ./$(HOSTPYTHON) -Wi -t -c "import lib2to3.pygram, lib2to3.patcomp;lib2to3.patcomp.PatternCompiler()" - - # Create the PLATDIR source directory, if one wasn't distributed.. - $(srcdir)/Lib/$(PLATDIR): diff --git a/dev-lang/python/files/python-2.6_turkish.patch b/dev-lang/python/files/python-2.6_turkish.patch deleted file mode 100644 index 479c3c3738ef..000000000000 --- a/dev-lang/python/files/python-2.6_turkish.patch +++ /dev/null @@ -1,130 +0,0 @@ -diff -uNr Python-2.6.1.orig/Lib/decimal.py Python-2.6.1/Lib/decimal.py ---- Python-2.6.1.orig/Lib/decimal.py 2008-12-13 14:30:59.000000000 -0430 -+++ Python-2.6.1/Lib/decimal.py 2008-12-13 14:32:59.000000000 -0430 -@@ -152,6 +152,13 @@ - ROUND_HALF_DOWN = 'ROUND_HALF_DOWN' - ROUND_05UP = 'ROUND_05UP' - -+import string -+ -+def ascii_upper(s): -+ trans_table = string.maketrans(string.ascii_lowercase, string.ascii_uppercase) -+ return s.translate(trans_table) -+ -+ - # Errors - - class DecimalException(ArithmeticError): -@@ -3563,7 +3570,7 @@ - if name.startswith('_round_')] - for name in rounding_functions: - # name is like _round_half_even, goes to the global ROUND_HALF_EVEN value. -- globalname = name[1:].upper() -+ globalname = ascii_upper(name[1:]) - val = globals()[globalname] - Decimal._pick_rounding_function[val] = name - -diff -uNr Python-2.6.1.orig/Lib/email/__init__.py Python-2.6.1/Lib/email/__init__.py ---- Python-2.6.1.orig/Lib/email/__init__.py 2008-12-13 14:30:59.000000000 -0430 -+++ Python-2.6.1/Lib/email/__init__.py 2008-12-13 14:34:13.000000000 -0430 -@@ -109,15 +109,19 @@ - 'Text', - ] - -+import string -+lower_map = string.maketrans(string.ascii_uppercase, string.ascii_lowercase) -+ -+ - for _name in _LOWERNAMES: -- importer = LazyImporter(_name.lower()) -+ importer = LazyImporter(_name.translate(lower_map)) - sys.modules['email.' + _name] = importer - setattr(sys.modules['email'], _name, importer) - - - import email.mime - for _name in _MIMENAMES: -- importer = LazyImporter('mime.' + _name.lower()) -+ importer = LazyImporter('mime.' + _name.translate(lower_map)) - sys.modules['email.MIME' + _name] = importer - setattr(sys.modules['email'], 'MIME' + _name, importer) - setattr(sys.modules['email.mime'], _name, importer) -diff -uNr Python-2.6.1.orig/Lib/locale.py Python-2.6.1/Lib/locale.py ---- Python-2.6.1.orig/Lib/locale.py 2008-12-13 14:30:59.000000000 -0430 -+++ Python-2.6.1/Lib/locale.py 2008-12-13 14:57:18.000000000 -0430 -@@ -294,6 +294,14 @@ - # overridden below) - _setlocale = setlocale - -+# Avoid relying on the locale-dependent .lower() method -+# (see bug #1813). -+_ascii_lower_map = ''.join( -+ chr(x + 32 if x >= ord('A') and x <= ord('Z') else x) -+ for x in range(256) -+) -+ -+ - def normalize(localename): - - """ Returns a normalized locale code for the given locale -@@ -311,7 +319,7 @@ - - """ - # Normalize the locale name and extract the encoding -- fullname = localename.lower() -+ fullname = localename.encode('ascii').translate(_ascii_lower_map) - if ':' in fullname: - # ':' is sometimes used as encoding delimiter. - fullname = fullname.replace(':', '.') -diff -uNr Python-2.6.1.orig/Lib/test/test_codecs.py Python-2.6.1/Lib/test/test_codecs.py ---- Python-2.6.1.orig/Lib/test/test_codecs.py 2008-12-13 14:30:59.000000000 -0430 -+++ Python-2.6.1/Lib/test/test_codecs.py 2008-12-13 14:58:33.000000000 -0430 -@@ -1,5 +1,6 @@ - from test import test_support - import unittest -+import locale - import codecs - import sys, StringIO, _testcapi - -@@ -1078,6 +1079,16 @@ - self.assertRaises(LookupError, codecs.lookup, "__spam__") - self.assertRaises(LookupError, codecs.lookup, " ") - -+ def test_lookup_with_locale(self): -+ # Bug #1813: when normalizing codec name, lowercasing must be locale -+ # agnostic, otherwise the looked up codec name might end up wrong. -+ try: -+ locale.setlocale(locale.LC_CTYPE, 'tr') -+ except locale.Error: -+ # SKIPped test -+ return -+ codecs.lookup('ISO8859_1') -+ - def test_getencoder(self): - self.assertRaises(TypeError, codecs.getencoder) - self.assertRaises(LookupError, codecs.getencoder, "__spam__") -diff -uNr Python-2.6.1.orig/Python/codecs.c Python-2.6.1/Python/codecs.c ---- Python-2.6.1.orig/Python/codecs.c 2008-12-13 14:31:00.000000000 -0430 -+++ Python-2.6.1/Python/codecs.c 2008-12-13 14:59:43.000000000 -0430 -@@ -45,6 +45,12 @@ - return -1; - } - -+/* isupper() forced into the ASCII Locale */ -+#define ascii_isupper(x) (((x) >= 0x41) && ((x) <= 0x5A)) -+/* tolower() forced into the ASCII Locale */ -+#define ascii_tolower(x) (ascii_isupper(x) ? ((x) + 0x20) : (x)) -+ -+ - /* Convert a string to a normalized Python string: all characters are - converted to lower case, spaces are replaced with underscores. */ - -@@ -70,7 +76,7 @@ - if (ch == ' ') - ch = '-'; - else -- ch = tolower(Py_CHARMASK(ch)); -+ ch = ascii_tolower(Py_CHARMASK(ch)); - p[i] = ch; - } - return v; diff --git a/dev-lang/python/files/python-updater b/dev-lang/python/files/python-updater deleted file mode 100644 index 62bc736bc48b..000000000000 --- a/dev-lang/python/files/python-updater +++ /dev/null @@ -1,322 +0,0 @@ -#!/bin/sh -# -# A bit of hackery to update everything that is humanly possible -# that maybe related to an older version of python. This script can -# be run as many times as you like. It will log the results in -# /tmp/python-updater.log -# -# OLD_PY_VER = old python version we are upgrading from -# NEW_PY_VER = new python version we are upgrading to -# PKGS_EXCEPTIONS = packages that should NOT be re-emerged for any reason -# PKGS_MANUAL = packages that should be re-emerged even if they don't -# fit the criteria (eg. ones that have python compiled -# statically) - FIXME -# -# Runtime Variables: -# -# PKGS_TO_REMERGE = list of packages we deem to need re-emerging -# PKGS_OK = list of packages that should be merged without any problems -# PKGS_MISSING = list of packages that are installed, but cannot be merged -# because they have been pruned from portage -# PKGS_MASKED = list of packages that are installed, but masked. -# - -NEW_PY_VER=$(python -V 2>&1 | sed 's:Python ::' | cut -d. -f1-2) - -PKGS_EXCEPTIONS="dev-lang/python sys-apps/portage" -PKGS_MANUAL="app-office/gnumeric app-office/dia x11-libs/vte" -LOGFILE="/var/log/python-updater.log" - -# portage variables -PKG_DBDIR=/var/db/pkg -PORTDIR=`portageq portdir` -PORTDIR_OVERLAYS=`portageq portdir_overlay` - -PRETEND=0 -PKGS_TO_REMERGE="" -PKGS_COUNT_REMERGE=0 -PORTAGE_PYTHON="/usr/bin/python" - -# load the gentoo-style info macros, but hack to get around -# it thinking this is an rc script -EBUILD="1" -source /etc/init.d/functions.sh || exit 1 - - - -for old in 2.4 2.3 2.2 2.1; do - if [ "${old}" != "${NEW_PY_VER}" ]; then - if [ -e /usr/bin/python${old} ] ; then - OLD_PY_VER=${old} - break; - fi - fi -done - - -if [ -z "${OLD_PY_VER}" ] ; then - eerror "Can't determine any previous Python version(s)." - exit 1 -fi - - -# misc helper functions -eloginfo() { - einfo $* - DATESTRING=`date +"%Y/%m/%d %H:%M:%S"` - echo "${DATESTRING} - ${*}" >> ${LOGFILE} -} - -elogecho() { - echo -n " " - echo $* - DATESTRING=`date +"%Y/%m/%d %H:%M:%S"` - echo "${DATESTRING} - ${*}" >> ${LOGFILE} -} - -elogerr() { - eerror $* - DATESTRING=`date +"%Y/%m/%d %H:%M:%S"` - echo "${DATESTRING} ! ${*}" >> ${LOGFILE} -} - -elog() { - DATESTRING=`date +"%Y/%m/%d %H:%M:%S"` - echo "${DATESTRING} - ${*}" >> ${LOGFILE} -} - - -usage() { - echo "usage: python-updater [-h|-p|-o X.X|-n X.X]" - echo " -h help" - echo " -p pretend (don't do anything)" - echo " -o X.X set old python version to upgrade from [default: ${OLD_PY_VER}]" - echo " -n X.X set new python version to upgrade to [default: ${NEW_PY_VER}]" -} - -# -# Sanity check -# - -if [ -z "${PORTDIR}" ]; then - eerror "Unable to proceed. Can not find PORTDIR. Make sure the command:" - eerror " " - eerror " portageq portdir" - eerror " " - eerror "returns a value. If it doesn't, make sure you have updated to" - eerror "latest portage version." - eerror " " - eerror "Report bugs to http://bugs.gentoo.org/" - exit 1 -fi - -if [ ! -f ${LOGFILE} ]; then - if ! touch ${LOGFILE} 2>&1 > /dev/null; then - ewarn "Logging disabled due to permissions" - LOGFILE=/dev/null - fi -elif [ ! -w ${LOGFILE} -o ! -L ${LOGFILE} ]; then - ewarn "Logging disabled due to permissions" - LOGFILE=/dev/null -fi - -# -# -# Command Line Parsing -# -# -while [ -n "$1" ]; do - case "$1" in - -h) - usage - exit 0 - ;; - -p) - PRETEND=1 - ;; - -o) - shift - OLD_PY_VER="$1" - ;; - -n) - shift - NEW_PY_VER="$1" - ;; - *) - usage - echo "unrecognised option: $1" - ;; - esac - shift -done - -# -# Test where portage is, in python2.2 or somewhere else? -# -for py in /usr/bin/python /usr/bin/python${OLD_PY_VER} /usr/bin/python${NEW_PY_VER}; do - if ${py} -c "import portage"; then - PORTAGE_PYTHON=${py} - break; - fi -done - -# -# -# Find all packages that have installed something in -# /usr/lib/python${OLD_PY_VER} -# -# -OLD_MODULES_DIRS="/usr/lib/python${OLD_PY_VER} /usr/lib32/python${OLD_PY_VER} /usr/lib64/python${OLD_PY_VER}" -OLD_INCLUDE_DIR=/usr/include/python${OLD_PY_VER} - -eloginfo "Starting Python Updater from ${OLD_PY_VER} to ${NEW_PY_VER} :" -eloginfo "Searching for packages with files in ${OLD_MODULES_DIRS} .." - -# iterate thru all the installed package's contents -for content in `find ${PKG_DBDIR} -name CONTENTS`; do - # extract the category, package name and package version - CATPKGVER=$(echo ${content} | sed "s:${PKG_DBDIR}/\(.*\)/CONTENTS:\1:") - - # exclude packages that are an exception, like portage and python itself. - exception=0 - for exp in ${PKGS_EXCEPTIONS}; do - if [ -n "$(echo ${CATPKGVER} | grep ${exp})" ]; then - exception=1 - break; - fi - done - - if [ ${exception} = 1 ]; then - continue; - fi - - for OLD_MODULES_DIR in ${OLD_MODULES_DIRS}; do - if fgrep "${OLD_MODULES_DIR}" ${content} > /dev/null; then - PKGS_TO_REMERGE="${PKGS_TO_REMERGE} ${CATPKGVER}" - elogecho "Adding to list: ${CATPKGVER}" - elif fgrep "${OLD_INCLUDE_DIR}" ${content} > /dev/null; then - PKGS_TO_REMERGE="${PKGS_TO_REMERGE} ${CATPKGVER}" - fi - done -done - -# now we have to do each emerge seperately because if an installed version -# does not have the corresponding ebuild in portage, then it will bail. - -eloginfo "Calculating Upgrade Package List .." - -PKGS_OK="" -PKGS_MASKED="" -PKGS_MISSING="" - -MASKED_STRING="been masked" -MISSING_STRING="there are no masked or unmasked ebuilds to satisfy" - -for pkg in ${PKGS_TO_REMERGE}; do - emerge_output="$(emerge -p \=$pkg 2>&1)" - if $(echo "${emerge_output}" | grep "${MASKED_STRING}" > /dev/null); then - PKGS_MASKED="${PKGS_MASKED} $pkg" - elogecho "$pkg is masked" - elif $(echo "${emerge_output}" | grep "${MISSING_STRING}" > /dev/null); then - PKGS_MISSING="${PKGS_MISSING} $pkg" - elogecho "$pkg is missing from portage" - else - PKGS_OK="${PKGS_OK} $pkg" - PKGS_COUNT_REMERGE=$((PKGS_COUNT_REMERGE + 1)) - fi -done - -# -# Use my super dumb package reordering algorithm that works most of the time -# - -eloginfo "Re-ordering packages to merge .." - -PKGS_OK_SORTED="$(${PORTAGE_PYTHON} ${PORTDIR}/dev-lang/python/files/depreorder.py ${PKGS_OK} | xargs)" - -eloginfo "Preparing to merge these packages in this order:" -for pkg in $PKGS_OK_SORTED; do - elogecho "$pkg" -done - -# we emerge each package seperately to ensure we know exactly which ones might -# cause an error, and then report it at the end - -COUNT=1 -PKGS_FAILED="" -if [ "${PRETEND}" != "1" ]; then - for pkg in ${PKGS_OK_SORTED}; do - eloginfo "Starting to merge ($COUNT/$PKGS_COUNT_REMERGE) $pkg .." - if ! emerge --oneshot --nodeps =$pkg; then - PKGS_FAILED="${PKGS_FAILED} $pkg" - elogerr "Failed merging $pkg ($COUNT/$PKGS_COUNT_REMERGE)!" - fi - COUNT=$((COUNT+1)) - done -fi - -# final output stuff -OUTPUT_PKGS_MASKED="" -for pkg in ${PKGS_MASKED}; do OUTPUT_PKGS_MASKED="${OUTPUT_PKGS_MASKED} \=$pkg"; done -OUTPUT_PKGS_MISSING="" -for pkg in ${PKGS_MISSING}; do OUTPUT_PKGS_MISSING="${OUTPUT_PKGS_MISSING} $pkg"; done -OUTPUT_PKGS_FAILED="" -for pkg in ${PKGS_FAILED}; do OUTPUT_PKGS_FAILED="${OUTPUT_PKGS_FAILED} \=$pkg"; done - -if [ -n "${PKGS_FAILED}" -o -n "${PKGS_MISSING}" -o -n "${PKGS_MASKED}" ]; then - echo - ewarn "************************************************************" - ewarn "* Packages that still need to be manually emerged : *" - ewarn "************************************************************" - if [ -n "${OUTPUT_PKGS_MASKED}" ]; then - echo - ewarn " Masked Packages:" - ewarn " ----------------" - ewarn " Unmask the following packages (at your own risk) and " - ewarn " emerge them using this command after removing the '-p'" - ewarn " parameter." - echo - ewarn " emerge -p ${OUTPUT_PKGS_MASKED}" - echo - fi - if [ -n "${OUTPUT_PKGS_MISSING}" ]; then - echo - ewarn " Missing Packages:" - ewarn " -----------------" - ewarn " These packages need to be updated because their versions do" - ewarn " not exist in portage anymore." - echo - for x in ${OUTPUT_PKGS_MISSING}; do - echo " ${x}" - done - fi - if [ -n "${OUTPUT_PKGS_FAILED}" ]; then - echo - ewarn " Failed Packaged:" - ewarn " ----------------" - ewarn " These packages have failed and need to be re-emerged again." - ewarn " Alternatively, try re-running this script again to see if it" - ewarn " can be fixed." - echo - ewarn " emerge -p ${OUTPUT_PKGS_FAILED}" - echo - fi - - elog "Python update completed with errors." - elog "Masked Packages:" - for x in ${PKGS_MASKED}; do - elog $x - done - elog "Missing Packages:" - for x in ${PKGS_MISSING}; do - elog $x - done - elog "Failed Packages:" - for x in ${PKGS_FAILED}; do - elog $x - done - elog "Update script completed." -else - eloginfo "Python update completed successfully." -fi - diff --git a/dev-lang/python/files/python-updater-r1 b/dev-lang/python/files/python-updater-r1 deleted file mode 100644 index 09d9321675ba..000000000000 --- a/dev-lang/python/files/python-updater-r1 +++ /dev/null @@ -1,322 +0,0 @@ -#!/bin/sh -# -# A bit of hackery to update everything that is humanly possible -# that maybe related to an older version of python. This script can -# be run as many times as you like. It will log the results in -# /tmp/python-updater.log -# -# OLD_PY_VER = old python version we are upgrading from -# NEW_PY_VER = new python version we are upgrading to -# PKGS_EXCEPTIONS = packages that should NOT be re-emerged for any reason -# PKGS_MANUAL = packages that should be re-emerged even if they don't -# fit the criteria (eg. ones that have python compiled -# statically) - FIXME -# -# Runtime Variables: -# -# PKGS_TO_REMERGE = list of packages we deem to need re-emerging -# PKGS_OK = list of packages that should be merged without any problems -# PKGS_MISSING = list of packages that are installed, but cannot be merged -# because they have been pruned from portage -# PKGS_MASKED = list of packages that are installed, but masked. -# - -NEW_PY_VER=$(python -V 2>&1 | sed 's:Python ::' | cut -d. -f1-2) - -PKGS_EXCEPTIONS="dev-lang/python sys-apps/portage" -PKGS_MANUAL="app-office/gnumeric app-office/dia x11-libs/vte" -LOGFILE="/var/log/python-updater.log" - -# portage variables -PKG_DBDIR=/var/db/pkg -PORTDIR=`portageq portdir` -PORTDIR_OVERLAYS=`portageq portdir_overlay` - -PRETEND=0 -PKGS_TO_REMERGE="" -PKGS_COUNT_REMERGE=0 -PORTAGE_PYTHON="/usr/bin/python" - -# load the gentoo-style info macros, but hack to get around -# it thinking this is an rc script -EBUILD="1" -source /etc/init.d/functions.sh || exit 1 - - - -for old in 2.4 2.3 2.2 2.1; do - if [ "${old}" != "${NEW_PY_VER}" ]; then - if [ -e /usr/bin/python${old} ] ; then - OLD_PY_VER=${old} - break; - fi - fi -done - - -if [ -z "${OLD_PY_VER}" ] ; then - eerror "Can't determine any previous Python version(s)." - exit 1 -fi - - -# misc helper functions -eloginfo() { - einfo $* - DATESTRING=`date +"%Y/%m/%d %H:%M:%S"` - echo "${DATESTRING} - ${*}" >> ${LOGFILE} -} - -elogecho() { - echo -n " " - echo $* - DATESTRING=`date +"%Y/%m/%d %H:%M:%S"` - echo "${DATESTRING} - ${*}" >> ${LOGFILE} -} - -elogerr() { - eerror $* - DATESTRING=`date +"%Y/%m/%d %H:%M:%S"` - echo "${DATESTRING} ! ${*}" >> ${LOGFILE} -} - -elog() { - DATESTRING=`date +"%Y/%m/%d %H:%M:%S"` - echo "${DATESTRING} - ${*}" >> ${LOGFILE} -} - - -usage() { - echo "usage: python-updater [-h|-p|-o X.X|-n X.X]" - echo " -h help" - echo " -p pretend (don't do anything)" - echo " -o X.X set old python version to upgrade from [default: ${OLD_PY_VER}]" - echo " -n X.X set new python version to upgrade to [default: ${NEW_PY_VER}]" -} - -# -# Sanity check -# - -if [ -z "${PORTDIR}" ]; then - eerror "Unable to proceed. Can not find PORTDIR. Make sure the command:" - eerror " " - eerror " portageq portdir" - eerror " " - eerror "returns a value. If it doesn't, make sure you have updated to" - eerror "latest portage version." - eerror " " - eerror "Report bugs to http://bugs.gentoo.org/" - exit 1 -fi - -if [ ! -f ${LOGFILE} ]; then - if ! touch ${LOGFILE} 2>&1 > /dev/null; then - ewarn "Logging disabled due to permissions" - LOGFILE=/dev/null - fi -elif [ ! -w ${LOGFILE} -o ! -L ${LOGFILE} ]; then - ewarn "Logging disabled due to permissions" - LOGFILE=/dev/null -fi - -# -# -# Command Line Parsing -# -# -while [ -n "$1" ]; do - case "$1" in - -h) - usage - exit 0 - ;; - -p) - PRETEND=1 - ;; - -o) - shift - OLD_PY_VER="$1" - ;; - -n) - shift - NEW_PY_VER="$1" - ;; - *) - usage - echo "unrecognised option: $1" - ;; - esac - shift -done - -# -# Test where portage is, in python2.2 or somewhere else? -# -for py in /usr/bin/python /usr/bin/python${OLD_PY_VER} /usr/bin/python${NEW_PY_VER}; do - if ${py} -c "import portage"; then - PORTAGE_PYTHON=${py} - break; - fi -done - -# -# -# Find all packages that have installed something in -# /usr/lib/python${OLD_PY_VER} -# -# -OLD_MODULES_DIRS="/usr/lib/python${OLD_PY_VER} /usr/lib32/python${OLD_PY_VER} /usr/lib64/python${OLD_PY_VER}" -OLD_INCLUDE_DIR=/usr/include/python${OLD_PY_VER} - -eloginfo "Starting Python Updater from ${OLD_PY_VER} to ${NEW_PY_VER} :" -eloginfo "Searching for packages with files in ${OLD_MODULES_DIRS} .." - -# iterate thru all the installed package's contents -for content in `find ${PKG_DBDIR} -name CONTENTS`; do - # extract the category, package name and package version - CATPKGVER=$(echo ${content} | sed "s:${PKG_DBDIR}/\(.*\)/CONTENTS:\1:") - - # exclude packages that are an exception, like portage and python itself. - exception=0 - for exp in ${PKGS_EXCEPTIONS}; do - if [ -n "$(echo ${CATPKGVER} | grep ${exp})" ]; then - exception=1 - break; - fi - done - - if [ ${exception} = 1 ]; then - continue; - fi - - for OLD_MODULES_DIR in ${OLD_MODULES_DIRS}; do - if fgrep "${OLD_MODULES_DIR}" ${content} > /dev/null; then - PKGS_TO_REMERGE="${PKGS_TO_REMERGE} ${CATPKGVER}" - elogecho "Adding to list: ${CATPKGVER}" - elif fgrep "${OLD_INCLUDE_DIR}" ${content} > /dev/null; then - PKGS_TO_REMERGE="${PKGS_TO_REMERGE} ${CATPKGVER}" - fi - done -done - -# now we have to do each emerge seperately because if an installed version -# does not have the corresponding ebuild in portage, then it will bail. - -eloginfo "Calculating Upgrade Package List .." - -PKGS_OK="" -PKGS_MASKED="" -PKGS_MISSING="" - -MASKED_STRING="been masked" -MISSING_STRING="there are no masked or unmasked ebuilds to satisfy" - -for pkg in ${PKGS_TO_REMERGE}; do - emerge_output="$(emerge -p \=$pkg 2>&1)" - if $(echo "${emerge_output}" | grep "${MASKED_STRING}" > /dev/null); then - PKGS_MASKED="${PKGS_MASKED} $pkg" - elogecho "$pkg is masked" - elif $(echo "${emerge_output}" | grep "${MISSING_STRING}" > /dev/null); then - PKGS_MISSING="${PKGS_MISSING} $pkg" - elogecho "$pkg is missing from portage" - else - PKGS_OK="${PKGS_OK} $pkg" - PKGS_COUNT_REMERGE=$((PKGS_COUNT_REMERGE + 1)) - fi -done - -# -# Use my super dumb package reordering algorithm that works most of the time -# - -eloginfo "Re-ordering packages to merge .." - -PKGS_OK_SORTED="$(${PORTAGE_PYTHON} ${PORTDIR}/dev-lang/python/files/depreorder-topsort.py ${PKGS_OK} | xargs)" - -eloginfo "Preparing to merge these packages in this order:" -for pkg in $PKGS_OK_SORTED; do - elogecho "$pkg" -done - -# we emerge each package seperately to ensure we know exactly which ones might -# cause an error, and then report it at the end - -COUNT=1 -PKGS_FAILED="" -if [ "${PRETEND}" != "1" ]; then - for pkg in ${PKGS_OK_SORTED}; do - eloginfo "Starting to merge ($COUNT/$PKGS_COUNT_REMERGE) $pkg .." - if ! emerge --oneshot --nodeps =$pkg; then - PKGS_FAILED="${PKGS_FAILED} $pkg" - elogerr "Failed merging $pkg ($COUNT/$PKGS_COUNT_REMERGE)!" - fi - COUNT=$((COUNT+1)) - done -fi - -# final output stuff -OUTPUT_PKGS_MASKED="" -for pkg in ${PKGS_MASKED}; do OUTPUT_PKGS_MASKED="${OUTPUT_PKGS_MASKED} \=$pkg"; done -OUTPUT_PKGS_MISSING="" -for pkg in ${PKGS_MISSING}; do OUTPUT_PKGS_MISSING="${OUTPUT_PKGS_MISSING} $pkg"; done -OUTPUT_PKGS_FAILED="" -for pkg in ${PKGS_FAILED}; do OUTPUT_PKGS_FAILED="${OUTPUT_PKGS_FAILED} \=$pkg"; done - -if [ -n "${PKGS_FAILED}" -o -n "${PKGS_MISSING}" -o -n "${PKGS_MASKED}" ]; then - echo - ewarn "************************************************************" - ewarn "* Packages that still need to be manually emerged : *" - ewarn "************************************************************" - if [ -n "${OUTPUT_PKGS_MASKED}" ]; then - echo - ewarn " Masked Packages:" - ewarn " ----------------" - ewarn " Unmask the following packages (at your own risk) and " - ewarn " emerge them using this command after removing the '-p'" - ewarn " parameter." - echo - ewarn " emerge -p ${OUTPUT_PKGS_MASKED}" - echo - fi - if [ -n "${OUTPUT_PKGS_MISSING}" ]; then - echo - ewarn " Missing Packages:" - ewarn " -----------------" - ewarn " These packages need to be updated because their versions do" - ewarn " not exist in portage anymore." - echo - for x in ${OUTPUT_PKGS_MISSING}; do - echo " ${x}" - done - fi - if [ -n "${OUTPUT_PKGS_FAILED}" ]; then - echo - ewarn " Failed Packaged:" - ewarn " ----------------" - ewarn " These packages have failed and need to be re-emerged again." - ewarn " Alternatively, try re-running this script again to see if it" - ewarn " can be fixed." - echo - ewarn " emerge -p ${OUTPUT_PKGS_FAILED}" - echo - fi - - elog "Python update completed with errors." - elog "Masked Packages:" - for x in ${PKGS_MASKED}; do - elog $x - done - elog "Missing Packages:" - for x in ${PKGS_MISSING}; do - elog $x - done - elog "Failed Packages:" - for x in ${PKGS_FAILED}; do - elog $x - done - elog "Update script completed." -else - eloginfo "Python update completed successfully." -fi - diff --git a/dev-lang/python/python-2.4.4-r14.ebuild b/dev-lang/python/python-2.4.4-r14.ebuild deleted file mode 100644 index 7c5113b5bbda..000000000000 --- a/dev-lang/python/python-2.4.4-r14.ebuild +++ /dev/null @@ -1,333 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.4.4-r14.ebuild,v 1.5 2009/02/26 05:28:46 vapier Exp $ - -# NOTE about python-portage interactions : -# - Do not add a pkg_setup() check for a certain version of portage -# in dev-lang/python. It _WILL_ stop people installing from -# Gentoo 1.4 images. - -EAPI=1 - -inherit autotools eutils flag-o-matic python multilib versionator toolchain-funcs alternatives - -# we need this so that we don't depends on python.eclass -PYVER_MAJOR=$(get_major_version) -PYVER_MINOR=$(get_version_component_range 2) -PYVER="${PYVER_MAJOR}.${PYVER_MINOR}" - -MY_P="Python-${PV}" -S="${WORKDIR}/${MY_P}" -DESCRIPTION="Python is an interpreted, interactive, object-oriented programming language." -HOMEPAGE="http://www.python.org/" -SRC_URI="http://www.python.org/ftp/python/${PV}/${MY_P}.tar.bz2 - mirror://gentoo/python-gentoo-patches-${PV}-r11.tar.bz2" - -LICENSE="PSF-2.2" -SLOT="2.4" -KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd" -IUSE="ncurses gdbm ssl readline tk berkdb bootstrap ipv6 build ucs2 doc +cxx +threads examples elibc_uclibc wininst +xml" - -# Can't be compiled against db-4.5 Bug #179377 -DEPEND=">=sys-libs/zlib-1.1.3 - !dev-python/cjkcodecs - !build? ( - tk? ( >=dev-lang/tk-8.0 ) - ncurses? ( >=sys-libs/ncurses-5.2 readline? ( >=sys-libs/readline-4.1 ) ) - berkdb? ( || ( sys-libs/db:4.4 sys-libs/db:4.3 ) ) - gdbm? ( sys-libs/gdbm ) - ssl? ( dev-libs/openssl ) - doc? ( dev-python/python-docs:2.4 ) - xml? ( dev-libs/expat ) - )" - -# NOTE: changed RDEPEND to PDEPEND to resolve bug 88777. - kloeri -# NOTE: added blocker to enforce correct merge order for bug 88777. - zmedico - -RDEPEND="${DEPEND} build? ( !dev-python/pycrypto )" -PDEPEND="${DEPEND} app-admin/python-updater" - -PROVIDE="virtual/python" - -src_unpack() { - unpack ${A} - cd "${S}" - - if tc-is-cross-compiler ; then - epatch "${FILESDIR}"/python-2.4.4-test-cross.patch - else - rm "${WORKDIR}/${PV}"/*_all_crosscompile.patch - fi - - EPATCH_SUFFIX="patch" epatch "${WORKDIR}/${PV}" - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \ - Lib/distutils/command/install.py \ - Lib/distutils/sysconfig.py \ - Lib/site.py \ - Makefile.pre.in \ - Modules/Setup.dist \ - Modules/getpath.c \ - setup.py || die - - # fix os.utime() on hppa. utimes it not supported but unfortunately - # reported as working - gmsoft (22 May 04) - # PLEASE LEAVE THIS FIX FOR NEXT VERSIONS AS IT'S A CRITICAL FIX !!! - [ "${ARCH}" = "hppa" ] && sed -e 's/utimes //' -i "${S}"/configure - - if ! use wininst; then - # remove microsoft windows executables - rm Lib/distutils/command/wininst-*.exe - fi - - eautoreconf -} - -src_configure() { - # disable extraneous modules with extra dependencies - if use build; then - export PYTHON_DISABLE_MODULES="readline pyexpat dbm gdbm bsddb _curses _curses_panel _tkinter" - export PYTHON_DISABLE_SSL=1 - else - # dbm module can link to berkdb or gdbm -- defaults to gdbm when - # both are enabled, see #204343 - use berkdb || use gdbm \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} dbm" - use gdbm \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} gdbm" - use berkdb \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} bsddb" - use readline \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} readline" - use tk \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _tkinter" - use ncurses \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _curses _curses_panel" - use ssl \ - || export PYTHON_DISABLE_SSL=1 - use xml \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} pyexpat" - export PYTHON_DISABLE_MODULES - - if use !xml; then - ewarn "You have configured Python without XML support." - ewarn "This is NOT a recommended configuration as you" - ewarn "may face problems parsing any XML documents." - fi - - einfo "Disabled modules: $PYTHON_DISABLE_MODULES" - fi -} - -src_compile() { - filter-flags -malign-double - - # Seems to no longer be necessary - #[ "${ARCH}" = "amd64" ] && append-flags -fPIC - [ "${ARCH}" = "alpha" ] && append-flags -fPIC - - # http://bugs.gentoo.org/show_bug.cgi?id=50309 - if is-flag -O3; then - is-flag -fstack-protector-all && replace-flags -O3 -O2 - use hardened && replace-flags -O3 -O2 - fi - - export OPT="${CFLAGS}" - - local myconf - #if we are creating a new build image, we remove the dependency on g++ - if use build && ! use bootstrap || ! use cxx ; then - myconf="--with-cxx=no" - fi - - # super-secret switch. don't use this unless you know what you're - # doing. enabling UCS2 support will break your existing python - # modules - use ucs2 \ - && myconf="${myconf} --enable-unicode=ucs2" \ - || myconf="${myconf} --enable-unicode=ucs4" - - use threads \ - && myconf="${myconf} --with-threads" \ - || myconf="${myconf} --without-threads" - - src_configure - - if tc-is-cross-compiler ; then - OPT="-O1" CFLAGS="" LDFLAGS="" CC="" \ - ./configure --with-cxx=no --{build,host}=${CBUILD} || die "cross-configure failed" - emake python Parser/pgen || die "cross-make failed" - mv python hostpython - mv Parser/pgen Parser/hostpgen - make distclean - sed -i \ - -e '/^HOSTPYTHON/s:=.*:=./hostpython:' \ - -e '/^HOSTPGEN/s:=.*:=./Parser/hostpgen:' \ - Makefile.pre.in || die - fi - - # export CXX so it ends up in /usr/lib/python2.x/config/Makefile - tc-export CXX - # set LINKCC to prevent python from being linked to libstdc++.so - export LINKCC="\$(PURIFY) \$(CC)" - econf \ - --with-fpectl \ - --enable-shared \ - `use_enable ipv6` \ - --infodir='${prefix}'/share/info \ - --mandir='${prefix}'/share/man \ - --with-libc='' \ - ${myconf} || die - emake || die "Parallel make failed" -} - -src_install() { - dodir /usr - src_configure - make DESTDIR="${D}" altinstall maninstall || die - - # install our own custom python-config - exeinto /usr/bin - newexe "${FILESDIR}"/python-config-${PYVER}-r1 python-config-${PYVER} - - # Use correct libdir in python-config - dosed "s:/usr/lib/:/usr/$(get_libdir)/:" /usr/bin/python-config-${PYVER} - - if use build ; then - rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,encodings,email,lib-tk,bsddb/test} - else - use elibc_uclibc && rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,bsddb/test} - use berkdb || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/bsddb - use tk || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/lib-tk - fi - - # Fix slotted collisions - mv "${D}"/usr/bin/pydoc "${D}"/usr/bin/pydoc${PYVER} - mv "${D}"/usr/bin/idle "${D}"/usr/bin/idle${PYVER} - mv "${D}"/usr/share/man/man1/python.1 \ - "${D}"/usr/share/man/man1/python${PYVER}.1 - rm -f "${D}"/usr/bin/smtpd.py - - prep_ml_includes usr/include/python${PYVER} - - # The stuff below this line extends from 2.1, and should be deprecated - # in 2.3, or possibly can wait till 2.4 - - # seems like the build do not install Makefile.pre.in anymore - # it probably shouldn't - use DistUtils, people! - insinto /usr/$(get_libdir)/python${PYVER}/config - doins "${S}"/Makefile.pre.in - - # While we're working on the config stuff... Let's fix the OPT var - # so that it doesn't have any opts listed in it. Prevents the problem - # with compiling things with conflicting opts later. - dosed -e 's:^OPT=.*:OPT=-DNDEBUG:' \ - /usr/$(get_libdir)/python${PYVER}/config/Makefile - - if use examples ; then - mkdir -p "${D}"/usr/share/doc/${P}/examples - cp -r "${S}"/Tools "${D}"/usr/share/doc/${P}/examples - fi - - newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT} - newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT} -} - -pkg_postrm() { - local mansuffix=$(ecompress --suffix) - python_makesym - alternatives_auto_makesym "/usr/bin/idle" "idle[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/pydoc" "pydoc[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/python-config" \ - "python-config-[0-9].[0-9]" - alternatives_auto_makesym "/usr/share/man/man1/python.1${mansuffix}" \ - "python[0-9].[0-9].1${mansuffix}" - - python_mod_cleanup /usr/lib/python${PYVER} - [[ "$(get_libdir)" == "lib" ]] || \ - python_mod_cleanup /usr/$(get_libdir)/python${PYVER} -} - -pkg_postinst() { - local myroot - myroot=$(echo $ROOT | sed 's:/$::') - local mansuffix=$(ecompress --suffix) - - python_makesym - alternatives_auto_makesym "/usr/bin/idle" "idle[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/pydoc" "pydoc[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/python-config" \ - "python-config-[0-9].[0-9]" - alternatives_auto_makesym "/usr/share/man/man1/python.1${mansuffix}" \ - "python[0-9].[0-9].1${mansuffix}" - - python_mod_optimize - python_mod_optimize -x "(site-packages|test)" \ - /usr/lib/python${PYVER} - [[ "$(get_libdir)" == "lib" ]] || \ - python_mod_optimize -x "(site-packages|test)" \ - /usr/$(get_libdir)/python${PYVER} - - # workaround possible python-upgrade-breaks-portage situation - if [ ! -f ${myroot}/usr/lib/portage/pym/portage.py ]; then - if [ -f ${myroot}/usr/lib/python2.3/site-packages/portage.py ]; then - einfo "Working around possible python-portage upgrade breakage" - mkdir -p ${myroot}/usr/lib/portage/pym - cp ${myroot}/usr/lib/python2.4/site-packages/{portage,xpak,output,cvstree,getbinpkg,emergehelp,dispatch_conf}.py ${myroot}/usr/lib/portage/pym - python_mod_optimize /usr/lib/portage/pym - fi - fi - - echo - ewarn - ewarn "If you have just upgraded from an older version of python you" - ewarn "will need to run:" - ewarn - ewarn "/usr/sbin/python-updater" - ewarn - ewarn "This will automatically rebuild all the python dependent modules" - ewarn "to run with python-${PYVER}." - ewarn - ewarn "Your original Python is still installed and can be accessed via" - ewarn "/usr/bin/python2.x." - ewarn - ebeep 5 -} - -src_test() { - # Tests won't work when cross compiling - if tc-is-cross-compiler ; then - elog "Disabling tests due to crosscompiling." - return - fi - - # Disabling byte compiling breaks test_import - python_enable_pyc - - #skip all tests that fail during emerge but pass without emerge: - #(See bug# 67970) - local skip_tests="cookielib distutils global hotshot mimetools minidom mmap posix sax strptime subprocess syntax tcl time urllib urllib2" - - # test_pow fails on alpha. - # http://bugs.python.org/issue756093 - [[ ${ARCH} == "alpha" ]] && skip_tests="${skip_tests} pow" - - for test in ${skip_tests} ; do - mv "${S}"/Lib/test/test_${test}.py "${T}" - done - - # rerun failed tests in verbose mode (regrtest -w) - EXTRATESTOPTS="-w" make test || die "make test failed" - - for test in ${skip_tests} ; do - mv "${T}"/test_${test}.py "${S}"/Lib/test/test_${test}.py - done - - elog "Portage skipped the following tests which aren't able to run from emerge:" - for test in ${skip_tests} ; do - elog "test_${test}.py" - done - - elog "If you'd like to run them, you may:" - elog "cd /usr/lib/python${PYVER}/test" - elog "and run the tests separately." -} diff --git a/dev-lang/python/python-2.4.4-r15.ebuild b/dev-lang/python/python-2.4.4-r15.ebuild deleted file mode 100644 index a9cd26dc5ddc..000000000000 --- a/dev-lang/python/python-2.4.4-r15.ebuild +++ /dev/null @@ -1,334 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.4.4-r15.ebuild,v 1.4 2009/02/26 05:28:46 vapier Exp $ - -# NOTE about python-portage interactions : -# - Do not add a pkg_setup() check for a certain version of portage -# in dev-lang/python. It _WILL_ stop people installing from -# Gentoo 1.4 images. - -EAPI=1 - -inherit autotools eutils flag-o-matic python multilib versionator toolchain-funcs alternatives - -# we need this so that we don't depends on python.eclass -PYVER_MAJOR=$(get_major_version) -PYVER_MINOR=$(get_version_component_range 2) -PYVER="${PYVER_MAJOR}.${PYVER_MINOR}" - -MY_P="Python-${PV}" -S="${WORKDIR}/${MY_P}" -DESCRIPTION="Python is an interpreted, interactive, object-oriented programming language." -HOMEPAGE="http://www.python.org/" -SRC_URI="http://www.python.org/ftp/python/${PV}/${MY_P}.tar.bz2 - mirror://gentoo/python-gentoo-patches-${PV}-r12.tar.bz2" - -LICENSE="PSF-2.2" -SLOT="2.4" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd" -IUSE="ncurses gdbm ssl readline tk berkdb bootstrap ipv6 build ucs2 doc +cxx +threads examples elibc_uclibc wininst +xml" - -# Can't be compiled against db-4.5 Bug #179377 -DEPEND=">=sys-libs/zlib-1.1.3 - !dev-python/cjkcodecs - !build? ( - tk? ( >=dev-lang/tk-8.0 ) - ncurses? ( >=sys-libs/ncurses-5.2 readline? ( >=sys-libs/readline-4.1 ) ) - berkdb? ( || ( sys-libs/db:4.4 sys-libs/db:4.3 ) ) - gdbm? ( sys-libs/gdbm ) - ssl? ( dev-libs/openssl ) - doc? ( dev-python/python-docs:2.4 ) - xml? ( dev-libs/expat ) - )" - -# NOTE: changed RDEPEND to PDEPEND to resolve bug 88777. - kloeri -# NOTE: added blocker to enforce correct merge order for bug 88777. - zmedico - -RDEPEND="${DEPEND} build? ( !dev-python/pycrypto )" -PDEPEND="${DEPEND} app-admin/python-updater" - -PROVIDE="virtual/python" - -src_unpack() { - unpack ${A} - cd "${S}" - - if tc-is-cross-compiler ; then - epatch "${FILESDIR}"/python-2.4.4-test-cross.patch - else - rm "${WORKDIR}/${PV}"/*_all_crosscompile.patch - fi - - EPATCH_SUFFIX="patch" epatch "${WORKDIR}/${PV}" - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \ - Lib/distutils/command/install.py \ - Lib/distutils/sysconfig.py \ - Lib/site.py \ - Makefile.pre.in \ - Modules/Setup.dist \ - Modules/getpath.c \ - setup.py || die - - # fix os.utime() on hppa. utimes it not supported but unfortunately - # reported as working - gmsoft (22 May 04) - # PLEASE LEAVE THIS FIX FOR NEXT VERSIONS AS IT'S A CRITICAL FIX !!! - [ "${ARCH}" = "hppa" ] && sed -e 's/utimes //' -i "${S}"/configure - - if ! use wininst; then - # remove microsoft windows executables - rm Lib/distutils/command/wininst-*.exe - fi - - eautoreconf -} - -src_configure() { - # disable extraneous modules with extra dependencies - if use build; then - export PYTHON_DISABLE_MODULES="readline pyexpat dbm gdbm bsddb _curses _curses_panel _tkinter" - export PYTHON_DISABLE_SSL=1 - else - # dbm module can link to berkdb or gdbm -- defaults to gdbm when - # both are enabled, see #204343 - use berkdb || use gdbm \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} dbm" - use gdbm \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} gdbm" - use berkdb \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} bsddb" - use readline \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} readline" - use tk \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _tkinter" - use ncurses \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _curses _curses_panel" - use ssl \ - || export PYTHON_DISABLE_SSL=1 - use xml \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} pyexpat" - - export PYTHON_DISABLE_MODULES - - if use !xml; then - ewarn "You have configured Python without XML support." - ewarn "This is NOT a recommended configuration as you" - ewarn "may face problems parsing any XML documents." - fi - - einfo "Disabled modules: $PYTHON_DISABLE_MODULES" - fi -} - -src_compile() { - filter-flags -malign-double - - # Seems to no longer be necessary - #[ "${ARCH}" = "amd64" ] && append-flags -fPIC - [ "${ARCH}" = "alpha" ] && append-flags -fPIC - - # http://bugs.gentoo.org/show_bug.cgi?id=50309 - if is-flag -O3; then - is-flag -fstack-protector-all && replace-flags -O3 -O2 - use hardened && replace-flags -O3 -O2 - fi - - export OPT="${CFLAGS}" - - local myconf - #if we are creating a new build image, we remove the dependency on g++ - if use build && ! use bootstrap || ! use cxx ; then - myconf="--with-cxx=no" - fi - - # super-secret switch. don't use this unless you know what you're - # doing. enabling UCS2 support will break your existing python - # modules - use ucs2 \ - && myconf="${myconf} --enable-unicode=ucs2" \ - || myconf="${myconf} --enable-unicode=ucs4" - - use threads \ - && myconf="${myconf} --with-threads" \ - || myconf="${myconf} --without-threads" - - src_configure - - if tc-is-cross-compiler ; then - OPT="-O1" CFLAGS="" LDFLAGS="" CC="" \ - ./configure --with-cxx=no --{build,host}=${CBUILD} || die "cross-configure failed" - emake python Parser/pgen || die "cross-make failed" - mv python hostpython - mv Parser/pgen Parser/hostpgen - make distclean - sed -i \ - -e '/^HOSTPYTHON/s:=.*:=./hostpython:' \ - -e '/^HOSTPGEN/s:=.*:=./Parser/hostpgen:' \ - Makefile.pre.in || die - fi - - # export CXX so it ends up in /usr/lib/python2.x/config/Makefile - tc-export CXX - # set LINKCC to prevent python from being linked to libstdc++.so - export LINKCC="\$(PURIFY) \$(CC)" - econf \ - --with-fpectl \ - --enable-shared \ - `use_enable ipv6` \ - --infodir='${prefix}'/share/info \ - --mandir='${prefix}'/share/man \ - --with-libc='' \ - ${myconf} || die - emake || die "Parallel make failed" -} - -src_install() { - dodir /usr - src_configure - make DESTDIR="${D}" altinstall maninstall || die - - # install our own custom python-config - exeinto /usr/bin - newexe "${FILESDIR}"/python-config-${PYVER}-r1 python-config-${PYVER} - - # Use correct libdir in python-config - dosed "s:/usr/lib/:/usr/$(get_libdir)/:" /usr/bin/python-config-${PYVER} - - if use build ; then - rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,encodings,email,lib-tk,bsddb/test} - else - use elibc_uclibc && rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,bsddb/test} - use berkdb || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/bsddb - use tk || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/lib-tk - fi - - # Fix slotted collisions - mv "${D}"/usr/bin/pydoc "${D}"/usr/bin/pydoc${PYVER} - mv "${D}"/usr/bin/idle "${D}"/usr/bin/idle${PYVER} - mv "${D}"/usr/share/man/man1/python.1 \ - "${D}"/usr/share/man/man1/python${PYVER}.1 - rm -f "${D}"/usr/bin/smtpd.py - - prep_ml_includes usr/include/python${PYVER} - - # The stuff below this line extends from 2.1, and should be deprecated - # in 2.3, or possibly can wait till 2.4 - - # seems like the build do not install Makefile.pre.in anymore - # it probably shouldn't - use DistUtils, people! - insinto /usr/$(get_libdir)/python${PYVER}/config - doins "${S}"/Makefile.pre.in - - # While we're working on the config stuff... Let's fix the OPT var - # so that it doesn't have any opts listed in it. Prevents the problem - # with compiling things with conflicting opts later. - dosed -e 's:^OPT=.*:OPT=-DNDEBUG:' \ - /usr/$(get_libdir)/python${PYVER}/config/Makefile - - if use examples ; then - insinto /usr/share/doc/${PF}/examples - doins -r "${S}"/Tools || die "doins failed" - fi - - newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT} - newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT} -} - -pkg_postrm() { - local mansuffix=$(ecompress --suffix) - python_makesym - alternatives_auto_makesym "/usr/bin/idle" "idle[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/pydoc" "pydoc[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/python-config" \ - "python-config-[0-9].[0-9]" - alternatives_auto_makesym "/usr/share/man/man1/python.1${mansuffix}" \ - "python[0-9].[0-9].1${mansuffix}" - - python_mod_cleanup /usr/lib/python${PYVER} - [[ "$(get_libdir)" == "lib" ]] || \ - python_mod_cleanup /usr/$(get_libdir)/python${PYVER} -} - -pkg_postinst() { - local myroot - myroot=$(echo $ROOT | sed 's:/$::') - local mansuffix=$(ecompress --suffix) - - python_makesym - alternatives_auto_makesym "/usr/bin/idle" "idle[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/pydoc" "pydoc[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/python-config" \ - "python-config-[0-9].[0-9]" - alternatives_auto_makesym "/usr/share/man/man1/python.1${mansuffix}" \ - "python[0-9].[0-9].1${mansuffix}" - - python_mod_optimize - python_mod_optimize -x "(site-packages|test)" \ - /usr/lib/python${PYVER} - [[ "$(get_libdir)" == "lib" ]] || \ - python_mod_optimize -x "(site-packages|test)" \ - /usr/$(get_libdir)/python${PYVER} - - # workaround possible python-upgrade-breaks-portage situation - if [ ! -f ${myroot}/usr/lib/portage/pym/portage.py ]; then - if [ -f ${myroot}/usr/lib/python2.3/site-packages/portage.py ]; then - einfo "Working around possible python-portage upgrade breakage" - mkdir -p ${myroot}/usr/lib/portage/pym - cp ${myroot}/usr/lib/python2.4/site-packages/{portage,xpak,output,cvstree,getbinpkg,emergehelp,dispatch_conf}.py ${myroot}/usr/lib/portage/pym - python_mod_optimize /usr/lib/portage/pym - fi - fi - - echo - ewarn - ewarn "If you have just upgraded from an older version of python you" - ewarn "will need to run:" - ewarn - ewarn "/usr/sbin/python-updater" - ewarn - ewarn "This will automatically rebuild all the python dependent modules" - ewarn "to run with python-${PYVER}." - ewarn - ewarn "Your original Python is still installed and can be accessed via" - ewarn "/usr/bin/python2.x." - ewarn - ebeep 5 -} - -src_test() { - # Tests won't work when cross compiling - if tc-is-cross-compiler ; then - elog "Disabling tests due to crosscompiling." - return - fi - - # Disabling byte compiling breaks test_import - python_enable_pyc - - #skip all tests that fail during emerge but pass without emerge: - #(See bug# 67970) - local skip_tests="cookielib distutils global hotshot mimetools minidom mmap posix sax strptime subprocess syntax tcl time urllib urllib2" - - # test_pow fails on alpha. - # http://bugs.python.org/issue756093 - [[ ${ARCH} == "alpha" ]] && skip_tests="${skip_tests} pow" - - for test in ${skip_tests} ; do - mv "${S}"/Lib/test/test_${test}.py "${T}" - done - - # rerun failed tests in verbose mode (regrtest -w) - EXTRATESTOPTS="-w" make test || die "make test failed" - - for test in ${skip_tests} ; do - mv "${T}"/test_${test}.py "${S}"/Lib/test/test_${test}.py - done - - elog "Portage skipped the following tests which aren't able to run from emerge:" - for test in ${skip_tests} ; do - elog "test_${test}.py" - done - - elog "If you'd like to run them, you may:" - elog "cd /usr/lib/python${PYVER}/test" - elog "and run the tests separately." -} diff --git a/dev-lang/python/python-2.4.4-r5.ebuild b/dev-lang/python/python-2.4.4-r5.ebuild deleted file mode 100644 index 54ed1f4be40d..000000000000 --- a/dev-lang/python/python-2.4.4-r5.ebuild +++ /dev/null @@ -1,323 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.4.4-r5.ebuild,v 1.23 2009/02/26 05:28:46 vapier Exp $ - -# NOTE about python-portage interactions : -# - Do not add a pkg_setup() check for a certain version of portage -# in dev-lang/python. It _WILL_ stop people installing from -# Gentoo 1.4 images. - -EAPI=1 - -inherit autotools eutils flag-o-matic python multilib versionator toolchain-funcs alternatives - -# we need this so that we don't depends on python.eclass -PYVER_MAJOR=$(get_major_version) -PYVER_MINOR=$(get_version_component_range 2) -PYVER="${PYVER_MAJOR}.${PYVER_MINOR}" - -MY_P="Python-${PV}" -S="${WORKDIR}/${MY_P}" -DESCRIPTION="Python is an interpreted, interactive, object-oriented programming language." -HOMEPAGE="http://www.python.org/" -SRC_URI="http://www.python.org/ftp/python/${PV}/${MY_P}.tar.bz2 - mirror://gentoo/python-gentoo-patches-${PV}-r3.tar.bz2" - -LICENSE="PSF-2.2" -SLOT="2.4" -KEYWORDS="alpha amd64 arm hppa ia64 m68k mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd" -IUSE="ncurses gdbm ssl readline tk berkdb bootstrap ipv6 build ucs2 doc nocxx nothreads examples elibc_uclibc +xml" - -DEPEND=">=sys-libs/zlib-1.1.3 - !dev-python/cjkcodecs - !build? ( - tk? ( >=dev-lang/tk-8.0 ) - ncurses? ( >=sys-libs/ncurses-5.2 readline? ( >=sys-libs/readline-4.1 ) ) - berkdb? ( >=sys-libs/db-3.1 ) - gdbm? ( sys-libs/gdbm ) - ssl? ( dev-libs/openssl ) - doc? ( =dev-python/python-docs-${PV}* ) - xml? ( dev-libs/expat ) - )" - -# NOTE: The dev-python/python-fchksum RDEPEND is needed so that this python -# provides the functionality expected from previous pythons. - -# NOTE: python-fchksum is only a RDEPEND and not a DEPEND since we don't need -# it to compile python. We just need to ensure that when we install -# python, we definitely have fchksum support. - liquidx - -# NOTE: changed RDEPEND to PDEPEND to resolve bug 88777. - kloeri -# NOTE: added blocker to enforce correct merge order for bug 88777. - zmedico - -RDEPEND="${DEPEND} build? ( !dev-python/python-fchksum !dev-python/pycrypto )" -PDEPEND="${DEPEND} !build? ( dev-python/python-fchksum ) app-admin/python-updater" - -PROVIDE="virtual/python" - -src_unpack() { - unpack ${A} - cd "${S}" - - if tc-is-cross-compiler ; then - epatch "${FILESDIR}"/python-2.4.4-test-cross.patch - else - rm "${WORKDIR}/${PV}"/*_all_crosscompile.patch - fi - - EPATCH_SUFFIX="patch" epatch "${WORKDIR}/${PV}" - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \ - Lib/distutils/command/install.py \ - Lib/distutils/sysconfig.py \ - Lib/site.py \ - Makefile.pre.in \ - Modules/Setup.dist \ - Modules/getpath.c \ - setup.py || die - - # fix os.utime() on hppa. utimes it not supported but unfortunately - # reported as working - gmsoft (22 May 04) - # PLEASE LEAVE THIS FIX FOR NEXT VERSIONS AS IT'S A CRITICAL FIX !!! - [ "${ARCH}" = "hppa" ] && sed -e 's/utimes //' -i "${S}"/configure - - eautoreconf -} - -src_configure() { - # disable extraneous modules with extra dependencies - if use build; then - export PYTHON_DISABLE_MODULES="readline pyexpat dbm gdbm bsddb _curses _curses_panel _tkinter" - export PYTHON_DISABLE_SSL=1 - else - use gdbm \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} gdbm" - use berkdb \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} dbm bsddb" - use readline \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} readline" - use tk \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _tkinter" - use ncurses \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _curses _curses_panel" - use ssl \ - || export PYTHON_DISABLE_SSL=1 - use xml \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} pyexpat" - export PYTHON_DISABLE_MODULES - - if use !xml; then - ewarn "You have configured Python without XML support." - ewarn "This is NOT a recommended configuration as you" - ewarn "may face problems parsing any XML documents." - fi - - einfo "Disabled modules: $PYTHON_DISABLE_MODULES" - fi -} - -src_compile() { - filter-flags -malign-double - - # Seems to no longer be necessary - #[ "${ARCH}" = "amd64" ] && append-flags -fPIC - [ "${ARCH}" = "alpha" ] && append-flags -fPIC - - # http://bugs.gentoo.org/show_bug.cgi?id=50309 - if is-flag -O3; then - is-flag -fstack-protector-all && replace-flags -O3 -O2 - use hardened && replace-flags -O3 -O2 - fi - - export OPT="${CFLAGS}" - - local myconf - #if we are creating a new build image, we remove the dependency on g++ - if use build && ! use bootstrap || use nocxx ; then - myconf="--with-cxx=no" - fi - - # super-secret switch. don't use this unless you know what you're - # doing. enabling UCS2 support will break your existing python - # modules - use ucs2 \ - && myconf="${myconf} --enable-unicode=ucs2" \ - || myconf="${myconf} --enable-unicode=ucs4" - - use nothreads \ - && myconf="${myconf} --without-threads" \ - || myconf="${myconf} --with-threads" - - src_configure - - if tc-is-cross-compiler ; then - OPT="-O1" CFLAGS="" LDFLAGS="" CC="" \ - ./configure --with-cxx=no --{build,host}=${CBUILD} || die "cross-configure failed" - emake python Parser/pgen || die "cross-make failed" - mv python hostpython - mv Parser/pgen Parser/hostpgen - make distclean - sed -i \ - -e '/^HOSTPYTHON/s:=.*:=./hostpython:' \ - -e '/^HOSTPGEN/s:=.*:=./Parser/hostpgen:' \ - Makefile.pre.in || die - fi - - # export CXX so it ends up in /usr/lib/python2.x/config/Makefile - tc-export CXX - # set LINKCC to prevent python from being linked to libstdc++.so - export LINKCC="\$(PURIFY) \$(CC)" - econf \ - --with-fpectl \ - --enable-shared \ - `use_enable ipv6` \ - --infodir='${prefix}'/share/info \ - --mandir='${prefix}'/share/man \ - --with-libc='' \ - ${myconf} || die - emake || die "Parallel make failed" -} - -src_install() { - dodir /usr - src_configure - make DESTDIR="${D}" altinstall maninstall || die - - # install our own custom python-config - exeinto /usr/bin - newexe "${FILESDIR}"/python-config-${PYVER}-r1 python-config-${PYVER} - - # Use correct libdir in python-config - dosed "s:/usr/lib/:/usr/$(get_libdir)/:" /usr/bin/python-config-${PYVER} - - if use build ; then - rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,encodings,email,lib-tk,bsddb/test} - else - use elibc_uclibc && rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,bsddb/test} - use berkdb || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/bsddb - use tk || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/lib-tk - fi - - # Fix slotted collisions - mv "${D}"/usr/bin/pydoc "${D}"/usr/bin/pydoc${PYVER} - mv "${D}"/usr/bin/idle "${D}"/usr/bin/idle${PYVER} - mv "${D}"/usr/share/man/man1/python.1 \ - "${D}"/usr/share/man/man1/python${PYVER}.1 - rm -f "${D}"/usr/bin/smtpd.py - - prep_ml_includes usr/include/python${PYVER} - - # The stuff below this line extends from 2.1, and should be deprecated - # in 2.3, or possibly can wait till 2.4 - - # seems like the build do not install Makefile.pre.in anymore - # it probably shouldn't - use DistUtils, people! - insinto /usr/$(get_libdir)/python${PYVER}/config - doins "${S}"/Makefile.pre.in - - # While we're working on the config stuff... Let's fix the OPT var - # so that it doesn't have any opts listed in it. Prevents the problem - # with compiling things with conflicting opts later. - dosed -e 's:^OPT=.*:OPT=-DNDEBUG:' \ - /usr/$(get_libdir)/python${PYVER}/config/Makefile - - if use examples ; then - mkdir -p "${D}"/usr/share/doc/${P}/examples - cp -r "${S}"/Tools "${D}"/usr/share/doc/${P}/examples - fi -} - -pkg_postrm() { - local mansuffix=$(ecompress --suffix) - python_makesym - alternatives_auto_makesym "/usr/bin/idle" "idle[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/pydoc" "pydoc[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/python-config" \ - "python-config-[0-9].[0-9]" - alternatives_auto_makesym "/usr/share/man/man1/python.1${mansuffix}" \ - "python[0-9].[0-9].1${mansuffix}" - - python_mod_cleanup /usr/lib/python${PYVER} - [[ "$(get_libdir)" == "lib" ]] || \ - python_mod_cleanup /usr/$(get_libdir)/python${PYVER} -} - -pkg_postinst() { - local myroot - myroot=$(echo $ROOT | sed 's:/$::') - local mansuffix=$(ecompress --suffix) - - python_makesym - alternatives_auto_makesym "/usr/bin/idle" "idle[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/pydoc" "pydoc[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/python-config" \ - "python-config-[0-9].[0-9]" - alternatives_auto_makesym "/usr/share/man/man1/python.1${mansuffix}" \ - "python[0-9].[0-9].1${mansuffix}" - - python_mod_optimize - python_mod_optimize -x "(site-packages|test)" \ - /usr/lib/python${PYVER} - [[ "$(get_libdir)" == "lib" ]] || \ - python_mod_optimize -x "(site-packages|test)" \ - /usr/$(get_libdir)/python${PYVER} - - # workaround possible python-upgrade-breaks-portage situation - if [ ! -f ${myroot}/usr/lib/portage/pym/portage.py ]; then - if [ -f ${myroot}/usr/lib/python2.3/site-packages/portage.py ]; then - einfo "Working around possible python-portage upgrade breakage" - mkdir -p ${myroot}/usr/lib/portage/pym - cp ${myroot}/usr/lib/python2.4/site-packages/{portage,xpak,output,cvstree,getbinpkg,emergehelp,dispatch_conf}.py ${myroot}/usr/lib/portage/pym - python_mod_optimize /usr/lib/portage/pym - fi - fi - - echo - ewarn - ewarn "If you have just upgraded from an older version of python you" - ewarn "will need to run:" - ewarn - ewarn "/usr/sbin/python-updater" - ewarn - ewarn "This will automatically rebuild all the python dependent modules" - ewarn "to run with python-${PYVER}." - ewarn - ewarn "Your original Python is still installed and can be accessed via" - ewarn "/usr/bin/python2.x." - ewarn - ebeep 5 -} - -src_test() { - # Tests won't work when cross compiling - if tc-is-cross-compiler ; then - elog "Disabling tests due to crosscompiling." - return - fi - - # Disabling byte compiling breaks test_import - python_enable_pyc - - #skip all tests that fail during emerge but pass without emerge: - #(See bug# 67970) - local skip_tests="cookielib distutils global hotshot mimetools minidom mmap posix sax strptime subprocess syntax tcl time urllib urllib2" - - for test in ${skip_tests} ; do - mv "${S}"/Lib/test/test_${test}.py "${T}" - done - - # rerun failed tests in verbose mode (regrtest -w) - EXTRATESTOPTS="-w" make test || die "make test failed" - - for test in ${skip_tests} ; do - mv "${T}"/test_${test}.py "${S}"/Lib/test/test_${test}.py - done - - elog "Portage skipped the following tests which aren't able to run from emerge:" - for test in ${skip_tests} ; do - elog "test_${test}.py" - done - - elog "If you'd like to run them, you may:" - elog "cd /usr/lib/python${PYVER}/test" - elog "and run the tests separately." -} diff --git a/dev-lang/python/python-2.4.4-r6.ebuild b/dev-lang/python/python-2.4.4-r6.ebuild deleted file mode 100644 index e0011590a3d9..000000000000 --- a/dev-lang/python/python-2.4.4-r6.ebuild +++ /dev/null @@ -1,323 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.4.4-r6.ebuild,v 1.15 2009/02/26 05:28:46 vapier Exp $ - -# NOTE about python-portage interactions : -# - Do not add a pkg_setup() check for a certain version of portage -# in dev-lang/python. It _WILL_ stop people installing from -# Gentoo 1.4 images. - -EAPI=1 - -inherit autotools eutils flag-o-matic python multilib versionator toolchain-funcs alternatives - -# we need this so that we don't depends on python.eclass -PYVER_MAJOR=$(get_major_version) -PYVER_MINOR=$(get_version_component_range 2) -PYVER="${PYVER_MAJOR}.${PYVER_MINOR}" - -MY_P="Python-${PV}" -S="${WORKDIR}/${MY_P}" -DESCRIPTION="Python is an interpreted, interactive, object-oriented programming language." -HOMEPAGE="http://www.python.org/" -SRC_URI="http://www.python.org/ftp/python/${PV}/${MY_P}.tar.bz2 - mirror://gentoo/python-gentoo-patches-${PV}-r4.tar.bz2" - -LICENSE="PSF-2.2" -SLOT="2.4" -KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd" -IUSE="ncurses gdbm ssl readline tk berkdb bootstrap ipv6 build ucs2 doc nocxx nothreads examples elibc_uclibc +xml" - -DEPEND=">=sys-libs/zlib-1.1.3 - !dev-python/cjkcodecs - !build? ( - tk? ( >=dev-lang/tk-8.0 ) - ncurses? ( >=sys-libs/ncurses-5.2 readline? ( >=sys-libs/readline-4.1 ) ) - berkdb? ( >=sys-libs/db-3.1 ) - gdbm? ( sys-libs/gdbm ) - ssl? ( dev-libs/openssl ) - doc? ( =dev-python/python-docs-${PV}* ) - xml? ( dev-libs/expat ) - )" - -# NOTE: The dev-python/python-fchksum RDEPEND is needed so that this python -# provides the functionality expected from previous pythons. - -# NOTE: python-fchksum is only a RDEPEND and not a DEPEND since we don't need -# it to compile python. We just need to ensure that when we install -# python, we definitely have fchksum support. - liquidx - -# NOTE: changed RDEPEND to PDEPEND to resolve bug 88777. - kloeri -# NOTE: added blocker to enforce correct merge order for bug 88777. - zmedico - -RDEPEND="${DEPEND} build? ( !dev-python/python-fchksum !dev-python/pycrypto )" -PDEPEND="${DEPEND} !build? ( dev-python/python-fchksum ) app-admin/python-updater" - -PROVIDE="virtual/python" - -src_unpack() { - unpack ${A} - cd "${S}" - - if tc-is-cross-compiler ; then - epatch "${FILESDIR}"/python-2.4.4-test-cross.patch - else - rm "${WORKDIR}/${PV}"/*_all_crosscompile.patch - fi - - EPATCH_SUFFIX="patch" epatch "${WORKDIR}/${PV}" - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \ - Lib/distutils/command/install.py \ - Lib/distutils/sysconfig.py \ - Lib/site.py \ - Makefile.pre.in \ - Modules/Setup.dist \ - Modules/getpath.c \ - setup.py || die - - # fix os.utime() on hppa. utimes it not supported but unfortunately - # reported as working - gmsoft (22 May 04) - # PLEASE LEAVE THIS FIX FOR NEXT VERSIONS AS IT'S A CRITICAL FIX !!! - [ "${ARCH}" = "hppa" ] && sed -e 's/utimes //' -i "${S}"/configure - - eautoreconf -} - -src_configure() { - # disable extraneous modules with extra dependencies - if use build; then - export PYTHON_DISABLE_MODULES="readline pyexpat dbm gdbm bsddb _curses _curses_panel _tkinter" - export PYTHON_DISABLE_SSL=1 - else - use gdbm \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} gdbm" - use berkdb \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} dbm bsddb" - use readline \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} readline" - use tk \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _tkinter" - use ncurses \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _curses _curses_panel" - use ssl \ - || export PYTHON_DISABLE_SSL=1 - use xml \ - || PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} pyexpat" - export PYTHON_DISABLE_MODULES - - if use !xml; then - ewarn "You have configured Python without XML support." - ewarn "This is NOT a recommended configuration as you" - ewarn "may face problems parsing any XML documents." - fi - - einfo "Disabled modules: $PYTHON_DISABLE_MODULES" - fi -} - -src_compile() { - filter-flags -malign-double - - # Seems to no longer be necessary - #[ "${ARCH}" = "amd64" ] && append-flags -fPIC - [ "${ARCH}" = "alpha" ] && append-flags -fPIC - - # http://bugs.gentoo.org/show_bug.cgi?id=50309 - if is-flag -O3; then - is-flag -fstack-protector-all && replace-flags -O3 -O2 - use hardened && replace-flags -O3 -O2 - fi - - export OPT="${CFLAGS}" - - local myconf - #if we are creating a new build image, we remove the dependency on g++ - if use build && ! use bootstrap || use nocxx ; then - myconf="--with-cxx=no" - fi - - # super-secret switch. don't use this unless you know what you're - # doing. enabling UCS2 support will break your existing python - # modules - use ucs2 \ - && myconf="${myconf} --enable-unicode=ucs2" \ - || myconf="${myconf} --enable-unicode=ucs4" - - use nothreads \ - && myconf="${myconf} --without-threads" \ - || myconf="${myconf} --with-threads" - - src_configure - - if tc-is-cross-compiler ; then - OPT="-O1" CFLAGS="" LDFLAGS="" CC="" \ - ./configure --with-cxx=no --{build,host}=${CBUILD} || die "cross-configure failed" - emake python Parser/pgen || die "cross-make failed" - mv python hostpython - mv Parser/pgen Parser/hostpgen - make distclean - sed -i \ - -e '/^HOSTPYTHON/s:=.*:=./hostpython:' \ - -e '/^HOSTPGEN/s:=.*:=./Parser/hostpgen:' \ - Makefile.pre.in || die - fi - - # export CXX so it ends up in /usr/lib/python2.x/config/Makefile - tc-export CXX - # set LINKCC to prevent python from being linked to libstdc++.so - export LINKCC="\$(PURIFY) \$(CC)" - econf \ - --with-fpectl \ - --enable-shared \ - `use_enable ipv6` \ - --infodir='${prefix}'/share/info \ - --mandir='${prefix}'/share/man \ - --with-libc='' \ - ${myconf} || die - emake || die "Parallel make failed" -} - -src_install() { - dodir /usr - src_configure - make DESTDIR="${D}" altinstall maninstall || die - - # install our own custom python-config - exeinto /usr/bin - newexe "${FILESDIR}"/python-config-${PYVER}-r1 python-config-${PYVER} - - # Use correct libdir in python-config - dosed "s:/usr/lib/:/usr/$(get_libdir)/:" /usr/bin/python-config-${PYVER} - - if use build ; then - rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,encodings,email,lib-tk,bsddb/test} - else - use elibc_uclibc && rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,bsddb/test} - use berkdb || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/bsddb - use tk || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/lib-tk - fi - - # Fix slotted collisions - mv "${D}"/usr/bin/pydoc "${D}"/usr/bin/pydoc${PYVER} - mv "${D}"/usr/bin/idle "${D}"/usr/bin/idle${PYVER} - mv "${D}"/usr/share/man/man1/python.1 \ - "${D}"/usr/share/man/man1/python${PYVER}.1 - rm -f "${D}"/usr/bin/smtpd.py - - prep_ml_includes usr/include/python${PYVER} - - # The stuff below this line extends from 2.1, and should be deprecated - # in 2.3, or possibly can wait till 2.4 - - # seems like the build do not install Makefile.pre.in anymore - # it probably shouldn't - use DistUtils, people! - insinto /usr/$(get_libdir)/python${PYVER}/config - doins "${S}"/Makefile.pre.in - - # While we're working on the config stuff... Let's fix the OPT var - # so that it doesn't have any opts listed in it. Prevents the problem - # with compiling things with conflicting opts later. - dosed -e 's:^OPT=.*:OPT=-DNDEBUG:' \ - /usr/$(get_libdir)/python${PYVER}/config/Makefile - - if use examples ; then - mkdir -p "${D}"/usr/share/doc/${P}/examples - cp -r "${S}"/Tools "${D}"/usr/share/doc/${P}/examples - fi -} - -pkg_postrm() { - local mansuffix=$(ecompress --suffix) - python_makesym - alternatives_auto_makesym "/usr/bin/idle" "idle[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/pydoc" "pydoc[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/python-config" \ - "python-config-[0-9].[0-9]" - alternatives_auto_makesym "/usr/share/man/man1/python.1${mansuffix}" \ - "python[0-9].[0-9].1${mansuffix}" - - python_mod_cleanup /usr/lib/python${PYVER} - [[ "$(get_libdir)" == "lib" ]] || \ - python_mod_cleanup /usr/$(get_libdir)/python${PYVER} -} - -pkg_postinst() { - local myroot - myroot=$(echo $ROOT | sed 's:/$::') - local mansuffix=$(ecompress --suffix) - - python_makesym - alternatives_auto_makesym "/usr/bin/idle" "idle[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/pydoc" "pydoc[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/python-config" \ - "python-config-[0-9].[0-9]" - alternatives_auto_makesym "/usr/share/man/man1/python.1${mansuffix}" \ - "python[0-9].[0-9].1${mansuffix}" - - python_mod_optimize - python_mod_optimize -x "(site-packages|test)" \ - /usr/lib/python${PYVER} - [[ "$(get_libdir)" == "lib" ]] || \ - python_mod_optimize -x "(site-packages|test)" \ - /usr/$(get_libdir)/python${PYVER} - - # workaround possible python-upgrade-breaks-portage situation - if [ ! -f ${myroot}/usr/lib/portage/pym/portage.py ]; then - if [ -f ${myroot}/usr/lib/python2.3/site-packages/portage.py ]; then - einfo "Working around possible python-portage upgrade breakage" - mkdir -p ${myroot}/usr/lib/portage/pym - cp ${myroot}/usr/lib/python2.4/site-packages/{portage,xpak,output,cvstree,getbinpkg,emergehelp,dispatch_conf}.py ${myroot}/usr/lib/portage/pym - python_mod_optimize /usr/lib/portage/pym - fi - fi - - echo - ewarn - ewarn "If you have just upgraded from an older version of python you" - ewarn "will need to run:" - ewarn - ewarn "/usr/sbin/python-updater" - ewarn - ewarn "This will automatically rebuild all the python dependent modules" - ewarn "to run with python-${PYVER}." - ewarn - ewarn "Your original Python is still installed and can be accessed via" - ewarn "/usr/bin/python2.x." - ewarn - ebeep 5 -} - -src_test() { - # Tests won't work when cross compiling - if tc-is-cross-compiler ; then - elog "Disabling tests due to crosscompiling." - return - fi - - # Disabling byte compiling breaks test_import - python_enable_pyc - - #skip all tests that fail during emerge but pass without emerge: - #(See bug# 67970) - local skip_tests="cookielib distutils global hotshot mimetools minidom mmap posix sax strptime subprocess syntax tcl time urllib urllib2" - - for test in ${skip_tests} ; do - mv "${S}"/Lib/test/test_${test}.py "${T}" - done - - # rerun failed tests in verbose mode (regrtest -w) - EXTRATESTOPTS="-w" make test || die "make test failed" - - for test in ${skip_tests} ; do - mv "${T}"/test_${test}.py "${S}"/Lib/test/test_${test}.py - done - - elog "Portage skipped the following tests which aren't able to run from emerge:" - for test in ${skip_tests} ; do - elog "test_${test}.py" - done - - elog "If you'd like to run them, you may:" - elog "cd /usr/lib/python${PYVER}/test" - elog "and run the tests separately." -} diff --git a/dev-lang/python/python-2.5.2-r7.ebuild b/dev-lang/python/python-2.5.2-r7.ebuild deleted file mode 100644 index ac52b688568b..000000000000 --- a/dev-lang/python/python-2.5.2-r7.ebuild +++ /dev/null @@ -1,333 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.5.2-r7.ebuild,v 1.15 2009/03/26 05:10:31 zmedico Exp $ - -# NOTE about python-portage interactions : -# - Do not add a pkg_setup() check for a certain version of portage -# in dev-lang/python. It _WILL_ stop people installing from -# Gentoo 1.4 images. - -EAPI=1 - -inherit eutils autotools flag-o-matic python multilib versionator toolchain-funcs alternatives libtool - -# we need this so that we don't depends on python.eclass -PYVER_MAJOR=$(get_major_version) -PYVER_MINOR=$(get_version_component_range 2) -PYVER="${PYVER_MAJOR}.${PYVER_MINOR}" - -MY_P="Python-${PV}" -S="${WORKDIR}/${MY_P}" - -DESCRIPTION="Python is an interpreted, interactive, object-oriented programming language." -HOMEPAGE="http://www.python.org/" -SRC_URI="http://www.python.org/ftp/python/${PV}/${MY_P}.tar.bz2 - mirror://gentoo/python-gentoo-patches-${PV}-r7.tar.bz2" - -LICENSE="PSF-2.2" -SLOT="2.5" -KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd" -IUSE="ncurses gdbm ssl readline tk berkdb ipv6 build ucs2 sqlite doc +threads examples elibc_uclibc wininst +xml" - -# NOTE: dev-python/{elementtree,celementtree,pysqlite,ctypes,cjkcodecs} -# do not conflict with the ones in python proper. - liquidx - -DEPEND=">=sys-libs/zlib-1.1.3 - !build? ( - sqlite? ( >=dev-db/sqlite-3 ) - tk? ( >=dev-lang/tk-8.0 ) - ncurses? ( >=sys-libs/ncurses-5.2 - readline? ( >=sys-libs/readline-4.1 ) ) - berkdb? ( || ( sys-libs/db:4.5 sys-libs/db:4.4 sys-libs/db:4.3 - sys-libs/db:4.2 ) ) - gdbm? ( sys-libs/gdbm ) - ssl? ( dev-libs/openssl ) - doc? ( dev-python/python-docs:2.5 ) - xml? ( dev-libs/expat ) - )" - -# NOTE: changed RDEPEND to PDEPEND to resolve bug 88777. - kloeri -# NOTE: added blocker to enforce correct merge order for bug 88777. - zmedico - -PDEPEND="${DEPEND} app-admin/python-updater" -PROVIDE="virtual/python" - -src_unpack() { - unpack ${A} - cd "${S}" - - if tc-is-cross-compiler ; then - epatch "${FILESDIR}"/python-2.4.4-test-cross.patch \ - "${FILESDIR}"/python-2.5-cross-printf.patch - else - rm "${WORKDIR}/${PV}"/*_all_crosscompile.patch - fi - - EPATCH_SUFFIX="patch" epatch "${WORKDIR}/${PV}" - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \ - Lib/distutils/command/install.py \ - Lib/distutils/sysconfig.py \ - Lib/site.py \ - Makefile.pre.in \ - Modules/Setup.dist \ - Modules/getpath.c \ - setup.py || die - - # fix os.utime() on hppa. utimes it not supported but unfortunately reported as working - gmsoft (22 May 04) - # PLEASE LEAVE THIS FIX FOR NEXT VERSIONS AS IT'S A CRITICAL FIX !!! - [ "${ARCH}" = "hppa" ] && sed -e 's/utimes //' -i "${S}"/configure - - if ! use wininst; then - # remove microsoft windows executables - rm Lib/distutils/command/wininst-*.exe - fi - - eautoreconf -} - -src_configure() { - # disable extraneous modules with extra dependencies - if use build; then - export PYTHON_DISABLE_MODULES="readline pyexpat dbm gdbm bsddb _curses _curses_panel _tkinter _sqlite3" - export PYTHON_DISABLE_SSL=1 - else - # dbm module can link to berkdb or gdbm - # defaults to gdbm when both are enabled, #204343 - local disable - use berkdb || use gdbm || disable="${disable} dbm" - use berkdb || disable="${disable} bsddb" - use gdbm || disable="${disable} gdbm" - use ncurses || disable="${disable} _curses _curses_panel" - use readline || disable="${disable} readline" - use sqlite || disable="${disable} _sqlite3" - use ssl || export PYTHON_DISABLE_SSL=1 - use tk || disable="${disable} _tkinter" - use xml || disable="${disable} pyexpat" - export PYTHON_DISABLE_MODULES="${disable}" - fi - - if use !xml; then - ewarn "You have configured Python without XML support." - ewarn "This is NOT a recommended configuration as you" - ewarn "may face problems parsing any XML documents." - fi - - einfo "Disabled modules: $PYTHON_DISABLE_MODULES" -} - -src_compile() { - filter-flags -malign-double - - # Seems to no longer be necessary - #[ "${ARCH}" = "amd64" ] && append-flags -fPIC - [ "${ARCH}" = "alpha" ] && append-flags -fPIC - - # http://bugs.gentoo.org/show_bug.cgi?id=50309 - if is-flag -O3; then - is-flag -fstack-protector-all && replace-flags -O3 -O2 - use hardened && replace-flags -O3 -O2 - fi - - # See #228905 - if [[ $(gcc-major-version) -ge 4 ]]; then - append-flags -fwrapv - fi - - export OPT="${CFLAGS}" - - local myconf - - # super-secret switch. don't use this unless you know what you're - # doing. enabling UCS2 support will break your existing python - # modules - use ucs2 \ - && myconf="${myconf} --enable-unicode=ucs2" \ - || myconf="${myconf} --enable-unicode=ucs4" - - use threads \ - && myconf="${myconf} --with-threads" \ - || myconf="${myconf} --without-threads" - - src_configure - - if tc-is-cross-compiler ; then - OPT="-O1" CFLAGS="" LDFLAGS="" CC="" \ - ./configure --{build,host}=${CBUILD} || die "cross-configure failed" - emake python Parser/pgen || die "cross-make failed" - mv python hostpython - mv Parser/pgen Parser/hostpgen - make distclean - sed -i \ - -e '/^HOSTPYTHON/s:=.*:=./hostpython:' \ - -e '/^HOSTPGEN/s:=.*:=./Parser/hostpgen:' \ - Makefile.pre.in || die - fi - - # export CXX so it ends up in /usr/lib/python2.x/config/Makefile - tc-export CXX - - # set LDFLAGS so we link modules with -lpython2.5 correctly. - # Needed on FreeBSD unless python2.5 is already installed. - # Please query BSD team before removing this! - append-ldflags "-L." - - econf \ - --with-fpectl \ - --enable-shared \ - `use_enable ipv6` \ - --infodir='${prefix}'/share/info \ - --mandir='${prefix}'/share/man \ - --with-libc='' \ - ${myconf} || die - emake || die "Parallel make failed" -} - -src_install() { - dodir /usr - src_configure - make DESTDIR="${D}" altinstall maninstall || die - - mv "${D}"/usr/bin/python${PYVER}-config "${D}"/usr/bin/python-config-${PYVER} - - # Fix slotted collisions - mv "${D}"/usr/bin/pydoc "${D}"/usr/bin/pydoc${PYVER} - mv "${D}"/usr/bin/idle "${D}"/usr/bin/idle${PYVER} - mv "${D}"/usr/share/man/man1/python.1 \ - "${D}"/usr/share/man/man1/python${PYVER}.1 - rm -f "${D}"/usr/bin/smtpd.py - - # While we're working on the config stuff... Let's fix the OPT var - # so that it doesn't have any opts listed in it. Prevents the problem - # with compiling things with conflicting opts later. - dosed -e 's:^OPT=.*:OPT=-DNDEBUG:' \ - /usr/$(get_libdir)/python${PYVER}/config/Makefile - - if use build ; then - rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,encodings,email,lib-tk,bsddb/test} - else - use elibc_uclibc && rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,bsddb/test} - use berkdb || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/bsddb - use tk || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/lib-tk - fi - - prep_ml_includes usr/include/python${PYVER} - - # The stuff below this line extends from 2.1, and should be deprecated - # in 2.3, or possibly can wait till 2.4 - - # seems like the build do not install Makefile.pre.in anymore - # it probably shouldn't - use DistUtils, people! - insinto /usr/$(get_libdir)/python${PYVER}/config - doins "${S}"/Makefile.pre.in - - if use examples ; then - mkdir -p "${D}"/usr/share/doc/${P}/examples - cp -r "${S}"/Tools "${D}"/usr/share/doc/${P}/examples - fi - - newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT} - newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT} -} - -pkg_postrm() { - local mansuffix=$(ecompress --suffix) - python_makesym - alternatives_auto_makesym "/usr/bin/idle" "idle[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/pydoc" "pydoc[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/python-config" \ - "python-config-[0-9].[0-9]" - - alternatives_auto_makesym "/usr/share/man/man1/python.1${mansuffix}" \ - "python[0-9].[0-9].1${mansuffix}" - - python_mod_cleanup /usr/lib/python${PYVER} - [[ "$(get_libdir)" == "lib" ]] || \ - python_mod_cleanup /usr/$(get_libdir)/python${PYVER} -} - -pkg_postinst() { - local myroot - myroot=$(echo $ROOT | sed 's:/$::') - local mansuffix=$(ecompress --suffix) - - python_makesym - alternatives_auto_makesym "/usr/bin/idle" "idle[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/pydoc" "pydoc[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/python-config" \ - "python-config-[0-9].[0-9]" - - alternatives_auto_makesym "/usr/share/man/man1/python.1${mansuffix}" \ - "python[0-9].[0-9].1${mansuffix}" - - python_mod_optimize - python_mod_optimize -x "(site-packages|test)" \ - /usr/lib/python${PYVER} - [[ "$(get_libdir)" == "lib" ]] || \ - python_mod_optimize -x "(site-packages|test)" \ - /usr/$(get_libdir)/python${PYVER} - - # workaround possible python-upgrade-breaks-portage situation - if [ ! -f ${myroot}/usr/lib/portage/pym/portage.py ]; then - if [ -f ${myroot}/usr/lib/python2.3/site-packages/portage.py ]; then - einfo "Working around possible python-portage upgrade breakage" - mkdir -p ${myroot}/usr/lib/portage/pym - cp ${myroot}/usr/lib/python2.4/site-packages/{portage,xpak,output,cvstree,getbinpkg,emergehelp,dispatch_conf}.py ${myroot}/usr/lib/portage/pym - python_mod_optimize /usr/lib/portage/pym - fi - fi - - echo - ewarn - ewarn "If you have just upgraded from an older version of python you will" - ewarn "need to run:" - ewarn - ewarn "/usr/sbin/python-updater" - ewarn - ewarn "This will automatically rebuild all the python dependent modules" - ewarn "to run with python-${PYVER}." - ewarn - ewarn "Your original Python is still installed and can be accessed via" - ewarn "/usr/bin/python2.x." - ewarn - ebeep 5 -} - -src_test() { - # Tests won't work when cross compiling - if tc-is-cross-compiler ; then - elog "Disabling tests due to crosscompiling." - return - fi - - # Disabling byte compiling breaks test_import - python_enable_pyc - - #skip all tests that fail during emerge but pass without emerge: - #(See bug# 67970) - local skip_tests="distutils global mimetools minidom mmap posix pyexpat sax strptime subprocess syntax tcl time urllib urllib2 webbrowser xml_etree" - - # test_pow fails on alpha. - # http://bugs.python.org/issue756093 - [[ ${ARCH} == "alpha" ]] && skip_tests="${skip_tests} pow" - - for test in ${skip_tests} ; do - mv "${S}"/Lib/test/test_${test}.py "${T}" - done - - # Redirect stdin from /dev/tty as a workaround for bug #248081. - # rerun failed tests in verbose mode (regrtest -w) - EXTRATESTOPTS="-w" make test < /dev/tty || die "make test failed" - - for test in ${skip_tests} ; do - mv "${T}"/test_${test}.py "${S}"/Lib/test/test_${test}.py - done - - elog "Portage skipped the following tests which aren't able to run from emerge:" - for test in ${skip_tests} ; do - elog "test_${test}.py" - done - - elog "If you'd like to run them, you may:" - elog "cd /usr/lib/python${PYVER}/test" - elog "and run the tests separately." -} diff --git a/dev-lang/python/python-2.5.2-r8.ebuild b/dev-lang/python/python-2.5.2-r8.ebuild deleted file mode 100644 index 1d28cfc386fb..000000000000 --- a/dev-lang/python/python-2.5.2-r8.ebuild +++ /dev/null @@ -1,337 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.5.2-r8.ebuild,v 1.10 2009/03/26 05:10:31 zmedico Exp $ - -# NOTE about python-portage interactions : -# - Do not add a pkg_setup() check for a certain version of portage -# in dev-lang/python. It _WILL_ stop people installing from -# Gentoo 1.4 images. - -EAPI=1 - -inherit eutils autotools flag-o-matic python multilib versionator toolchain-funcs alternatives libtool - -# we need this so that we don't depends on python.eclass -PYVER_MAJOR=$(get_major_version) -PYVER_MINOR=$(get_version_component_range 2) -PYVER="${PYVER_MAJOR}.${PYVER_MINOR}" - -MY_P="Python-${PV}" -S="${WORKDIR}/${MY_P}" - -DESCRIPTION="Python is an interpreted, interactive, object-oriented programming language." -HOMEPAGE="http://www.python.org/" -SRC_URI="http://www.python.org/ftp/python/${PV}/${MY_P}.tar.bz2 - mirror://gentoo/python-gentoo-patches-${PV}-r8.tar.bz2" - -LICENSE="PSF-2.2" -SLOT="2.5" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd" -IUSE="+xml ncurses gdbm ssl readline tk berkdb ipv6 build ucs2 sqlite doc +threads examples elibc_uclibc wininst" - -# NOTE: dev-python/{elementtree,celementtree,pysqlite,ctypes,cjkcodecs} -# do not conflict with the ones in python proper. - liquidx - -DEPEND=">=sys-libs/zlib-1.1.3 - !build? ( - sqlite? ( >=dev-db/sqlite-3 ) - tk? ( >=dev-lang/tk-8.0 ) - ncurses? ( >=sys-libs/ncurses-5.2 - readline? ( >=sys-libs/readline-4.1 ) ) - berkdb? ( || ( sys-libs/db:4.5 sys-libs/db:4.4 sys-libs/db:4.3 - sys-libs/db:4.2 ) ) - gdbm? ( sys-libs/gdbm ) - ssl? ( dev-libs/openssl ) - doc? ( dev-python/python-docs:2.5 ) - xml? ( dev-libs/expat ) - )" - -# NOTE: changed RDEPEND to PDEPEND to resolve bug 88777. - kloeri -# NOTE: added blocker to enforce correct merge order for bug 88777. - zmedico - -PDEPEND="${DEPEND} app-admin/python-updater" -PROVIDE="virtual/python" - -src_unpack() { - unpack ${A} - cd "${S}" - - if tc-is-cross-compiler ; then - epatch "${FILESDIR}"/python-2.4.4-test-cross.patch \ - "${FILESDIR}"/python-2.5-cross-printf.patch - else - rm "${WORKDIR}/${PV}"/*_all_crosscompile.patch - fi - - #Fixes some of the tr_TR locale issues. Bug #250075. Thanks Serkan for pointing it - #out - epatch "${FILESDIR}/${P}_turkish.patch" - - EPATCH_SUFFIX="patch" epatch "${WORKDIR}/${PV}" - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \ - Lib/distutils/command/install.py \ - Lib/distutils/sysconfig.py \ - Lib/site.py \ - Makefile.pre.in \ - Modules/Setup.dist \ - Modules/getpath.c \ - setup.py || die - - # fix os.utime() on hppa. utimes it not supported but unfortunately reported as working - gmsoft (22 May 04) - # PLEASE LEAVE THIS FIX FOR NEXT VERSIONS AS IT'S A CRITICAL FIX !!! - [ "${ARCH}" = "hppa" ] && sed -e 's/utimes //' -i "${S}"/configure - - if ! use wininst; then - # remove microsoft windows executables - rm Lib/distutils/command/wininst-*.exe - fi - - eautoreconf -} - -src_configure() { - # disable extraneous modules with extra dependencies - if use build; then - export PYTHON_DISABLE_MODULES="readline pyexpat dbm gdbm bsddb _curses _curses_panel _tkinter _sqlite3" - export PYTHON_DISABLE_SSL=1 - else - # dbm module can link to berkdb or gdbm - # defaults to gdbm when both are enabled, #204343 - local disable - use berkdb || use gdbm || disable="${disable} dbm" - use berkdb || disable="${disable} bsddb" - use xml || disable="${disable} pyexpat" - use gdbm || disable="${disable} gdbm" - use ncurses || disable="${disable} _curses _curses_panel" - use readline || disable="${disable} readline" - use sqlite || disable="${disable} _sqlite3" - use ssl || export PYTHON_DISABLE_SSL=1 - use tk || disable="${disable} _tkinter" - export PYTHON_DISABLE_MODULES="${disable}" - fi - - if use !xml; then - ewarn "You have configured Python without XML support." - ewarn "This is NOT a recommended configuration as you" - ewarn "may face problems parsing any XML documents." - fi - - einfo "Disabled modules: $PYTHON_DISABLE_MODULES" -} - -src_compile() { - filter-flags -malign-double - - # Seems to no longer be necessary - #[ "${ARCH}" = "amd64" ] && append-flags -fPIC - [ "${ARCH}" = "alpha" ] && append-flags -fPIC - - # http://bugs.gentoo.org/show_bug.cgi?id=50309 - if is-flag -O3; then - is-flag -fstack-protector-all && replace-flags -O3 -O2 - use hardened && replace-flags -O3 -O2 - fi - - # See #228905 - if [[ $(gcc-major-version) -ge 4 ]]; then - append-flags -fwrapv - fi - - export OPT="${CFLAGS}" - - local myconf - - # super-secret switch. don't use this unless you know what you're - # doing. enabling UCS2 support will break your existing python - # modules - use ucs2 \ - && myconf="${myconf} --enable-unicode=ucs2" \ - || myconf="${myconf} --enable-unicode=ucs4" - - use threads \ - && myconf="${myconf} --with-threads" \ - || myconf="${myconf} --without-threads" - - src_configure - - if tc-is-cross-compiler ; then - OPT="-O1" CFLAGS="" LDFLAGS="" CC="" \ - ./configure --{build,host}=${CBUILD} || die "cross-configure failed" - emake python Parser/pgen || die "cross-make failed" - mv python hostpython - mv Parser/pgen Parser/hostpgen - make distclean - sed -i \ - -e '/^HOSTPYTHON/s:=.*:=./hostpython:' \ - -e '/^HOSTPGEN/s:=.*:=./Parser/hostpgen:' \ - Makefile.pre.in || die - fi - - # export CXX so it ends up in /usr/lib/python2.x/config/Makefile - tc-export CXX - - # set LDFLAGS so we link modules with -lpython2.5 correctly. - # Needed on FreeBSD unless python2.5 is already installed. - # Please query BSD team before removing this! - append-ldflags "-L." - - econf \ - --with-fpectl \ - --enable-shared \ - `use_enable ipv6` \ - --infodir='${prefix}'/share/info \ - --mandir='${prefix}'/share/man \ - --with-libc='' \ - ${myconf} || die - emake || die "Parallel make failed" -} - -src_install() { - dodir /usr - src_configure - make DESTDIR="${D}" altinstall maninstall || die - - mv "${D}"/usr/bin/python${PYVER}-config "${D}"/usr/bin/python-config-${PYVER} - - # Fix slotted collisions - mv "${D}"/usr/bin/pydoc "${D}"/usr/bin/pydoc${PYVER} - mv "${D}"/usr/bin/idle "${D}"/usr/bin/idle${PYVER} - mv "${D}"/usr/share/man/man1/python.1 \ - "${D}"/usr/share/man/man1/python${PYVER}.1 - rm -f "${D}"/usr/bin/smtpd.py - - # While we're working on the config stuff... Let's fix the OPT var - # so that it doesn't have any opts listed in it. Prevents the problem - # with compiling things with conflicting opts later. - dosed -e 's:^OPT=.*:OPT=-DNDEBUG:' \ - /usr/$(get_libdir)/python${PYVER}/config/Makefile - - if use build ; then - rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,encodings,email,lib-tk,bsddb/test} - else - use elibc_uclibc && rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,bsddb/test} - use berkdb || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/bsddb - use tk || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/lib-tk - fi - - prep_ml_includes usr/include/python${PYVER} - - # The stuff below this line extends from 2.1, and should be deprecated - # in 2.3, or possibly can wait till 2.4 - - # seems like the build do not install Makefile.pre.in anymore - # it probably shouldn't - use DistUtils, people! - insinto /usr/$(get_libdir)/python${PYVER}/config - doins "${S}"/Makefile.pre.in - - if use examples ; then - insinto /usr/share/doc/${PF}/examples - doins -r "${S}"/Tools || die "doins failed" - fi - - newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT} - newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT} -} - -pkg_postrm() { - local mansuffix=$(ecompress --suffix) - python_makesym - alternatives_auto_makesym "/usr/bin/idle" "idle[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/pydoc" "pydoc[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/python-config" \ - "python-config-[0-9].[0-9]" - - alternatives_auto_makesym "/usr/share/man/man1/python.1${mansuffix}" \ - "python[0-9].[0-9].1${mansuffix}" - - python_mod_cleanup /usr/lib/python${PYVER} - [[ "$(get_libdir)" == "lib" ]] || \ - python_mod_cleanup /usr/$(get_libdir)/python${PYVER} -} - -pkg_postinst() { - local myroot - myroot=$(echo $ROOT | sed 's:/$::') - local mansuffix=$(ecompress --suffix) - - python_makesym - alternatives_auto_makesym "/usr/bin/idle" "idle[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/pydoc" "pydoc[0-9].[0-9]" - alternatives_auto_makesym "/usr/bin/python-config" \ - "python-config-[0-9].[0-9]" - - alternatives_auto_makesym "/usr/share/man/man1/python.1${mansuffix}" \ - "python[0-9].[0-9].1${mansuffix}" - - python_mod_optimize - python_mod_optimize -x "(site-packages|test)" \ - /usr/lib/python${PYVER} - [[ "$(get_libdir)" == "lib" ]] || \ - python_mod_optimize -x "(site-packages|test)" \ - /usr/$(get_libdir)/python${PYVER} - - # workaround possible python-upgrade-breaks-portage situation - if [ ! -f ${myroot}/usr/lib/portage/pym/portage.py ]; then - if [ -f ${myroot}/usr/lib/python2.3/site-packages/portage.py ]; then - einfo "Working around possible python-portage upgrade breakage" - mkdir -p ${myroot}/usr/lib/portage/pym - cp ${myroot}/usr/lib/python2.4/site-packages/{portage,xpak,output,cvstree,getbinpkg,emergehelp,dispatch_conf}.py ${myroot}/usr/lib/portage/pym - python_mod_optimize /usr/lib/portage/pym - fi - fi - - echo - ewarn - ewarn "If you have just upgraded from an older version of python you will" - ewarn "need to run:" - ewarn - ewarn "/usr/sbin/python-updater" - ewarn - ewarn "This will automatically rebuild all the python dependent modules" - ewarn "to run with python-${PYVER}." - ewarn - ewarn "Your original Python is still installed and can be accessed via" - ewarn "/usr/bin/python2.x." - ewarn - ebeep 5 -} - -src_test() { - # Tests won't work when cross compiling - if tc-is-cross-compiler ; then - elog "Disabling tests due to crosscompiling." - return - fi - - # Disabling byte compiling breaks test_import - python_enable_pyc - - #skip all tests that fail during emerge but pass without emerge: - #(See bug# 67970) - local skip_tests="distutils global mimetools minidom mmap posix pyexpat sax strptime subprocess syntax tcl time urllib urllib2 webbrowser xml_etree" - - # test_pow fails on alpha. - # http://bugs.python.org/issue756093 - [[ ${ARCH} == "alpha" ]] && skip_tests="${skip_tests} pow" - - for test in ${skip_tests} ; do - mv "${S}"/Lib/test/test_${test}.py "${T}" - done - - # Redirect stdin from /dev/tty as a workaround for bug #248081. - # rerun failed tests in verbose mode (regrtest -w) - EXTRATESTOPTS="-w" make test < /dev/tty || die "make test failed" - - for test in ${skip_tests} ; do - mv "${T}"/test_${test}.py "${S}"/Lib/test/test_${test}.py - done - - elog "Portage skipped the following tests which aren't able to run from emerge:" - for test in ${skip_tests} ; do - elog "test_${test}.py" - done - - elog "If you'd like to run them, you may:" - elog "cd /usr/lib/python${PYVER}/test" - elog "and run the tests separately." -} diff --git a/dev-lang/python/python-2.6-r5.ebuild b/dev-lang/python/python-2.6-r5.ebuild deleted file mode 100644 index 0dd0863f273f..000000000000 --- a/dev-lang/python/python-2.6-r5.ebuild +++ /dev/null @@ -1,273 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.6-r5.ebuild,v 1.9 2009/05/24 03:25:04 arfrever Exp $ - -# NOTE about python-portage interactions : -# - Do not add a pkg_setup() check for a certain version of portage -# in dev-lang/python. It _WILL_ stop people installing from -# Gentoo 1.4 images. - -EAPI=2 - -inherit eutils autotools flag-o-matic python multilib versionator toolchain-funcs libtool - -# we need this so that we don't depends on python.eclass -PYVER_MAJOR=$(get_major_version) -PYVER_MINOR=$(get_version_component_range 2) -PYVER="${PYVER_MAJOR}.${PYVER_MINOR}" - -MY_P="Python-${PV}" -S="${WORKDIR}/${MY_P}" - -DESCRIPTION="Python is an interpreted, interactive, object-oriented programming language." -HOMEPAGE="http://www.python.org/" -SRC_URI="http://www.python.org/ftp/python/2.6/${MY_P}.tar.bz2 - mirror://gentoo/python-gentoo-patches-${PV}-r2.tar.bz2" - -LICENSE="PSF-2.2" -SLOT="2.6" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd" -IUSE="+xml ncurses gdbm ssl readline tk berkdb ipv6 build ucs2 sqlite doc +threads examples elibc_uclibc wininst" - -# NOTE: dev-python/{elementtree,celementtree,pysqlite,ctypes,cjkcodecs} -# do not conflict with the ones in python proper. - liquidx - -DEPEND=">=app-admin/eselect-python-20080925 - >=sys-libs/zlib-1.1.3 - !build? ( - sqlite? ( >=dev-db/sqlite-3 ) - tk? ( >=dev-lang/tk-8.0 ) - ncurses? ( >=sys-libs/ncurses-5.2 - readline? ( >=sys-libs/readline-4.1 ) ) - berkdb? ( >=sys-libs/db-3.1 ) - gdbm? ( sys-libs/gdbm ) - ssl? ( dev-libs/openssl ) - doc? ( dev-python/python-docs:2.6 ) - xml? ( dev-libs/expat ) - )" - -# NOTE: changed RDEPEND to PDEPEND to resolve bug 88777. - kloeri -# NOTE: added blocker to enforce correct merge order for bug 88777. - zmedico - -PDEPEND="${DEPEND} app-admin/python-updater" -PROVIDE="virtual/python" - -src_prepare() { - default - - if tc-is-cross-compiler ; then - epatch "${FILESDIR}"/python-2.6-test-cross.patch - else - rm "${WORKDIR}/${PV}"/*_all_crosscompile.patch - fi - - EPATCH_SUFFIX="patch" epatch "${WORKDIR}/${PV}" - - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \ - Lib/distutils/command/install.py \ - Lib/distutils/sysconfig.py \ - Lib/site.py \ - Makefile.pre.in \ - Modules/Setup.dist \ - Modules/getpath.c \ - setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@" - - # fix os.utime() on hppa. utimes it not supported but unfortunately reported as working - gmsoft (22 May 04) - # PLEASE LEAVE THIS FIX FOR NEXT VERSIONS AS IT'S A CRITICAL FIX !!! - [ "${ARCH}" = "hppa" ] && sed -e 's/utimes //' -i "${S}"/configure - - if ! use wininst; then - # remove microsoft windows executables - rm Lib/distutils/command/wininst-*.exe - fi - - eautoreconf -} - -src_configure() { - # disable extraneous modules with extra dependencies - if use build; then - export PYTHON_DISABLE_MODULES="readline pyexpat dbm gdbm bsddb _curses _curses_panel _tkinter _sqlite3" - export PYTHON_DISABLE_SSL=1 - else - # dbm module can link to berkdb or gdbm - # defaults to gdbm when both are enabled, #204343 - local disable - use berkdb || use gdbm || disable="${disable} dbm" - use berkdb || disable="${disable} bsddb" - use xml || disable="${disable} pyexpat" - use gdbm || disable="${disable} gdbm" - use ncurses || disable="${disable} _curses _curses_panel" - use readline || disable="${disable} readline" - use sqlite || disable="${disable} sqlite3" - use ssl || export PYTHON_DISABLE_SSL=1 - use tk || disable="${disable} _tkinter" - export PYTHON_DISABLE_MODULES="${disable}" - fi - - if use !xml; then - ewarn "You have configured Python without XML support." - ewarn "This is NOT a recommended configuration as you" - ewarn "may face problems parsing any XML documents." - fi - - einfo "Disabled modules: $PYTHON_DISABLE_MODULES" - - export OPT="${CFLAGS}" - - local myconf - - # super-secret switch. don't use this unless you know what you're - # doing. enabling UCS2 support will break your existing python - # modules - use ucs2 \ - && myconf="${myconf} --enable-unicode=ucs2" \ - || myconf="${myconf} --enable-unicode=ucs4" - - filter-flags -malign-double - - # Seems to no longer be necessary - #[ "${ARCH}" = "amd64" ] && append-flags -fPIC - [ "${ARCH}" = "alpha" ] && append-flags -fPIC - - # http://bugs.gentoo.org/show_bug.cgi?id=50309 - if is-flag -O3; then - is-flag -fstack-protector-all && replace-flags -O3 -O2 - use hardened && replace-flags -O3 -O2 - fi - - if tc-is-cross-compiler ; then - OPT="-O1" CFLAGS="" LDFLAGS="" CC="" \ - ./configure --{build,host}=${CBUILD} || die "cross-configure failed" - emake python Parser/pgen || die "cross-make failed" - mv python hostpython - mv Parser/pgen Parser/hostpgen - make distclean - sed -i \ - -e '/^HOSTPYTHON/s:=.*:=./hostpython:' \ - -e '/^HOSTPGEN/s:=.*:=./Parser/hostpgen:' \ - Makefile.pre.in || die "sed failed" - fi - - # export CXX so it ends up in /usr/lib/python2.x/config/Makefile - tc-export CXX - - # set LDFLAGS so we link modules with -lpython2.5 correctly. - # Needed on FreeBSD unless python2.5 is already installed. - # Please query BSD team before removing this! - append-ldflags "-L." - - econf \ - --with-fpectl \ - --enable-shared \ - $(use_enable ipv6) \ - $(use_with threads) \ - --infodir='${prefix}'/share/info \ - --mandir='${prefix}'/share/man \ - --with-libc='' \ - ${myconf} -} - -src_install() { - dodir /usr - emake DESTDIR="${D}" altinstall maninstall || die - - mv "${D}"/usr/bin/python${PYVER}-config "${D}"/usr/bin/python-config-${PYVER} - - # Fix slotted collisions - mv "${D}"/usr/bin/2to3 "${D}"/usr/bin/2to3-${PYVER} - mv "${D}"/usr/bin/pydoc "${D}"/usr/bin/pydoc${PYVER} - mv "${D}"/usr/bin/idle "${D}"/usr/bin/idle${PYVER} - mv "${D}"/usr/share/man/man1/python.1 \ - "${D}"/usr/share/man/man1/python${PYVER}.1 - rm -f "${D}"/usr/bin/smtpd.py - - # While we're working on the config stuff... Let's fix the OPT var - # so that it doesn't have any opts listed in it. Prevents the problem - # with compiling things with conflicting opts later. - dosed -e 's:^OPT=.*:OPT=-DNDEBUG:' \ - /usr/$(get_libdir)/python${PYVER}/config/Makefile - - if use build ; then - rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,encodings,email,lib-tk,bsddb/test} - else - use elibc_uclibc && rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,bsddb/test} - use berkdb || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/bsddb - use tk || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/lib-tk - fi - - prep_ml_includes usr/include/python${PYVER} - - # The stuff below this line extends from 2.1, and should be deprecated - # in 2.3, or possibly can wait till 2.4 - - # seems like the build do not install Makefile.pre.in anymore - # it probably shouldn't - use DistUtils, people! - insinto /usr/$(get_libdir)/python${PYVER}/config - doins "${S}"/Makefile.pre.in - - if use examples ; then - insinto /usr/share/doc/${PF}/examples - doins -r "${S}"/Tools || die "doins failed" - fi - - newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT} - newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT} - - # Installs empty directory. - rmdir "${D}"/usr/$(get_libdir)/${PN}${PV}/lib-old -} - -pkg_postrm() { - eselect python update --ignore 3.0 - python_mod_cleanup /usr/$(get_libdir)/python${PYVER} -} - -pkg_postinst() { - eselect python update --ignore 3.0 - python_version - - python_mod_optimize -x "(site-packages|test)" \ - /usr/$(get_libdir)/python${PYVER} -} - -src_test() { - # Tests won't work when cross compiling - if tc-is-cross-compiler ; then - elog "Disabling tests due to crosscompiling." - return - fi - - # Byte compiling should be enabled here. - # Otherwise test_import fails. - python_enable_pyc - - #skip all tests that fail during emerge but pass without emerge: - #(See bug# 67970) - local skip_tests="distutils global httpservers mimetools minidom mmap posix pyexpat sax strptime subprocess syntax tcl time urllib urllib2 webbrowser xml_etree" - - # test_pow fails on alpha. - # http://bugs.python.org/issue756093 - [[ ${ARCH} == "alpha" ]] && skip_tests="${skip_tests} pow" - - for test in ${skip_tests} ; do - mv "${S}"/Lib/test/test_${test}.py "${T}" - done - - # Redirect stdin from /dev/tty as a workaround for bug #248081. - # rerun failed tests in verbose mode (regrtest -w) - EXTRATESTOPTS="-w" make test < /dev/tty || die "make test failed" - - for test in ${skip_tests} ; do - mv "${T}"/test_${test}.py "${S}"/Lib/test/test_${test}.py - done - - elog "Portage skipped the following tests which aren't able to run from emerge:" - for test in ${skip_tests} ; do - elog "test_${test}.py" - done - - elog "If you'd like to run them, you may:" - elog "cd /usr/lib/python${PYVER}/test" - elog "and run the tests separately." -} diff --git a/dev-lang/python/python-2.6.1-r1.ebuild b/dev-lang/python/python-2.6.1-r1.ebuild deleted file mode 100644 index a4d13908f70d..000000000000 --- a/dev-lang/python/python-2.6.1-r1.ebuild +++ /dev/null @@ -1,278 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.6.1-r1.ebuild,v 1.5 2009/05/24 03:25:04 arfrever Exp $ - -# NOTE about python-portage interactions : -# - Do not add a pkg_setup() check for a certain version of portage -# in dev-lang/python. It _WILL_ stop people installing from -# Gentoo 1.4 images. - -EAPI=2 - -inherit eutils autotools flag-o-matic python versionator toolchain-funcs libtool - -# we need this so that we don't depends on python.eclass -PYVER_MAJOR=$(get_major_version) -PYVER_MINOR=$(get_version_component_range 2) -PYVER="${PYVER_MAJOR}.${PYVER_MINOR}" - -MY_P="Python-${PV}" -S="${WORKDIR}/${MY_P}" - -DESCRIPTION="Python is an interpreted, interactive, object-oriented programming language." -HOMEPAGE="http://www.python.org/" -SRC_URI="http://www.python.org/ftp/python/2.6.1/${MY_P}.tar.bz2 - mirror://gentoo/python-gentoo-patches-2.6-r2.tar.bz2" - -LICENSE="PSF-2.2" -SLOT="2.6" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd" -IUSE="berkdb build doc elibc_uclibc examples gdbm ipv6 ncurses readline sqlite ssl +threads tk ucs2 wininst +xml" - -# NOTE: dev-python/{elementtree,celementtree,pysqlite,ctypes,cjkcodecs} -# do not conflict with the ones in python proper. - liquidx - -DEPEND=">=app-admin/eselect-python-20080925 - >=sys-libs/zlib-1.1.3 - !build? ( - sqlite? ( >=dev-db/sqlite-3 ) - tk? ( >=dev-lang/tk-8.0 ) - ncurses? ( >=sys-libs/ncurses-5.2 - readline? ( >=sys-libs/readline-4.1 ) ) - berkdb? ( >=sys-libs/db-3.1 ) - gdbm? ( sys-libs/gdbm ) - ssl? ( dev-libs/openssl ) - doc? ( dev-python/python-docs:2.6 ) - xml? ( dev-libs/expat ) - )" - -# NOTE: changed RDEPEND to PDEPEND to resolve bug 88777. - kloeri -# NOTE: added blocker to enforce correct merge order for bug 88777. - zmedico - -PDEPEND="${DEPEND} app-admin/python-updater" -PROVIDE="virtual/python" - -src_prepare() { - default - - if tc-is-cross-compiler ; then - epatch "${FILESDIR}"/python-2.5-cross-printf.patch - epatch "${FILESDIR}"/python-2.6-chflags-cross.patch - epatch "${FILESDIR}"/python-2.6-test-cross.patch - epatch "${FILESDIR}"/python-2.6-cross-patch-tweak.patch - else - rm "${WORKDIR}/${PYVER}"/*_all_crosscompile.patch - fi - - EPATCH_SUFFIX="patch" epatch "${WORKDIR}/${PYVER}" - - epatch "${FILESDIR}/${PN}-${PYVER}_turkish.patch" - - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \ - Lib/distutils/command/install.py \ - Lib/distutils/sysconfig.py \ - Lib/site.py \ - Makefile.pre.in \ - Modules/Setup.dist \ - Modules/getpath.c \ - setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@" - - # fix os.utime() on hppa. utimes it not supported but unfortunately reported as working - gmsoft (22 May 04) - # PLEASE LEAVE THIS FIX FOR NEXT VERSIONS AS IT'S A CRITICAL FIX !!! - [ "${ARCH}" = "hppa" ] && sed -e 's/utimes //' -i "${S}"/configure - - if ! use wininst; then - # remove microsoft windows executables - rm Lib/distutils/command/wininst-*.exe - fi - - eautoreconf -} - -src_configure() { - # disable extraneous modules with extra dependencies - if use build; then - export PYTHON_DISABLE_MODULES="readline pyexpat dbm gdbm bsddb _curses _curses_panel _tkinter _sqlite3" - export PYTHON_DISABLE_SSL=1 - else - # dbm module can link to berkdb or gdbm - # defaults to gdbm when both are enabled, #204343 - local disable - use berkdb || use gdbm || disable="${disable} dbm" - use berkdb || disable="${disable} bsddb" - use xml || disable="${disable} pyexpat" - use gdbm || disable="${disable} gdbm" - use ncurses || disable="${disable} _curses _curses_panel" - use readline || disable="${disable} readline" - use sqlite || disable="${disable} _sqlite3" - use ssl || export PYTHON_DISABLE_SSL=1 - use tk || disable="${disable} _tkinter" - export PYTHON_DISABLE_MODULES="${disable}" - fi - - if use !xml; then - ewarn "You have configured Python without XML support." - ewarn "This is NOT a recommended configuration as you" - ewarn "may face problems parsing any XML documents." - fi - - einfo "Disabled modules: $PYTHON_DISABLE_MODULES" - - export OPT="${CFLAGS}" - - local myconf - - # super-secret switch. don't use this unless you know what you're - # doing. enabling UCS2 support will break your existing python - # modules - use ucs2 \ - && myconf="${myconf} --enable-unicode=ucs2" \ - || myconf="${myconf} --enable-unicode=ucs4" - - filter-flags -malign-double - - # Seems to no longer be necessary - #[ "${ARCH}" = "amd64" ] && append-flags -fPIC - [ "${ARCH}" = "alpha" ] && append-flags -fPIC - - # http://bugs.gentoo.org/show_bug.cgi?id=50309 - if is-flag -O3; then - is-flag -fstack-protector-all && replace-flags -O3 -O2 - use hardened && replace-flags -O3 -O2 - fi - - if tc-is-cross-compiler ; then - OPT="-O1" CFLAGS="" LDFLAGS="" CC="" \ - ./configure --{build,host}=${CBUILD} || die "cross-configure failed" - emake python Parser/pgen || die "cross-make failed" - mv python hostpython - mv Parser/pgen Parser/hostpgen - make distclean - sed -i \ - -e '/^HOSTPYTHON/s:=.*:=./hostpython:' \ - -e '/^HOSTPGEN/s:=.*:=./Parser/hostpgen:' \ - Makefile.pre.in || die "sed failed" - fi - - # export CXX so it ends up in /usr/lib/python2.x/config/Makefile - tc-export CXX - - # set LDFLAGS so we link modules with -lpython2.5 correctly. - # Needed on FreeBSD unless python2.5 is already installed. - # Please query BSD team before removing this! - append-ldflags "-L." - - econf \ - --with-fpectl \ - --enable-shared \ - $(use_enable ipv6) \ - $(use_with threads) \ - --infodir='${prefix}'/share/info \ - --mandir='${prefix}'/share/man \ - --with-libc='' \ - ${myconf} -} - -src_install() { - dodir /usr - emake DESTDIR="${D}" altinstall maninstall || die - - mv "${D}"/usr/bin/python${PYVER}-config "${D}"/usr/bin/python-config-${PYVER} - - # Fix slotted collisions - mv "${D}"/usr/bin/2to3 "${D}"/usr/bin/2to3-${PYVER} - mv "${D}"/usr/bin/pydoc "${D}"/usr/bin/pydoc${PYVER} - mv "${D}"/usr/bin/idle "${D}"/usr/bin/idle${PYVER} - mv "${D}"/usr/share/man/man1/python.1 \ - "${D}"/usr/share/man/man1/python${PYVER}.1 - rm -f "${D}"/usr/bin/smtpd.py - - # While we're working on the config stuff... Let's fix the OPT var - # so that it doesn't have any opts listed in it. Prevents the problem - # with compiling things with conflicting opts later. - dosed -e 's:^OPT=.*:OPT=-DNDEBUG:' \ - /usr/$(get_libdir)/python${PYVER}/config/Makefile - - if use build ; then - rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,encodings,email,lib-tk,bsddb/test} - else - use elibc_uclibc && rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,bsddb/test} - use berkdb || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/bsddb - use tk || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/lib-tk - fi - - prep_ml_includes usr/include/python${PYVER} - - # The stuff below this line extends from 2.1, and should be deprecated - # in 2.3, or possibly can wait till 2.4 - - # seems like the build do not install Makefile.pre.in anymore - # it probably shouldn't - use DistUtils, people! - insinto /usr/$(get_libdir)/python${PYVER}/config - doins "${S}"/Makefile.pre.in - - if use examples ; then - insinto /usr/share/doc/${PF}/examples - doins -r "${S}"/Tools || die "doins failed" - fi - - newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT} - newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT} - - # Installs empty directory. - rmdir "${D}"/usr/$(get_libdir)/${PN}${PV}/lib-old -} - -pkg_postrm() { - eselect python update --ignore 3.0 - python_mod_cleanup /usr/$(get_libdir)/python${PYVER} -} - -pkg_postinst() { - eselect python update --ignore 3.0 - python_version - - python_mod_optimize -x "(site-packages|test)" \ - /usr/$(get_libdir)/python${PYVER} -} - -src_test() { - # Tests won't work when cross compiling - if tc-is-cross-compiler ; then - elog "Disabling tests due to crosscompiling." - return - fi - - # Byte compiling should be enabled here. - # Otherwise test_import fails. - python_enable_pyc - - #skip all tests that fail during emerge but pass without emerge: - #(See bug# 67970) - local skip_tests="distutils global httpservers mimetools minidom mmap posix pyexpat sax strptime subprocess syntax tcl time urllib urllib2 webbrowser xml_etree" - - # test_pow fails on alpha. - # http://bugs.python.org/issue756093 - [[ ${ARCH} == "alpha" ]] && skip_tests="${skip_tests} pow" - - for test in ${skip_tests} ; do - mv "${S}"/Lib/test/test_${test}.py "${T}" - done - - # Redirect stdin from /dev/tty as a workaround for bug #248081. - # rerun failed tests in verbose mode (regrtest -w) - EXTRATESTOPTS="-w" make test < /dev/tty || die "make test failed" - - for test in ${skip_tests} ; do - mv "${T}"/test_${test}.py "${S}"/Lib/test/test_${test}.py - done - - elog "Portage skipped the following tests which aren't able to run from emerge:" - for test in ${skip_tests} ; do - elog "test_${test}.py" - done - - elog "If you'd like to run them, you may:" - elog "cd /usr/lib/python${PYVER}/test" - elog "and run the tests separately." -} diff --git a/dev-lang/python/python-2.6.2.ebuild b/dev-lang/python/python-2.6.2.ebuild deleted file mode 100644 index d151c9dd6da4..000000000000 --- a/dev-lang/python/python-2.6.2.ebuild +++ /dev/null @@ -1,267 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.6.2.ebuild,v 1.1 2009/04/18 19:57:15 arfrever Exp $ - -# NOTE about python-portage interactions : -# - Do not add a pkg_setup() check for a certain version of portage -# in dev-lang/python. It _WILL_ stop people installing from -# Gentoo 1.4 images. - -EAPI=2 - -inherit eutils autotools flag-o-matic python versionator toolchain-funcs libtool - -# we need this so that we don't depends on python.eclass -PYVER_MAJOR=$(get_major_version) -PYVER_MINOR=$(get_version_component_range 2) -PYVER="${PYVER_MAJOR}.${PYVER_MINOR}" - -MY_P="Python-${PV}" -S="${WORKDIR}/${MY_P}" - -DESCRIPTION="Python is an interpreted, interactive, object-oriented programming language." -HOMEPAGE="http://www.python.org/" -SRC_URI="http://www.python.org/ftp/python/${PV}/${MY_P}.tar.bz2 - mirror://gentoo/python-gentoo-patches-2.6.2.tar.bz2" - -LICENSE="PSF-2.2" -SLOT="2.6" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd" -IUSE="berkdb build doc elibc_uclibc examples gdbm ipv6 ncurses readline sqlite ssl +threads tk ucs2 wininst +xml" - -# NOTE: dev-python/{elementtree,celementtree,pysqlite,ctypes,cjkcodecs} -# do not conflict with the ones in python proper. - liquidx - -DEPEND=">=app-admin/eselect-python-20080925 - >=sys-libs/zlib-1.1.3 - !build? ( - sqlite? ( >=dev-db/sqlite-3 ) - tk? ( >=dev-lang/tk-8.0 ) - ncurses? ( >=sys-libs/ncurses-5.2 - readline? ( >=sys-libs/readline-4.1 ) ) - berkdb? ( >=sys-libs/db-3.1 ) - gdbm? ( sys-libs/gdbm ) - ssl? ( dev-libs/openssl ) - doc? ( dev-python/python-docs:2.6 ) - xml? ( dev-libs/expat ) - )" -RDEPEND="${DEPEND}" - -# NOTE: changed RDEPEND to PDEPEND to resolve bug 88777. - kloeri -# NOTE: added blocker to enforce correct merge order for bug 88777. - zmedico - -PDEPEND="${DEPEND} app-admin/python-updater" -PROVIDE="virtual/python" - -src_prepare() { - default - - if tc-is-cross-compiler ; then - epatch "${FILESDIR}"/python-2.5-cross-printf.patch - epatch "${FILESDIR}"/python-2.6-chflags-cross.patch - epatch "${FILESDIR}"/python-2.6-test-cross.patch - else - rm "${WORKDIR}/${PV}"/*_all_crosscompile.patch - fi - - EPATCH_SUFFIX="patch" epatch "${WORKDIR}/${PV}" - - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \ - Lib/distutils/command/install.py \ - Lib/distutils/sysconfig.py \ - Lib/site.py \ - Makefile.pre.in \ - Modules/Setup.dist \ - Modules/getpath.c \ - setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@" - - # fix os.utime() on hppa. utimes it not supported but unfortunately reported as working - gmsoft (22 May 04) - # PLEASE LEAVE THIS FIX FOR NEXT VERSIONS AS IT'S A CRITICAL FIX !!! - [ "${ARCH}" = "hppa" ] && sed -e 's/utimes //' -i "${S}"/configure - - if ! use wininst; then - # remove microsoft windows executables - rm Lib/distutils/command/wininst-*.exe - fi - - eautoreconf -} - -src_configure() { - # disable extraneous modules with extra dependencies - if use build; then - export PYTHON_DISABLE_MODULES="readline pyexpat dbm gdbm bsddb _curses _curses_panel _tkinter _sqlite3" - export PYTHON_DISABLE_SSL=1 - else - # dbm module can link to berkdb or gdbm - # defaults to gdbm when both are enabled, #204343 - local disable - use berkdb || use gdbm || disable="${disable} dbm" - use berkdb || disable="${disable} bsddb" - use xml || disable="${disable} pyexpat" - use gdbm || disable="${disable} gdbm" - use ncurses || disable="${disable} _curses _curses_panel" - use readline || disable="${disable} readline" - use sqlite || disable="${disable} _sqlite3" - use ssl || export PYTHON_DISABLE_SSL=1 - use tk || disable="${disable} _tkinter" - export PYTHON_DISABLE_MODULES="${disable}" - fi - - if use !xml; then - ewarn "You have configured Python without XML support." - ewarn "This is NOT a recommended configuration as you" - ewarn "may face problems parsing any XML documents." - fi - - einfo "Disabled modules: $PYTHON_DISABLE_MODULES" - - export OPT="${CFLAGS}" - - local myconf - - # super-secret switch. don't use this unless you know what you're - # doing. enabling UCS2 support will break your existing python - # modules - use ucs2 \ - && myconf="${myconf} --enable-unicode=ucs2" \ - || myconf="${myconf} --enable-unicode=ucs4" - - filter-flags -malign-double - - # Seems to no longer be necessary - #[ "${ARCH}" = "amd64" ] && append-flags -fPIC - [ "${ARCH}" = "alpha" ] && append-flags -fPIC - - # http://bugs.gentoo.org/show_bug.cgi?id=50309 - if is-flag -O3; then - is-flag -fstack-protector-all && replace-flags -O3 -O2 - use hardened && replace-flags -O3 -O2 - fi - - if tc-is-cross-compiler ; then - OPT="-O1" CFLAGS="" LDFLAGS="" CC="" \ - ./configure --{build,host}=${CBUILD} || die "cross-configure failed" - emake python Parser/pgen || die "cross-make failed" - mv python hostpython - mv Parser/pgen Parser/hostpgen - make distclean - sed -i \ - -e '/^HOSTPYTHON/s:=.*:=./hostpython:' \ - -e '/^HOSTPGEN/s:=.*:=./Parser/hostpgen:' \ - Makefile.pre.in || die "sed failed" - fi - - # export CXX so it ends up in /usr/lib/python2.x/config/Makefile - tc-export CXX - - # set LDFLAGS so we link modules with -lpython2.6 correctly. - # Needed on FreeBSD unless python2.6 is already installed. - # Please query BSD team before removing this! - append-ldflags "-L." - - econf \ - --with-fpectl \ - --enable-shared \ - $(use_enable ipv6) \ - $(use_with threads) \ - --infodir='${prefix}'/share/info \ - --mandir='${prefix}'/share/man \ - --with-libc='' \ - ${myconf} -} - -src_install() { - dodir /usr - emake DESTDIR="${D}" altinstall maninstall || die - - mv "${D}"/usr/bin/python${PYVER}-config "${D}"/usr/bin/python-config-${PYVER} - - # Fix slotted collisions - mv "${D}"/usr/bin/2to3 "${D}"/usr/bin/2to3-${PYVER} - mv "${D}"/usr/bin/pydoc "${D}"/usr/bin/pydoc${PYVER} - mv "${D}"/usr/bin/idle "${D}"/usr/bin/idle${PYVER} - mv "${D}"/usr/share/man/man1/python.1 \ - "${D}"/usr/share/man/man1/python${PYVER}.1 - rm -f "${D}"/usr/bin/smtpd.py - - # Fix the OPT variable so that it doesn't have any flags listed in it. - # Prevents the problem with compiling things with conflicting flags later. - dosed -e 's:^OPT=.*:OPT=-DNDEBUG:' \ - /usr/$(get_libdir)/python${PYVER}/config/Makefile - - if use build ; then - rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,encodings,email,lib-tk,bsddb/test} - else - use elibc_uclibc && rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/{test,bsddb/test} - use berkdb || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/bsddb - use tk || rm -rf "${D}"/usr/$(get_libdir)/python${PYVER}/lib-tk - fi - - prep_ml_includes usr/include/python${PYVER} - - if use examples ; then - insinto /usr/share/doc/${PF}/examples - doins -r "${S}"/Tools || die "doins failed" - fi - - newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT} - newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT} - - # Installs empty directory. - rmdir "${D}"/usr/$(get_libdir)/${PN}${PYVER}/lib-old -} - -pkg_postrm() { - eselect python update --ignore 3.0 - python_mod_cleanup /usr/$(get_libdir)/python${PYVER} -} - -pkg_postinst() { - eselect python update --ignore 3.0 - python_version - - python_mod_optimize -x "(site-packages|test)" \ - /usr/$(get_libdir)/python${PYVER} -} - -src_test() { - # Tests won't work when cross compiling - if tc-is-cross-compiler ; then - elog "Disabling tests due to crosscompiling." - return - fi - - # Byte compiling should be enabled here. - # Otherwise test_import fails. - python_enable_pyc - - #skip all tests that fail during emerge but pass without emerge: - #(See bug# 67970) - local skip_tests="distutils global httpservers mimetools minidom mmap posix pyexpat sax strptime subprocess syntax tcl time urllib urllib2 xml_etree" - - # test_pow fails on alpha. - # http://bugs.python.org/issue756093 - [[ ${ARCH} == "alpha" ]] && skip_tests="${skip_tests} pow" - - for test in ${skip_tests} ; do - mv "${S}"/Lib/test/test_${test}.py "${T}" - done - - # Redirect stdin from /dev/tty as a workaround for bug #248081. - # rerun failed tests in verbose mode (regrtest -w) - EXTRATESTOPTS="-w" make test < /dev/tty || die "make test failed" - - for test in ${skip_tests} ; do - mv "${T}"/test_${test}.py "${S}"/Lib/test/test_${test}.py - done - - elog "Portage skipped the following tests which aren't able to run from emerge:" - for test in ${skip_tests} ; do - elog "test_${test}.py" - done - - elog "If you'd like to run them, you may:" - elog "cd /usr/lib/python${PYVER}/test" - elog "and run the tests separately." -} |