diff options
author | Zac Medico <zmedico@gentoo.org> | 2006-04-18 18:54:08 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2006-04-18 18:54:08 +0000 |
commit | 171896e16a629bb1f43a22bf64e9906a7ff45fae (patch) | |
tree | 84af584787d3e6f5888891895bc097d864301f42 /sys-apps | |
parent | Moved games-strategy/dominions2-demo-bin to games-strategy/dominions2-demo (diff) | |
download | historical-171896e16a629bb1f43a22bf64e9906a7ff45fae.tar.gz historical-171896e16a629bb1f43a22bf64e9906a7ff45fae.tar.bz2 historical-171896e16a629bb1f43a22bf64e9906a7ff45fae.zip |
remove 2.1_pre8
Package-Manager: portage-2.1_pre9-r1
Diffstat (limited to 'sys-apps')
15 files changed, 3 insertions, 1455 deletions
diff --git a/sys-apps/portage/Manifest b/sys-apps/portage/Manifest index 77c3f2928a53..8e217daf8820 100644 --- a/sys-apps/portage/Manifest +++ b/sys-apps/portage/Manifest @@ -9,54 +9,6 @@ AUX 2.0.51.22-fixes.patch 10579 RMD160 aecbf663449b7b6c5fc8f4f343c30c1de7515fb3 MD5 bb9cb80f927bcc2b9e0f512d8a200e18 files/2.0.51.22-fixes.patch 10579 RMD160 aecbf663449b7b6c5fc8f4f343c30c1de7515fb3 files/2.0.51.22-fixes.patch 10579 SHA256 a6ae22f6513e9c5160204d9ba2ca8bab00091a88089139ff64bee68aaf63a95c files/2.0.51.22-fixes.patch 10579 -AUX 2.1/pre8/1000_r3120_fetchlist_dict.patch 2079 RMD160 3a86d6aef67777758f5452c3078cbd916edc8834 SHA1 96aa06088a7d3d61fa6d24bd4070b5fc9d3d85d1 SHA256 ec8ef0efb78635d7a3e7d48c78a4ae99150961dfc2bd9ca00292c16dc15eca93 size 2079 -MD5 3bffa6baf64a802c2fd737042a2188f6 files/2.1/pre8/1000_r3120_fetchlist_dict.patch 2079 -RMD160 3a86d6aef67777758f5452c3078cbd916edc8834 files/2.1/pre8/1000_r3120_fetchlist_dict.patch 2079 -SHA256 ec8ef0efb78635d7a3e7d48c78a4ae99150961dfc2bd9ca00292c16dc15eca93 files/2.1/pre8/1000_r3120_fetchlist_dict.patch 2079 -AUX 2.1/pre8/1010_r3123_manifest2_fixes.patch 19724 RMD160 0776528fa65acd80005ed93ad91e0e53b70481df SHA1 5991f55e71786294efeff24cb903a22bcce26c46 SHA256 22200a6cd6f0b89853b123bc7b58f740076da2730a0dde925b48006d0107eade size 19724 -MD5 2fff7bb3831c27d79fd1e6c8564ccd04 files/2.1/pre8/1010_r3123_manifest2_fixes.patch 19724 -RMD160 0776528fa65acd80005ed93ad91e0e53b70481df files/2.1/pre8/1010_r3123_manifest2_fixes.patch 19724 -SHA256 22200a6cd6f0b89853b123bc7b58f740076da2730a0dde925b48006d0107eade files/2.1/pre8/1010_r3123_manifest2_fixes.patch 19724 -AUX 2.1/pre8/1020_r3118_bug_121368.patch 3018 RMD160 56df7b20c98e633b06052db8c84ff4acd010cc12 SHA1 e585a08fead71838c1193bda52cad618ab3fc32b SHA256 10b4252b68fda34ac7eec6e4ff6ded6a2f81d4c6a054c762c4f1638ec5fbedcb size 3018 -MD5 772ad5a8c6447be04c5fbf699f1c1cde files/2.1/pre8/1020_r3118_bug_121368.patch 3018 -RMD160 56df7b20c98e633b06052db8c84ff4acd010cc12 files/2.1/pre8/1020_r3118_bug_121368.patch 3018 -SHA256 10b4252b68fda34ac7eec6e4ff6ded6a2f81d4c6a054c762c4f1638ec5fbedcb files/2.1/pre8/1020_r3118_bug_121368.patch 3018 -AUX 2.1/pre8/1030_r3128_bug_129559_qmerge.patch 654 RMD160 fe8e6faceb5b69d04ee30ef362fa716607850e12 SHA1 6c383ffd4b38fa2168b53ecc9f2a465d53d9c5e4 SHA256 e6bed8b5d689671d66f4ee3afd4bd5f7f1f924a8f81c4f737d4e489b458c3ff6 size 654 -MD5 bfa31a5b4165482fc7c4871c2e61e928 files/2.1/pre8/1030_r3128_bug_129559_qmerge.patch 654 -RMD160 fe8e6faceb5b69d04ee30ef362fa716607850e12 files/2.1/pre8/1030_r3128_bug_129559_qmerge.patch 654 -SHA256 e6bed8b5d689671d66f4ee3afd4bd5f7f1f924a8f81c4f737d4e489b458c3ff6 files/2.1/pre8/1030_r3128_bug_129559_qmerge.patch 654 -AUX 2.1/pre8/1040_r3126_bug_129244_ebuild_phase.patch 1370 RMD160 20901b3656786c4f192525291c323261e49afa14 SHA1 af37fecc32ad2604f92a8de1a9467c5d97d7c096 SHA256 c3eb5624244cf050e925b2d01476410882ab5c9b2c9f9555e4199de25577398b size 1370 -MD5 b06e293b746cf3cedb1effe3ab51ffdc files/2.1/pre8/1040_r3126_bug_129244_ebuild_phase.patch 1370 -RMD160 20901b3656786c4f192525291c323261e49afa14 files/2.1/pre8/1040_r3126_bug_129244_ebuild_phase.patch 1370 -SHA256 c3eb5624244cf050e925b2d01476410882ab5c9b2c9f9555e4199de25577398b files/2.1/pre8/1040_r3126_bug_129244_ebuild_phase.patch 1370 -AUX 2.1/pre8/1050_r3133_lazy_items.patch 3766 RMD160 d6223519af5a4a7fb041b49a678dde3b5694e744 SHA1 c4f8765aa205166b1f646ef328d7991cf312b3b4 SHA256 d7af60ef8da89890f7a011164ffcf286e142afb8226125fcde8eeec84e2333fa size 3766 -MD5 244bd6ad17632f3df3c162b8505af765 files/2.1/pre8/1050_r3133_lazy_items.patch 3766 -RMD160 d6223519af5a4a7fb041b49a678dde3b5694e744 files/2.1/pre8/1050_r3133_lazy_items.patch 3766 -SHA256 d7af60ef8da89890f7a011164ffcf286e142afb8226125fcde8eeec84e2333fa files/2.1/pre8/1050_r3133_lazy_items.patch 3766 -AUX 2.1/pre8/1060_r3134_porttrees_realpath.patch 1213 RMD160 c12fbc6371e54bed6d66ec0dbb5f84cbabaa4e01 SHA1 321a9ba4bcdcbfce5dc567265d3b082469598be4 SHA256 2a4791b39a31b24d1528dffdb0cab881498bd2adc086d7bb855d784b05513859 size 1213 -MD5 a26d166a4a05117b2e1a2bea6c42fc60 files/2.1/pre8/1060_r3134_porttrees_realpath.patch 1213 -RMD160 c12fbc6371e54bed6d66ec0dbb5f84cbabaa4e01 files/2.1/pre8/1060_r3134_porttrees_realpath.patch 1213 -SHA256 2a4791b39a31b24d1528dffdb0cab881498bd2adc086d7bb855d784b05513859 files/2.1/pre8/1060_r3134_porttrees_realpath.patch 1213 -AUX 2.1/pre8/1070_r3136_bug_129737_digest.patch 4901 RMD160 d69ccbfdad9c54f922f29c97eae259acf98c1dc6 SHA1 b1e4656e8feac4a0710890e274ee175e05e3f577 SHA256 e09ad443a4c6891402911684a0f0130f17ff140bd183cfcb73af95c271118605 size 4901 -MD5 5c07be9a6099524a45f115bb05a833de files/2.1/pre8/1070_r3136_bug_129737_digest.patch 4901 -RMD160 d69ccbfdad9c54f922f29c97eae259acf98c1dc6 files/2.1/pre8/1070_r3136_bug_129737_digest.patch 4901 -SHA256 e09ad443a4c6891402911684a0f0130f17ff140bd183cfcb73af95c271118605 files/2.1/pre8/1070_r3136_bug_129737_digest.patch 4901 -AUX 2.1/pre8/1080_r3142_bug_129839_digestcheck.patch 2654 RMD160 930006a48b0642479b89a42e8c88a480b32c1bf6 SHA1 23b9d35c3d4f0fe720bbcd7c00c9198b475d05e3 SHA256 c1cf2c48259f66abc66c4cc3ce6d20e0fdc07e9928f87ec26cd63b81fbe94aeb size 2654 -MD5 bdacda32332e7948f31ea0b9ef4f8541 files/2.1/pre8/1080_r3142_bug_129839_digestcheck.patch 2654 -RMD160 930006a48b0642479b89a42e8c88a480b32c1bf6 files/2.1/pre8/1080_r3142_bug_129839_digestcheck.patch 2654 -SHA256 c1cf2c48259f66abc66c4cc3ce6d20e0fdc07e9928f87ec26cd63b81fbe94aeb files/2.1/pre8/1080_r3142_bug_129839_digestcheck.patch 2654 -AUX 2.1/pre8/1090_r3146_bug_129720_slot_collision.patch 1345 RMD160 1b4c60a473dee75a18ac14a74451068734300a40 SHA1 fde246d030dd17c61454002380adbf19515d4d73 SHA256 ba54714b979b74d69293b0cd4403616dd063acfc7eb692cc012930d126f353e4 size 1345 -MD5 f25cfae0c0e5981f96487c681170aa97 files/2.1/pre8/1090_r3146_bug_129720_slot_collision.patch 1345 -RMD160 1b4c60a473dee75a18ac14a74451068734300a40 files/2.1/pre8/1090_r3146_bug_129720_slot_collision.patch 1345 -SHA256 ba54714b979b74d69293b0cd4403616dd063acfc7eb692cc012930d126f353e4 files/2.1/pre8/1090_r3146_bug_129720_slot_collision.patch 1345 -AUX 2.1/pre8/1100_r3143_lazy_autouse.patch 1758 RMD160 8c18a2faba386b8b7a30b5addf9985b9c0411a12 SHA1 d505d6516b9d4c1a55e7fb4bfaf9e0422e15df65 SHA256 30ce27fe8a9f02774f710644bca683a7f215deef74c8bb7058746dcd391492f7 size 1758 -MD5 2a88d6293035092334f6b93879ea58ea files/2.1/pre8/1100_r3143_lazy_autouse.patch 1758 -RMD160 8c18a2faba386b8b7a30b5addf9985b9c0411a12 files/2.1/pre8/1100_r3143_lazy_autouse.patch 1758 -SHA256 30ce27fe8a9f02774f710644bca683a7f215deef74c8bb7058746dcd391492f7 files/2.1/pre8/1100_r3143_lazy_autouse.patch 1758 -AUX 2.1/pre8/1110_r3147_bug_129852_chflags.patch 2103 RMD160 54fac3375570f932382cca054d0d53339e4a010b SHA1 1c84c96a3ab188baac573422ededb44af48f5f9d SHA256 d89f1bfd4219b88db35615a152313ddfd30e0919d6aa19cc96452e83aa33f6e2 size 2103 -MD5 54ad16e4fe36ca1496668b245b8f822c files/2.1/pre8/1110_r3147_bug_129852_chflags.patch 2103 -RMD160 54fac3375570f932382cca054d0d53339e4a010b files/2.1/pre8/1110_r3147_bug_129852_chflags.patch 2103 -SHA256 d89f1bfd4219b88db35615a152313ddfd30e0919d6aa19cc96452e83aa33f6e2 files/2.1/pre8/1110_r3147_bug_129852_chflags.patch 2103 AUX 2.1/pre9/1000_r3171_readDigests.patch 832 RMD160 f7651885f6d7bcabaf4e55205f7d3a6e8745d4eb SHA1 ee3734080508cd029309a2ee06a18c25193af806 SHA256 9fade3a954517d8fb3889cbb2ef9806fa555eb19027af44e2f1fdccf74e757de size 832 MD5 8ac999b2be9fc08e60876a33a9b18bbd files/2.1/pre9/1000_r3171_readDigests.patch 832 RMD160 f7651885f6d7bcabaf4e55205f7d3a6e8745d4eb files/2.1/pre9/1000_r3171_readDigests.patch 832 @@ -150,7 +102,6 @@ DIST portage-2.0.53.tar.bz2 234679 RMD160 c4e8716bdc37bc2611e49b261ac82627aa3e63 DIST portage-2.0.54.tar.bz2 234784 RMD160 26c724df242a7d0c44d7fd06067bfcdbc4e3556b SHA256 69075ab4599958c4f7c7a932b95dcd77efa1b3c46ac28acb577284bc48a1db06 size 234784 DIST portage-2.1_pre3.tar.bz2 248017 RMD160 f66dd69c5b24517169da7783a2621a2149a98cc7 SHA256 63ce5fab0986c4ecefa78d1e70e3b9474128ddd66a2c4ae44da17929ebc0089c size 248017 DIST portage-2.1_pre7.tar.bz2 256493 RMD160 543c4090ee7ade75d8005962b55ebbcf57dfd0b5 SHA256 14a49c685002c7e9bb39bb0b59310eef3f4509448549977d2c2e718894a4092d size 256493 -DIST portage-2.1_pre8.tar.bz2 258150 RMD160 4cfb15ee4fcddae8b53166a810649a98349591ea SHA256 b5c2d9c0af4f392b3b8e0325ad6b76d908c11ddb32019117155fb4c2ef1a6804 size 258150 DIST portage-2.1_pre9.tar.bz2 260738 RMD160 6a31123ff904395c5d22f631241293e808b5f94f SHA256 aef6464ee7bb732038e31250252d544c81ad642691ee78fb2f90074b92c9d726 size 260738 DIST portage-patches-2.0.54-1.tar.bz2 4398 RMD160 8b7520b99aec0cb53a117b46345a720f5c7a68c0 SHA256 50a8c9a618ab0e15237a638635318f97f7c56c307d2d1abaeba12d34733ce08a size 4398 EBUILD portage-2.0.51.22-r3.ebuild 5796 RMD160 3bdf43216d1d70e8547bac9637a394dbcd9a7bd2 SHA1 b88b2898eb5ba5b4471a10f8fa82df9b8dc747f0 SHA256 f634d807fcc92500d9acc3dd5d79aadd2f565dbf1ee64a0f75a3543e2a372e25 size 5796 @@ -177,10 +128,6 @@ EBUILD portage-2.1_pre7-r5.ebuild 5990 RMD160 2b36bc22a0b19f920e856d3113131ca374 MD5 6ef8ace6b92df29e8a3f528127f48c06 portage-2.1_pre7-r5.ebuild 5990 RMD160 2b36bc22a0b19f920e856d3113131ca374d57a85 portage-2.1_pre7-r5.ebuild 5990 SHA256 bd7a99b01a04e444fd5870628ee4c83e3864ec72c3baa9483e1d7d3ad1f46073 portage-2.1_pre7-r5.ebuild 5990 -EBUILD portage-2.1_pre8-r5.ebuild 6045 RMD160 e44e649b4206638d14257a3180fc11291dca3671 SHA1 736fda744552ebf35c13371d6f3b5165de81e666 SHA256 fa54eb89f5290e7f63f135cb44eeaf549537f50012ed13c186c624a6fec9b33a size 6045 -MD5 751726b14e0c73ae4d7e0dd2756d2e20 portage-2.1_pre8-r5.ebuild 6045 -RMD160 e44e649b4206638d14257a3180fc11291dca3671 portage-2.1_pre8-r5.ebuild 6045 -SHA256 fa54eb89f5290e7f63f135cb44eeaf549537f50012ed13c186c624a6fec9b33a portage-2.1_pre8-r5.ebuild 6045 EBUILD portage-2.1_pre9-r1.ebuild 5674 RMD160 db40ad0d3f1c7c57cb18bc8da8728926e88d608f SHA1 63ba7511a3c0f8096a9e91ad5be61df40c63b33f SHA256 82e6c71192ba782338400bc82c7ff7f50c12d5bc8ab574ef468e31b750cf06b0 size 5674 MD5 f813d6a35fabe4949695410b0098a6d2 portage-2.1_pre9-r1.ebuild 5674 RMD160 db40ad0d3f1c7c57cb18bc8da8728926e88d608f portage-2.1_pre9-r1.ebuild 5674 @@ -217,10 +164,6 @@ MD5 6aebb952d3a284aa4f52d7e5dc7791de files/digest-portage-2.1_pre7-r5 253 RMD160 437829798fb49cf829eadb8dd84fd8353eb4fdb1 files/digest-portage-2.1_pre7-r5 253 SHA256 f96288447c0bb578ae0fb80a0169df536c3421f00df4dd8a83d2e910ca489fb5 files/digest-portage-2.1_pre7-r5 253 size 253 files/digest-portage-2.1_pre7-r5 253 -MD5 30b312b7ad9b1270598fc43f9c20b280 files/digest-portage-2.1_pre8-r5 253 -RMD160 eb295a54bb4f738705344007c0b7eec28e5558e0 files/digest-portage-2.1_pre8-r5 253 -SHA256 83c6db289e1011b461ee5ceaaf93e155749fd49a63e4f6963033d15dfb22f0c0 files/digest-portage-2.1_pre8-r5 253 -size 253 files/digest-portage-2.1_pre8-r5 253 MD5 67e276de13aafcdf016b324e9d982c77 files/digest-portage-2.1_pre9-r1 253 RMD160 e92a9e761f9f33a96978374a38b340bfd66e26cb files/digest-portage-2.1_pre9-r1 253 SHA256 6f2bd6c793f88f16cbcc260b5c1393a38b40579b04ee2f1776dc046664126bab files/digest-portage-2.1_pre9-r1 253 @@ -228,7 +171,7 @@ size 253 files/digest-portage-2.1_pre9-r1 253 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2.2 (GNU/Linux) -iD8DBQFERTMY/ejvha5XGaMRAqGjAKCpF6CHZf145obfp5PlDcJlE4Pd9QCg2jFp -+0OAQI5NVrH/IkaGZSoCsY4= -=uGtr +iD8DBQFERTXS/ejvha5XGaMRAtoWAKDmMoWQ3NaVBUTTrG20o4VKDuGySgCdFoZk +sogF8/PdJRsLxcYUGaX6sEs= +=9NaB -----END PGP SIGNATURE----- diff --git a/sys-apps/portage/files/2.1/pre8/1000_r3120_fetchlist_dict.patch b/sys-apps/portage/files/2.1/pre8/1000_r3120_fetchlist_dict.patch deleted file mode 100644 index 1d8961d23d98..000000000000 --- a/sys-apps/portage/files/2.1/pre8/1000_r3120_fetchlist_dict.patch +++ /dev/null @@ -1,45 +0,0 @@ -=== modified file 'pym/portage.py' ---- pym/portage.py -+++ pym/portage.py -@@ -6379,6 +6344,41 @@ - "Is this a regular package (does it have a CATEGORY file? A dblink can be virtual *and* regular)" - return os.path.exists(self.dbdir+"/CATEGORY") - -+class FetchlistDict(UserDict.DictMixin): -+ """This provide a mapping interface to retrieve fetch lists. It's used -+ to allow portage_manifest.Manifest to access fetch lists via a standard -+ mapping interface rather than use the dbapi directly.""" -+ def __init__(self, pkgdir, settings): -+ """pkgdir is a directory containing ebuilds and settings is passed into -+ portdbapi.getfetchlist for __getitem__ calls.""" -+ self.pkgdir = pkgdir -+ self.cp = os.sep.join(pkgdir.split(os.sep)[-2:]) -+ self.settings = settings -+ self.porttrees = [os.path.dirname(os.path.dirname(pkgdir))] -+ def __getitem__(self, pkg_key): -+ """Returns the complete fetch list for a given package.""" -+ global portdb # has the global auxdb caches -+ all_trees = portdb.porttrees -+ # This ensures that the fetchlist comes from the correct portage tree. -+ portdb.porttrees = self.porttrees -+ fetchlist = portdb.getfetchlist(pkg_key, mysettings=self.settings, all=True)[1] -+ # XXX The db is global so we restore it's trees back to their original state. -+ portdb.porttrees = all_trees -+ return fetchlist -+ def has_key(self, pkg_key): -+ """Returns true if the given package exists within pkgdir.""" -+ return pkg_key in self.keys() -+ def keys(self): -+ """Returns keys for all packages within pkgdir""" -+ global portdb # has the global auxdb caches -+ all_trees = portdb.porttrees -+ # This ensures that the key list comes from the correct portage tree. -+ portdb.porttrees = self.porttrees -+ mykeys = portdb.cp_list(self.cp) -+ # XXX The db is global so we restore it's trees back to their original state. -+ portdb.porttrees = all_trees -+ return mykeys -+ - def cleanup_pkgmerge(mypkg,origdir): - shutil.rmtree(settings["PORTAGE_TMPDIR"]+"/binpkgs/"+mypkg) - if os.path.exists(settings["PORTAGE_TMPDIR"]+"/portage/"+mypkg+"/temp/environment"): diff --git a/sys-apps/portage/files/2.1/pre8/1010_r3123_manifest2_fixes.patch b/sys-apps/portage/files/2.1/pre8/1010_r3123_manifest2_fixes.patch deleted file mode 100644 index af768d94329d..000000000000 --- a/sys-apps/portage/files/2.1/pre8/1010_r3123_manifest2_fixes.patch +++ /dev/null @@ -1,502 +0,0 @@ -=== modified file 'bin/repoman' ---- bin/repoman -+++ bin/repoman -@@ -795,7 +795,9 @@ - fails["CVS/Entries.IO_error"].append(checkdir+"/files/CVS/Entries") - continue - -- mf=Manifest(checkdir, db=portage.db["/"]["porttree"].dbapi, mysettings=repoman_settings) -+ mf = Manifest(checkdir, -+ portage.FetchlistDict(checkdir, repoman_settings), -+ repoman_settings["DISTDIR"]) - mydigests=mf.getTypeDigests("DIST") - myfiles_all = [] - -@@ -878,6 +880,8 @@ - if y == "CVS": - continue - for z in os.listdir(checkdir+"/files/"+y): -+ if z == "CVS": -+ continue - filesdirlist.append(y+"/"+z) - # current policy is no files over 20k, this is the check. - elif mystat.st_size > 20480: -@@ -1613,8 +1617,8 @@ - if "sign" in portage.features: - mydone=[] - if repolevel==3: # In a package dir -- repoman_settings["O"]="./" -- while(gpgsign(repoman_settings["O"]+"/Manifest")): -+ repoman_settings["O"] = "." -+ while(gpgsign(os.path.join(repoman_settings["O"], "Manifest"))): - portage.writemsg("!!! YOU MUST sign the Manifest.\n") - portage.writemsg("!!! You can also disable this for the time being by removing FEATURES='sign'") - time.sleep(3) -@@ -1626,8 +1630,8 @@ - if xs[0] in mydone: - continue - mydone.append(xs[0]) -- repoman_settings["O"]="./"+xs[0] -- while(gpgsign(repoman_settings["O"]+"/Manifest")): -+ repoman_settings["O"] = os.path.join(".", xs[0]) -+ while(gpgsign(os.path.join(repoman_settings["O"], "Manifest"))): - portage.writemsg("!!! YOU MUST sign the Manifest.\n") - portage.writemsg("!!! You can also disable this for the time being by removing FEATURES='sign'") - time.sleep(3) -@@ -1640,8 +1644,8 @@ - if string.join(xs[:2],"/") in mydone: - continue - mydone.append(string.join(xs[:2],"/")) -- repoman_settings["O"]="./"+string.join(xs[:2],"/") -- while(gpgsign(repoman_settings["O"]+"/Manifest")): -+ repoman_settings["O"] = os.path.join(".", xs[0], xs[1]) -+ while(gpgsign(os.path.join(repoman_settings["O"], "Manifest"))): - portage.writemsg("!!! YOU MUST sign the Manifest.\n") - portage.writemsg("!!! You can also disable this for the time being by removing FEATURES='sign'") - time.sleep(3) - -=== modified file 'pym/portage.py' ---- pym/portage.py -+++ pym/portage.py -@@ -30,6 +30,7 @@ - import commands - from time import sleep - from random import shuffle -+ import UserDict - except ImportError, e: - sys.stderr.write("\n\n") - sys.stderr.write("!!! Failed to complete python imports. These are internal modules for\n") -@@ -2058,7 +2059,7 @@ - return 0 - return 1 - --def digestgen(myarchives,mysettings,db=None,overwrite=1,manifestonly=0): -+def digestgen(myarchives, mysettings, overwrite=1, manifestonly=0): - """generates digest file if missing. Assumes all files are available. If - overwrite=0, the digest will only be created if it doesn't already exist. - DEPRECATED: this now only is a compability wrapper for -@@ -2069,26 +2070,16 @@ - # (e.g. cvs stuff should be in ebuild(1) and/or repoman) - # TODO: error/exception handling - -- if db is None: -- db = portagetree().dbapi -- -- mf = Manifest(mysettings["O"], db, mysettings) -+ global settings -+ mf = Manifest(mysettings["O"], FetchlistDict(mysettings["O"], mysettings), mysettings["DISTDIR"]) -+ mf.create(assumeDistfileHashes=True) - for f in myarchives: - # the whole type evaluation is only for the case that myarchives isn't a - # DIST file as create() determines the type on its own -- mytype = mf.guessType(f) -- if mytype == "AUX": -- f = f[5:] -- elif mytype is None: -- continue -- myrealtype = mf.findFile(f) -- if myrealtype != None: -- mytype = myrealtype - writemsg(">>> Creating Manifest for %s\n" % mysettings["O"]) -- mf.create(assumeDistfileHashes=True) - try: - writemsg(">>> Adding digests for file %s\n" % f) -- mf.updateFileHashes(mytype, f, checkExisting=False, reuseExisting=not os.path.exists(os.path.join(mysettings["DISTDIR"], f))) -+ mf.updateHashesGuessType(f, checkExisting=False, reuseExisting=not os.path.exists(os.path.join(mysettings["DISTDIR"], f))) - except portage_exception.FileNotFound, e: - writemsg("!!! File %s doesn't exist, can't update Manifest\n" % str(e)) - return 0 -@@ -2098,7 +2089,7 @@ - - return 1 - --def digestParseFile(myfilename,mysettings=None,db=None): -+def digestParseFile(myfilename, mysettings=None): - """(filename) -- Parses a given file for entries matching: - <checksumkey> <checksum_hex_string> <filename> <filesize> - Ignores lines that don't start with a valid checksum identifier -@@ -2109,48 +2100,17 @@ - - mysplit = myfilename.split(os.sep) - if mysplit[-2] == "files" and mysplit[-1].startswith("digest-"): -- pkgdir = os.sep+os.sep.join(mysplit[:-2]) -+ pkgdir = os.sep + os.sep.join(mysplit[:-2]).strip(os.sep) - elif mysplit[-1] == "Manifest": -- pkgdir = os.sep+os.sep.join(mysplit[:-1]) -- -- if db is None: -- db = portagetree().dbapi -+ pkgdir = os.sep + os.sep.join(mysplit[:-1]).strip(os.sep) -+ - if mysettings is None: -+ global settings - mysettings = config(clone=settings) - -- mf = Manifest(pkgdir, db, mysettings) -+ mf = Manifest(pkgdir, FetchlistDict(pkgdir, mysettings), mysettings["DISTDIR"]) - - return mf.getDigests() -- -- ######################################### -- # Old code that's replaced by the above # -- ######################################### -- -- if not os.path.exists(myfilename): -- return None -- mylines = portage_util.grabfile(myfilename, compat_level=1) -- -- mydigests={} -- for x in mylines: -- myline=string.split(x) -- if len(myline) < 4: -- #invalid line -- continue -- if myline[0] not in portage_checksum.get_valid_checksum_keys(): -- continue -- mykey = myline.pop(0) -- myhash = myline.pop(0) -- mysize = long(myline.pop()) -- myfn = string.join(myline, " ") -- if myfn not in mydigests: -- mydigests[myfn] = {} -- mydigests[myfn][mykey] = myhash -- if "size" in mydigests[myfn]: -- if mydigests[myfn]["size"] != mysize: -- raise portage_exception.DigestException, "Conflicting sizes in digest: %(filename)s" % {"filename":myfilename} -- else: -- mydigests[myfn]["size"] = mysize -- return mydigests - - # XXXX strict was added here to fix a missing name error. - # XXXX It's used below, but we're not paying attention to how we get it? -@@ -2194,15 +2154,13 @@ - return 1 - - --def digestcheck(myfiles, mysettings, strict=0, justmanifest=0, db=None): -+def digestcheck(myfiles, mysettings, strict=0, justmanifest=0): - """Verifies checksums. Assumes all files have been downloaded. - DEPRECATED: this is now only a compability wrapper for - portage_manifest.Manifest().""" - - pkgdir = mysettings["O"] -- if db is None: -- db = portagetree().dbapi -- mf = Manifest(pkgdir, db, mysettings) -+ mf = Manifest(pkgdir, FetchlistDict(pkgdir, mysettings), mysettings["DISTDIR"]) - try: - if strict: - print ">>> checking ebuild checksums", -@@ -2750,6 +2708,28 @@ - if need_distfiles and not fetch(fetchme, mysettings, listonly=listonly, fetchonly=fetchonly): - return 1 - -+ if mydo=="fetch" and listonly: -+ return 0 -+ -+ if "digest" in features: -+ #generate digest if it doesn't exist. -+ if mydo=="digest": -+ return (not digestgen(aalist,mysettings,overwrite=1)) -+ else: -+ digestgen(aalist,mysettings,overwrite=0) -+ elif mydo=="digest": -+ #since we are calling "digest" directly, recreate the digest even if it already exists -+ return (not digestgen(aalist,mysettings,overwrite=1)) -+ if mydo=="manifest": -+ return (not digestgen(aalist,mysettings,overwrite=1,manifestonly=1)) -+ -+ # See above comment about fetching only when needed -+ if not digestcheck(checkme, mysettings, ("strict" in features), (mydo not in ["digest","fetch","unpack"] and settings["PORTAGE_CALLER"] == "ebuild" and "noauto" in features)): -+ return 1 -+ -+ if mydo=="fetch": -+ return 0 -+ - # inefficient. improve this logic via making actionmap easily searchable to see if we're in the chain of what - # will be executed, either that or forced N doebuild calls instead of a single set of phase calls. - if (mydo not in ("setup", "clean", "postinst", "preinst", "prerm", "fetch", "digest", "manifest") and -@@ -2774,28 +2754,6 @@ - except OSError: - print "!!! Failed symlinking in '%s' to ebuild distdir" % file - raise -- -- if mydo=="fetch" and listonly: -- return 0 -- -- if "digest" in features: -- #generate digest if it doesn't exist. -- if mydo=="digest": -- return (not digestgen(aalist,mysettings,overwrite=1)) -- else: -- digestgen(aalist,mysettings,overwrite=0) -- elif mydo=="digest": -- #since we are calling "digest" directly, recreate the digest even if it already exists -- return (not digestgen(aalist,mysettings,overwrite=1)) -- if mydo=="manifest": -- return (not digestgen(aalist,mysettings,overwrite=1,manifestonly=1)) -- -- # See above comment about fetching only when needed -- if not digestcheck(checkme, mysettings, ("strict" in features), (mydo not in ["digest","fetch","unpack"] and settings["PORTAGE_CALLER"] == "ebuild" and "noauto" in features)): -- return 1 -- -- if mydo=="fetch": -- return 0 - - #initial dep checks complete; time to process main commands - -=== modified file 'pym/portage_checksum.py' ---- pym/portage_checksum.py -+++ pym/portage_checksum.py -@@ -94,7 +94,9 @@ - if mydict["size"] != mysize: - return False,("Filesize does not match recorded size", mysize, mydict["size"]) - except OSError, e: -- return False, str(e) -+ if e.errno == errno.ENOENT: -+ raise portage_exception.FileNotFound(filename) -+ return False, (str(e), None, None) - for x in mydict.keys(): - if x == "size": - continue - -=== modified file 'pym/portage_manifest.py' ---- pym/portage_manifest.py -+++ pym/portage_manifest.py -@@ -3,8 +3,9 @@ - # $Header: $ - - import errno, os, sets -- --import portage, portage_exception, portage_versions, portage_const -+from itertools import imap -+ -+import portage_exception, portage_versions, portage_const - from portage_checksum import * - from portage_exception import * - from portage_util import write_atomic -@@ -25,11 +26,11 @@ - return not (filename in ["CVS", ".svn", "files", "Manifest"] or filename.endswith(".ebuild")) - - class Manifest(object): -- def __init__(self, pkgdir, db, mysettings, manifest1_compat=True, from_scratch=False): -- """ create new Manifest instance for package in pkgdir, using db and mysettings for metadata lookups, -+ def __init__(self, pkgdir, fetchlist_dict, distdir, manifest1_compat=True, from_scratch=False): -+ """ create new Manifest instance for package in pkgdir - and add compability entries for old portage versions if manifest1_compat == True. - Do not parse Manifest file if from_scratch == True (only for internal use) """ -- self.pkgdir = pkgdir+os.sep -+ self.pkgdir = pkgdir.rstrip(os.sep) + os.sep - self.fhashdict = {} - self.hashes = portage_const.MANIFEST2_HASH_FUNCTIONS[:] - self.hashes.append("size") -@@ -41,12 +42,8 @@ - if not from_scratch: - self._read() - self.compat = manifest1_compat -- self.db = db -- self.mysettings = mysettings -- if mysettings.has_key("PORTAGE_ACTUAL_DISTDIR"): -- self.distdir = mysettings["PORTAGE_ACTUAL_DISTDIR"] -- else: -- self.distdir = mysettings["DISTDIR"] -+ self.fetchlist_dict = fetchlist_dict -+ self.distdir = distdir - - def guessType(self, filename): - """ Perform a best effort guess of which type the given filename is, avoid using this if possible """ -@@ -79,9 +76,11 @@ - def _readDigests(self): - """ Parse old style digest files for this Manifest instance """ - mycontent = "" -- for d in portage.listdir(os.path.join(self.pkgdir, "files"), filesonly=True, recursive=False): -+ for d in os.listdir(os.path.join(self.pkgdir, "files")): - if d.startswith("digest-"): -- mycontent += open(os.path.join(self.pkgdir, "files", d), "r").read() -+ f = open(os.path.join(self.pkgdir, "files", d), "r") -+ mycontent += f.read() -+ f.close() - return mycontent - - def _read(self): -@@ -124,7 +123,7 @@ - - def _writeDigests(self, force=False): - """ Create old style digest files for this Manifest instance """ -- cpvlist = [os.path.join(self.pkgdir.rstrip(os.sep).split(os.sep)[-2], x[:-7]) for x in portage.listdir(self.pkgdir) if x.endswith(".ebuild")] -+ cpvlist = [os.path.join(self._pkgdir_category(), x[:-7]) for x in os.listdir(self.pkgdir) if x.endswith(".ebuild")] - rval = [] - try: - os.makedirs(os.path.join(self.pkgdir, "files")) -@@ -134,7 +133,7 @@ - else: - raise - for cpv in cpvlist: -- dname = os.path.join(self.pkgdir, "files", "digest-"+portage.catsplit(cpv)[1]) -+ dname = os.path.join(self.pkgdir, "files", "digest-%s" % self._catsplit(cpv)[1]) - distlist = self._getCpvDistfiles(cpv) - update_digest = True - if not force: -@@ -194,7 +193,7 @@ - mylines = [] - for dname in digests: - myhashes = perform_multiple_checksums(dname, portage_const.MANIFEST1_HASH_FUNCTIONS+["size"]) -- for h in myhashes.keys(): -+ for h in myhashes: - mylines.append((" ".join([h, str(myhashes[h]), os.path.join("files", os.path.basename(dname)), str(myhashes["size"])]))) - fd.write("\n".join(mylines)) - fd.write("\n") -@@ -258,7 +257,7 @@ - self.fhashdict[ftype][fname] = {} - if hashdict != None: - self.fhashdict[ftype][fname].update(hashdict) -- if not portage_const.MANIFEST2_REQUIRED_HASH in self.fhashdict[ftype][fname].keys(): -+ if not portage_const.MANIFEST2_REQUIRED_HASH in self.fhashdict[ftype][fname]: - self.updateFileHashes(ftype, fname) - - def removeFile(self, ftype, fname): -@@ -267,7 +266,7 @@ - - def hasFile(self, ftype, fname): - """ Return wether the Manifest contains an entry for the given type,filename pair """ -- return (fname in self.fhashdict[ftype].keys()) -+ return (fname in self.fhashdict[ftype]) - - def findFile(self, fname): - """ Return entrytype of the given file if present in Manifest or None if not present """ -@@ -286,8 +285,10 @@ - distfilehashes = self.fhashdict["DIST"] - else: - distfilehashes = {} -- self.__init__(self.pkgdir, self.db, self.mysettings, from_scratch=True) -- for f in portage.listdir(self.pkgdir, filesonly=True, recursive=False): -+ self.__init__(self.pkgdir, self.fetchlist_dict, self.distdir, from_scratch=True) -+ for pkgdir, pkgdir_dirs, pkgdir_files in os.walk(self.pkgdir): -+ break -+ for f in pkgdir_files: - if f.endswith(".ebuild"): - mytype = "EBUILD" - elif manifest2MiscfileFilter(f): -@@ -295,11 +296,18 @@ - else: - continue - self.fhashdict[mytype][f] = perform_multiple_checksums(self.pkgdir+f, self.hashes) -- for f in portage.listdir(self.pkgdir+"files", filesonly=True, recursive=True): -+ recursive_files = [] -+ cut_len = len(os.path.join(self.pkgdir, "files") + os.sep) -+ for parentdir, dirs, files in os.walk(os.path.join(self.pkgdir, "files")): -+ for f in files: -+ full_path = os.path.join(parentdir, f) -+ recursive_files.append(full_path[cut_len:]) -+ for f in recursive_files: - if not manifest2AuxfileFilter(f): - continue -- self.fhashdict["AUX"][f] = perform_multiple_checksums(self.pkgdir+"files"+os.sep+f, self.hashes) -- cpvlist = [os.path.join(self.pkgdir.rstrip(os.sep).split(os.sep)[-2], x[:-7]) for x in portage.listdir(self.pkgdir) if x.endswith(".ebuild")] -+ self.fhashdict["AUX"][f] = perform_multiple_checksums( -+ os.path.join(self.pkgdir, "files", f.lstrip(os.sep)), self.hashes) -+ cpvlist = [os.path.join(self._pkgdir_category(), x[:-7]) for x in os.listdir(self.pkgdir) if x.endswith(".ebuild")] - distlist = [] - for cpv in cpvlist: - distlist.extend(self._getCpvDistfiles(cpv)) -@@ -307,11 +315,14 @@ - fname = os.path.join(self.distdir, f) - if os.path.exists(fname): - self.fhashdict["DIST"][f] = perform_multiple_checksums(fname, self.hashes) -- elif assumeDistfileHashes and f in distfilehashes.keys(): -+ elif assumeDistfileHashes and f in distfilehashes: - self.fhashdict["DIST"][f] = distfilehashes[f] - else: - raise FileNotFound(fname) -- -+ -+ def _pkgdir_category(self): -+ return self.pkgdir.rstrip(os.sep).split(os.sep)[-2] -+ - def _getAbsname(self, ftype, fname): - if ftype == "DIST": - absname = os.path.join(self.distdir, fname) -@@ -326,7 +337,7 @@ - self.checkTypeHashes(t, ignoreMissingFiles=ignoreMissingFiles) - - def checkTypeHashes(self, idtype, ignoreMissingFiles=False): -- for f in self.fhashdict[idtype].keys(): -+ for f in self.fhashdict[idtype]: - self.checkFileHashes(idtype, f, ignoreMissing=ignoreMissingFiles) - - def checkFileHashes(self, ftype, fname, ignoreMissing=False): -@@ -343,7 +354,7 @@ - self.checkTypeHashes("AUX", ignoreMissingFiles=False) - if checkMiscfiles: - self.checkTypeHashes("MISC", ignoreMissingFiles=False) -- ebuildname = portage.catsplit(cpv)[1]+".ebuild" -+ ebuildname = "%s.ebuild" % self._catsplit(cpv)[1] - self.checkFileHashes("EBUILD", ebuildname, ignoreMissing=False) - if checkDistfiles: - if onlyDistfiles: -@@ -352,26 +363,26 @@ - - def _getCpvDistfiles(self, cpv): - """ Get a list of all DIST files associated to the given cpv """ -- return self.db.getfetchlist(cpv, mysettings=self.mysettings, all=True)[1] -+ return self.fetchlist_dict[cpv] - - def updateFileHashes(self, ftype, fname, checkExisting=True, ignoreMissing=True, reuseExisting=False): - """ Regenerate hashes for the given file """ - if checkExisting: -- self.checkFileHashes(fname) -+ self.checkFileHashes(ftype, fname, ignoreMissing=ignoreMissing) - if not ignoreMissing and not self.fhashdict[ftype].has_key(fname): - raise FileNotInManifestException(fname) - if not self.fhashdict[ftype].has_key(fname): - self.fhashdict[ftype][fname] = {} - myhashkeys = list(self.hashes) - if reuseExisting: -- for k in [h for h in self.fhashdict[ftype][fname].keys() if h in myhashkeys]: -+ for k in [h for h in self.fhashdict[ftype][fname] if h in myhashkeys]: - myhashkeys.remove(k) - myhashes = perform_multiple_checksums(self._getAbsname(ftype, fname), myhashkeys) - self.fhashdict[ftype][fname].update(myhashes) - - def updateTypeHashes(self, idtype, checkExisting=False, ignoreMissingFiles=True): - """ Regenerate all hashes for all files of the given type """ -- for fname in self.fhashdict[idtype].keys(): -+ for fname in self.fhashdict[idtype]: - self.updateFileHashes(idtype, fname, checkExisting) - - def updateAllHashes(self, checkExisting=False, ignoreMissingFiles=True): -@@ -384,10 +395,23 @@ - files).""" - self.updateTypeHashes("AUX", ignoreMissingFiles=ignoreMissingFiles) - self.updateTypeHashes("MISC", ignoreMissingFiles=ignoreMissingFiles) -- ebuildname = portage.catsplit(cpv)[1]+".ebuild" -+ ebuildname = "%s.ebuild" % self._catsplit(cpv)[1] - self.updateFileHashes("EBUILD", ebuildname, ignoreMissingFiles=ignoreMissingFiles) - for f in self._getCpvDistfiles(cpv): - self.updateFileHashes("DIST", f, ignoreMissingFiles=ignoreMissingFiles) -+ -+ def updateHashesGuessType(self, fname, *args, **kwargs): -+ """ Regenerate hashes for the given file (guesses the type and then -+ calls updateFileHashes).""" -+ mytype = self.guessType(fname) -+ if mytype == "AUX": -+ fname = fname[len("files" + os.sep):] -+ elif mytype is None: -+ return -+ myrealtype = self.findFile(fname) -+ if myrealtype is not None: -+ mytype = myrealtype -+ return self.updateFileHashes(mytype, fname, *args, **kwargs) - - def getFileData(self, ftype, fname, key): - """ Return the value of a specific (type,filename,key) triple, mainly useful -@@ -410,3 +434,8 @@ - elif len(mysplit) > 4 and mysplit[0] in portage_const.MANIFEST2_IDENTIFIERS and ((len(mysplit) - 3) % 2) == 0 and not 2 in rVal: - rVal.append(2) - return rVal -+ -+ def _catsplit(self, pkg_key): -+ """Split a category and package, returning a list of [cat, pkg]. -+ This is compatible with portage.catsplit()""" -+ return pkg_key.split("/", 1) - diff --git a/sys-apps/portage/files/2.1/pre8/1020_r3118_bug_121368.patch b/sys-apps/portage/files/2.1/pre8/1020_r3118_bug_121368.patch deleted file mode 100644 index efdac4703c33..000000000000 --- a/sys-apps/portage/files/2.1/pre8/1020_r3118_bug_121368.patch +++ /dev/null @@ -1,102 +0,0 @@ -=== modified file 'bin/misc-functions.sh' ---- bin/misc-functions.sh -+++ bin/misc-functions.sh -@@ -184,77 +184,27 @@ - unset INSTALLTOD - fi - -- # dumps perms to stdout. if error, no perms dumped. -- function stat_perms() { -- local f -- # only define do_stat if it hasn't been already -- if ! type -p do_stat &> /dev/null; then -- if ! type -p stat &>/dev/null; then -- do_stat() { -- # Generic version -- Octal result -- python -c "import os,stat; print '%o' % os.stat('$1')[stat.ST_MODE]" -- } -- else -- if [ "${USERLAND}" == "BSD" ] || [ "${USERLAND}" == "Darwin" ]; then -- do_stat() { -- # BSD version -- Octal result -- $(type -p stat) -f '%p' "$1" -- } -- else -- do_stat() { -- # Linux version -- Hex result converted to Octal -- f=$($(type -p stat) -c '%f' "$1") || return $? -- printf '%o' "0x$f" -- } -- fi -- fi -- fi -- -- f=$(do_stat "$@") || return -- f="${f:2:4}" -- echo $f -- } -- -- local file s -- local count=0 -- find "${D}/" -user portage | while read file; do -- count=$(( $count + 1 )) -- if [ -L "${file}" ]; then -- lchown ${PORTAGE_INST_UID:-0} "${file}" -- else -- s=$(stat_perms "$file") -- if [ -z "${s}" ]; then -- ewarn "failed stat_perm'ing $file. User intervention during install isn't wise..." -- continue -- fi -- chown ${PORTAGE_INST_UID:-0} "$file" -- chmod "$s" "$file" -- fi -- done -- if (( $count > 0 )); then -- ewarn "$count files were installed with user portage!" -- fi -- -- count=0 -- find "${D}/" -group portage | while read file; do -- count=$(( $count + 1 )) -- if [ -L "${file}" ]; then -- lchgrp ${PORTAGE_INST_GID:-0} "${file}" -- else -- s=$(stat_perms "$file") -- if [ -z "${s}" ]; then -- echo "failed stat_perm'ing '$file' . User intervention during install isn't wise..." -- continue -- fi -- chgrp ${PORTAGE_INST_GID:-0} "$file" -- chmod "$s" "$file" -- fi -- done -- if (( $count > 0 )); then -- ewarn "$count files were installed with group portage!" -- fi -- -- unset -f stat_perms -+ local file="${T}/find-portage-log" -+ local count=$(find "${D}"/ -user portage | wc -l) -+ if [[ ${count} -gt 0 ]] ; then -+ ewarn "${count} files were installed with user portage!" -+ find "${D}"/ -xtype l -user portage -print0 > "${file}" -+ [[ -s ${file} ]] && cat "${file}" | xargs -0 chown -h ${PORTAGE_INST_UID:-0} -+ find "${D}"/ -user portage -print0 > "${file}" -+ [[ -s ${file} ]] && cat "${file}" | xargs -0 chown ${PORTAGE_INST_UID:-0} -+ rm -f "${file}" -+ fi -+ -+ count=$(find "${D}"/ -group portage | wc -l) -+ if [[ ${count} -gt 0 ]] ; then -+ ewarn "${count} files were installed with group portage!" -+ -+ find "${D}"/ -xtype l -group portage -print0 > "${file}" -+ [[ -s ${file} ]] && cat "${file}" | xargs -0 chgrp -h ${PORTAGE_INST_GID:-0} -+ find "${D}"/ -group portage -print0 > "${file}" -+ [[ -s ${file} ]] && cat "${file}" | xargs -0 chgrp ${PORTAGE_INST_GID:-0} -+ rm -f "${file}" -+ fi - - # Portage regenerates this on the installed system. - if [ -f "${D}/usr/share/info/dir.gz" ]; then diff --git a/sys-apps/portage/files/2.1/pre8/1030_r3128_bug_129559_qmerge.patch b/sys-apps/portage/files/2.1/pre8/1030_r3128_bug_129559_qmerge.patch deleted file mode 100644 index 8ed07a48e2ff..000000000000 --- a/sys-apps/portage/files/2.1/pre8/1030_r3128_bug_129559_qmerge.patch +++ /dev/null @@ -1,14 +0,0 @@ -=== modified file 'pym/portage.py' ---- pym/portage.py -+++ pym/portage.py -@@ -2715,6 +2715,9 @@ - if not os.path.exists(mysettings["PORTAGE_BUILDDIR"]+"/.installed"): - print "!!! mydo=qmerge, but install phase hasn't been ran" - sys.exit(1) -+ # qmerge is a special phase that implies noclean. -+ if "noclean" not in mysettings.features: -+ mysettings.features.append("noclean") - #qmerge is specifically not supposed to do a runtime dep check - return merge(mysettings["CATEGORY"],mysettings["PF"],mysettings["D"],mysettings["PORTAGE_BUILDDIR"]+"/build-info",myroot,mysettings,myebuild=mysettings["EBUILD"],mytree=tree) - elif mydo=="merge": - diff --git a/sys-apps/portage/files/2.1/pre8/1040_r3126_bug_129244_ebuild_phase.patch b/sys-apps/portage/files/2.1/pre8/1040_r3126_bug_129244_ebuild_phase.patch deleted file mode 100644 index 6fa539fdf458..000000000000 --- a/sys-apps/portage/files/2.1/pre8/1040_r3126_bug_129244_ebuild_phase.patch +++ /dev/null @@ -1,44 +0,0 @@ -=== modified file 'bin/ebuild.sh' ---- bin/ebuild.sh -+++ bin/ebuild.sh -@@ -11,6 +11,8 @@ - SANDBOX_PREDICT="${SANDBOX_PREDICT}:${PORTAGE_GPG_DIR}" - fi - -+declare -rx EBUILD_PHASE -+ - if [ "$*" != "depend" ] && [ "$*" != "clean" ] && [ "$*" != "nofetch" ]; then - if [ -f "${T}/environment" ]; then - source "${T}/environment" &>/dev/null -@@ -20,8 +22,6 @@ - if [ -n "$#" ]; then - ARGS="${*}" - fi -- --declare -rx EBUILD_PHASE="$*" - - # Prevent aliases from causing portage to act inappropriately. - # Make sure it's before everything so we don't mess aliases that follow. - -=== modified file 'pym/portage.py' ---- pym/portage.py -+++ pym/portage.py -@@ -2197,7 +2197,9 @@ - if retval: - return retval - kwargs = actionmap[mydo]["args"] -+ mysettings["EBUILD_PHASE"] = mydo - phase_retval = spawn(actionmap[mydo]["cmd"] % mydo, mysettings, debug=debug, logfile=logfile, **kwargs) -+ del mysettings["EBUILD_PHASE"] - if phase_retval == os.EX_OK: - if mydo == "install": - mycommand = " ".join([MISC_SH_BINARY, "install_qa_check"]) -@@ -2246,6 +2246,8 @@ - # XXX: that creates a deadlock... Really need to isolate that. - mysettings.reset(use_cache=use_cache) - mysettings.setcpv(mycpv,use_cache=use_cache) -+ -+ mysettings["EBUILD_PHASE"] = mydo - - if debug: # Otherwise it overrides emerge's settings. - # We have no other way to set debug... debug can't be passed in diff --git a/sys-apps/portage/files/2.1/pre8/1050_r3133_lazy_items.patch b/sys-apps/portage/files/2.1/pre8/1050_r3133_lazy_items.patch deleted file mode 100644 index be4ab3562912..000000000000 --- a/sys-apps/portage/files/2.1/pre8/1050_r3133_lazy_items.patch +++ /dev/null @@ -1,109 +0,0 @@ -=== modified file 'pym/portage.py' ---- pym/portage.py -+++ pym/portage.py -@@ -6551,28 +6551,23 @@ - return settings.getvirtuals(myroot) - - def do_vartree(mysettings): -- class LazyVirtualsDict(dict): -+ class LazyVirtualsItem(object): - def __init__(self, myroot): -- super(LazyVirtualsDict, self).__init__() -- self.myroot = myroot -- self["virtuals"] = None -- def __getitem__(self, key): -- if "virtuals" == key: -- if "virtuals" in self: -- virtuals = super(LazyVirtualsDict, self).__getitem__("virtuals") -- if virtuals is not None: -- return virtuals -- else: -- global settings -- virtuals = settings.getvirtuals(self.myroot) -- self["virtuals"] = virtuals -- return virtuals -- return super(LazyVirtualsDict, self).__getitem__(key) -+ self._myroot = myroot -+ self._virtuals = None -+ def __call__(self): -+ if self._virtuals is None: -+ global settings -+ self._virtuals = settings.getvirtuals(self._myroot) -+ return self._virtuals -+ - global db, root -- db["/"] = LazyVirtualsDict("/") -+ db["/"] = portage_util.LazyItemsDict() -+ db["/"].addLazyItem("virtuals", LazyVirtualsItem("/")) - db["/"]["vartree"] = vartree("/") - if root!="/": -- db[root] = LazyVirtualsDict(root) -+ db[root] = portage_util.LazyItemsDict() -+ db[root].addLazyItem("virtuals", LazyVirtualsItem(root)) - db[root]["vartree"] = vartree(root) - #We need to create the vartree first, then load our settings, and then set up our other trees - -@@ -6886,11 +6881,25 @@ - global_updates() - - #continue setting up other trees -+class LazyBintreeItem(object): -+ """This class implements lazy construction of db[root]["bintree"].""" -+ def __init__(self, myroot): -+ self._myroot = myroot -+ self._bintree = None -+ def __call__(self): -+ if self._bintree is None: -+ global settings -+ self._bintree = binarytree(self._myroot, settings["PKGDIR"]) -+ # The binarytree likely needs to be populated now, so we -+ # do it now to make sure that all method calls are safe. -+ self._bintree.populate() -+ return self._bintree -+ - db["/"]["porttree"] = portagetree("/") --db["/"]["bintree"] = binarytree("/", settings["PKGDIR"]) -+db["/"].addLazyItem("bintree", LazyBintreeItem("/")) - if root!="/": - db[root]["porttree"] = portagetree(root) -- db[root]["bintree"] = binarytree(root, settings["PKGDIR"]) -+ db[root].addLazyItem("bintree", LazyBintreeItem(root)) - - profileroots = [settings["PORTDIR"]+"/profiles/"] - for x in settings["PORTDIR_OVERLAY"].split(): - -=== modified file 'pym/portage_util.py' ---- pym/portage_util.py -+++ pym/portage_util.py -@@ -710,3 +710,30 @@ - raise - perms_modified = apply_permissions(dir_path, *args, **kwargs) - return created_dir or perms_modified -+ -+class LazyItemsDict(dict): -+ """A mapping object that behaves like a standard dict except that it allows -+ for lazy initialization of values via callable objects. Lazy items can be -+ overwritten and deleted just as normal items.""" -+ def __init__(self): -+ dict.__init__(self) -+ self.lazy_items = {} -+ def addLazyItem(self, item_key, value_callable): -+ """Add a lazy item for the given key. When the item is requested, -+ value_callable will be called with no arguments.""" -+ self.lazy_items[item_key] = value_callable -+ # make it show up in self.keys(), etc... -+ dict.__setitem__(self, item_key, None) -+ def __getitem__(self, item_key): -+ if item_key in self.lazy_items: -+ return self.lazy_items[item_key]() -+ else: -+ return dict.__getitem__(self, item_key) -+ def __setitem__(self, item_key, value): -+ if item_key in self.lazy_items: -+ del self.lazy_items[item_key] -+ dict.__setitem__(self, item_key, value) -+ def __delitem__(self, item_key): -+ if item_key in self.lazy_items: -+ del self.lazy_items[item_key] -+ dict.__delitem__(self, item_key) - diff --git a/sys-apps/portage/files/2.1/pre8/1060_r3134_porttrees_realpath.patch b/sys-apps/portage/files/2.1/pre8/1060_r3134_porttrees_realpath.patch deleted file mode 100644 index 7e479cc8518b..000000000000 --- a/sys-apps/portage/files/2.1/pre8/1060_r3134_porttrees_realpath.patch +++ /dev/null @@ -1,32 +0,0 @@ -=== modified file 'pym/portage.py' ---- pym/portage.py -+++ pym/portage.py -@@ -4511,7 +4511,7 @@ - self.manifestVerifier = portage_gpg.FileChecker(self.mysettings["PORTAGE_GPG_DIR"], "gentoo.gpg", minimumTrust=self.manifestVerifyLevel) - - #self.root=settings["PORTDIR"] -- self.porttree_root = porttree_root -+ self.porttree_root = os.path.realpath(porttree_root) - - self.depcachedir = self.mysettings.depcachedir[:] - -@@ -4532,7 +4532,8 @@ - self.xcache={} - self.frozen=0 - -- self.porttrees=[self.porttree_root]+self.mysettings["PORTDIR_OVERLAY"].split() -+ self.porttrees = [self.porttree_root] + \ -+ [os.path.realpath(t) for t in self.mysettings["PORTDIR_OVERLAY"].split()] - self.auxdbmodule = self.mysettings.load_best_module("portdbapi.auxdbmodule") - self.auxdb = {} - -@@ -6275,7 +6276,7 @@ - self.pkgdir = pkgdir - self.cp = os.sep.join(pkgdir.split(os.sep)[-2:]) - self.settings = settings -- self.porttrees = [os.path.dirname(os.path.dirname(pkgdir))] -+ self.porttrees = [os.path.realpath(os.path.dirname(os.path.dirname(pkgdir)))] - def __getitem__(self, pkg_key): - """Returns the complete fetch list for a given package.""" - global portdb # has the global auxdb caches - diff --git a/sys-apps/portage/files/2.1/pre8/1070_r3136_bug_129737_digest.patch b/sys-apps/portage/files/2.1/pre8/1070_r3136_bug_129737_digest.patch deleted file mode 100644 index 87b7dc7f8032..000000000000 --- a/sys-apps/portage/files/2.1/pre8/1070_r3136_bug_129737_digest.patch +++ /dev/null @@ -1,122 +0,0 @@ -=== modified file 'pym/portage.py' ---- pym/portage.py -+++ pym/portage.py -@@ -2060,33 +2060,20 @@ - return 1 - - def digestgen(myarchives, mysettings, overwrite=1, manifestonly=0): -- """generates digest file if missing. Assumes all files are available. If -- overwrite=0, the digest will only be created if it doesn't already exist. -+ """Generates a digest file if missing. Assumes all files are available. - DEPRECATED: this now only is a compability wrapper for -- portage_manifest.Manifest()""" -- -- # NOTE: manifestonly is useless with manifest2 and therefore ignored -- # NOTE: the old code contains a lot of crap that should really be elsewhere -- # (e.g. cvs stuff should be in ebuild(1) and/or repoman) -- # TODO: error/exception handling -- -+ portage_manifest.Manifest() -+ NOTE: manifestonly and overwrite are useless with manifest2 and -+ are therefore ignored.""" - global settings - mf = Manifest(mysettings["O"], FetchlistDict(mysettings["O"], mysettings), mysettings["DISTDIR"]) -- mf.create(assumeDistfileHashes=True) -- for f in myarchives: -- # the whole type evaluation is only for the case that myarchives isn't a -- # DIST file as create() determines the type on its own -- writemsg(">>> Creating Manifest for %s\n" % mysettings["O"]) -- try: -- writemsg(">>> Adding digests for file %s\n" % f) -- mf.updateHashesGuessType(f, checkExisting=False, reuseExisting=not os.path.exists(os.path.join(mysettings["DISTDIR"], f))) -- except portage_exception.FileNotFound, e: -- writemsg("!!! File %s doesn't exist, can't update Manifest\n" % str(e)) -- return 0 -- # NOTE: overwrite=0 is only used by emerge --digest, not sure we wanna keep that -- if overwrite or not os.path.exists(mf.getFullname()): -- mf.write(sign=False) -- -+ writemsg(">>> Creating Manifest for %s\n" % mysettings["O"]) -+ try: -+ mf.create(assumeDistfileHashes=True, requiredDistfiles=myarchives) -+ except portage_exception.FileNotFound, e: -+ writemsg("!!! File %s doesn't exist, can't update Manifest\n" % str(e)) -+ return 0 -+ mf.write(sign=False) - return 1 - - def digestParseFile(myfilename, mysettings=None): - -=== modified file 'pym/portage_manifest.py' ---- pym/portage_manifest.py -+++ pym/portage_manifest.py -@@ -3,7 +3,8 @@ - # $Header: $ - - import errno, os, sets --from itertools import imap -+if not hasattr(__builtins__, "set"): -+ from sets import Set as set - - import portage_exception, portage_versions, portage_const - from portage_checksum import * -@@ -135,6 +136,15 @@ - for cpv in cpvlist: - dname = os.path.join(self.pkgdir, "files", "digest-%s" % self._catsplit(cpv)[1]) - distlist = self._getCpvDistfiles(cpv) -+ have_all_checksums = True -+ for f in distlist: -+ if f not in self.fhashdict["DIST"] or len(self.fhashdict["DIST"][f]) == 0: -+ have_all_checksums = False -+ break -+ if not have_all_checksums: -+ # We don't have all the required checksums to generate a proper -+ # digest, so we have to skip this cpv. -+ continue - update_digest = True - if not force: - try: -@@ -275,10 +285,13 @@ - return t - return None - -- def create(self, checkExisting=False, assumeDistfileHashes=True): -+ def create(self, checkExisting=False, assumeDistfileHashes=True, requiredDistfiles=None): - """ Recreate this Manifest from scratch, not using any existing checksums - (exception: if assumeDistfileHashes is true then existing DIST checksums are -- reused if the file doesn't exist in DISTDIR.""" -+ reused if the file doesn't exist in DISTDIR. The requiredDistfiles -+ parameter specifies a list of distfiles to raise a FileNotFound -+ exception for (if no file or existing checksums are available), and -+ defaults to all distfiles when not specified.""" - if checkExisting: - self.checkAllHashes() - if assumeDistfileHashes: -@@ -308,18 +321,21 @@ - self.fhashdict["AUX"][f] = perform_multiple_checksums( - os.path.join(self.pkgdir, "files", f.lstrip(os.sep)), self.hashes) - cpvlist = [os.path.join(self._pkgdir_category(), x[:-7]) for x in os.listdir(self.pkgdir) if x.endswith(".ebuild")] -- distlist = [] -+ distlist = set() - for cpv in cpvlist: -- distlist.extend(self._getCpvDistfiles(cpv)) -+ distlist.update(self._getCpvDistfiles(cpv)) -+ if requiredDistfiles is None or len(requiredDistfiles) == 0: -+ # repoman passes in an empty list, which implies that all distfiles -+ # are required. -+ requiredDistfiles = distlist.copy() - for f in distlist: - fname = os.path.join(self.distdir, f) - if os.path.exists(fname): - self.fhashdict["DIST"][f] = perform_multiple_checksums(fname, self.hashes) - elif assumeDistfileHashes and f in distfilehashes: - self.fhashdict["DIST"][f] = distfilehashes[f] -- else: -- raise FileNotFound(fname) -- -+ elif f in requiredDistfiles: -+ raise FileNotFound(fname) - def _pkgdir_category(self): - return self.pkgdir.rstrip(os.sep).split(os.sep)[-2] - - diff --git a/sys-apps/portage/files/2.1/pre8/1080_r3142_bug_129839_digestcheck.patch b/sys-apps/portage/files/2.1/pre8/1080_r3142_bug_129839_digestcheck.patch deleted file mode 100644 index cc3a4dcb2177..000000000000 --- a/sys-apps/portage/files/2.1/pre8/1080_r3142_bug_129839_digestcheck.patch +++ /dev/null @@ -1,84 +0,0 @@ -=== modified file 'pym/portage.py' ---- pym/portage.py -+++ pym/portage.py -@@ -2163,33 +2163,31 @@ - """Verifies checksums. Assumes all files have been downloaded. - DEPRECATED: this is now only a compability wrapper for - portage_manifest.Manifest().""" -- -+ if not strict: -+ return 1 - pkgdir = mysettings["O"] -+ manifest_path = os.path.join(pkgdir, "Manifest") -+ if not os.path.exists(manifest_path): -+ writemsg("!!! Manifest file not found: '%s'\n" % manifest_path) -+ if strict: -+ return 0 - mf = Manifest(pkgdir, FetchlistDict(pkgdir, mysettings), mysettings["DISTDIR"]) - try: -- if strict: -- print ">>> checking ebuild checksums", -- mf.checkTypeHashes("EBUILD") -- print ":-)" -- print ">>> checking auxfile checksums", -- mf.checkTypeHashes("AUX") -- print ":-)" -- print ">>> checking miscfile checksums", -- mf.checkTypeHashes("MISC", ignoreMissingFiles=True) -- print ":-)" -+ writemsg_stdout(">>> checking ebuild checksums\n") -+ mf.checkTypeHashes("EBUILD") -+ writemsg_stdout(">>> checking auxfile checksums\n") -+ mf.checkTypeHashes("AUX") -+ writemsg_stdout(">>> checking miscfile checksums\n") -+ mf.checkTypeHashes("MISC", ignoreMissingFiles=True) -+ writemsg_stdout(">>> checking distfiles checksums\n") - for f in myfiles: -- if f.startswith("files/"): -- f = f[5:] -- print ">>> checking %s checksums" % f, -- mf.checkFileHashes(mf.findFile(f), f) -- print ":-)" -+ mf.checkFileHashes(mf.findFile(f), f) - except portage_exception.DigestException, e: -- print e.value -- print red("!!! ")+"Digest verification failed:" -- print red("!!! ")+" "+e.value[0] -- print red("!!! ")+"Reason: "+e.value[1] -- print red("!!! ")+"Got: "+str(e.value[2]) -- print red("!!! ")+"Expected: "+str(e.value[3]) -+ writemsg("!!! Digest verification failed:\n") -+ writemsg("!!! %s\n" % e.value[0]) -+ writemsg("!!! Reason: %s\n" % e.value[1]) -+ writemsg("!!! Got: %s\n" % e.value[2]) -+ writemsg("!!! Expected: %s\n" % e.value[3]) - return 0 - return 1 - - -=== modified file 'pym/portage_manifest.py' ---- pym/portage_manifest.py -+++ pym/portage_manifest.py -@@ -86,11 +86,16 @@ - - def _read(self): - """ Parse Manifest file for this instance """ -- if not os.path.exists(self.getFullname()): -- return -- fd = open(self.getFullname(), "r") -- mylines = fd.readlines() -- fd.close() -+ mylines = [] -+ try: -+ fd = open(self.getFullname(), "r") -+ mylines.extend(fd.readlines()) -+ fd.close() -+ except (OSError, IOError), e: -+ if e.errno == errno.ENOENT: -+ pass -+ else: -+ raise - mylines.extend(self._readDigests().split("\n")) - self._parseDigests(mylines, myhashdict=self.fhashdict) - - diff --git a/sys-apps/portage/files/2.1/pre8/1090_r3146_bug_129720_slot_collision.patch b/sys-apps/portage/files/2.1/pre8/1090_r3146_bug_129720_slot_collision.patch deleted file mode 100644 index a3e0fa87c315..000000000000 --- a/sys-apps/portage/files/2.1/pre8/1090_r3146_bug_129720_slot_collision.patch +++ /dev/null @@ -1,38 +0,0 @@ -=== modified file 'pym/portage.py' ---- pym/portage.py -+++ pym/portage.py -@@ -2312,6 +2312,7 @@ - if mysplit is None: - writemsg("!!! Error: PF is null '%s'; exiting.\n" % mypv) - return 1 -+ slot = mysettings["SLOT"] - if mydo != "depend": - # XXX: We're doing a little hack here to curtain the gvisible locking - # XXX: that creates a deadlock... Really need to isolate that. -@@ -2319,6 +2320,7 @@ - mysettings.setcpv(mycpv,use_cache=use_cache) - - mysettings["EBUILD_PHASE"] = mydo -+ mysettings["SLOT"] = slot - - if debug: # Otherwise it overrides emerge's settings. - # We have no other way to set debug... debug can't be passed in -@@ -2365,8 +2367,6 @@ - mysettings["PVR"]=mysplit[1] - else: - mysettings["PVR"]=mysplit[1]+"-"+mysplit[2] -- -- mysettings["SLOT"]="" - - if mysettings.has_key("PATH"): - mysplit=string.split(mysettings["PATH"],":") -@@ -5797,7 +5797,7 @@ - myslot = self.settings["SLOT"] - for v in otherversions: - # only allow versions with same slot to overwrite files -- if myslot == db[self.myroot]["vartree"].dbapi.aux_get(self.mycpv, ["SLOT"])[0]: -+ if myslot == db[self.myroot]["vartree"].dbapi.aux_get("/".join((self.cat, v)), ["SLOT"])[0]: - mypkglist.append(dblink(self.cat,v,destroot,self.settings)) - - print green("*")+" checking "+str(len(myfilelist))+" files for package collisions" - diff --git a/sys-apps/portage/files/2.1/pre8/1100_r3143_lazy_autouse.patch b/sys-apps/portage/files/2.1/pre8/1100_r3143_lazy_autouse.patch deleted file mode 100644 index f49ab5eb23a7..000000000000 --- a/sys-apps/portage/files/2.1/pre8/1100_r3143_lazy_autouse.patch +++ /dev/null @@ -1,45 +0,0 @@ -=== modified file 'pym/portage.py' ---- pym/portage.py -+++ pym/portage.py -@@ -1402,8 +1402,20 @@ - if mykey=="USE": - mydbs=self.uvlist - # XXX Global usage of db... Needs to go away somehow. -+ global db, root - if "auto" in self["USE_ORDER"].split(":") and db.has_key(root) and db[root].has_key("vartree"): -- self.configdict["auto"]["USE"]=autouse(db[root]["vartree"],use_cache=use_cache) -+ class LazyAutouse(object): -+ def __init__(self, *pargs, **kwargs): -+ self._use = None -+ self._pargs = pargs -+ self._kwargs = kwargs -+ def __call__(self): -+ if self._use is None: -+ global db, root -+ self._use = autouse(db[root]["vartree"], *self._pargs, **self._kwargs) -+ return self._use -+ self.configdict["auto"] = portage_util.LazyItemsDict(self.configdict["auto"]) -+ self.configdict["auto"].addLazyItem("USE", LazyAutouse(use_cache=use_cache)) - else: - self.configdict["auto"]["USE"]="" - else: - -=== modified file 'pym/portage_util.py' ---- pym/portage_util.py -+++ pym/portage_util.py -@@ -715,9 +715,13 @@ - """A mapping object that behaves like a standard dict except that it allows - for lazy initialization of values via callable objects. Lazy items can be - overwritten and deleted just as normal items.""" -- def __init__(self): -+ def __init__(self, initial_items=None): - dict.__init__(self) - self.lazy_items = {} -+ if initial_items is not None: -+ self.update(initial_items) -+ if isinstance(initial_items, LazyItemsDict): -+ self.lazy_items.update(initial_items.lazy_items) - def addLazyItem(self, item_key, value_callable): - """Add a lazy item for the given key. When the item is requested, - value_callable will be called with no arguments.""" - diff --git a/sys-apps/portage/files/2.1/pre8/1110_r3147_bug_129852_chflags.patch b/sys-apps/portage/files/2.1/pre8/1110_r3147_bug_129852_chflags.patch deleted file mode 100644 index 7474279b7f23..000000000000 --- a/sys-apps/portage/files/2.1/pre8/1110_r3147_bug_129852_chflags.patch +++ /dev/null @@ -1,49 +0,0 @@ -=== modified file 'pym/portage.py' ---- pym/portage.py -+++ pym/portage.py -@@ -2850,12 +2850,13 @@ - if bsd_chflags: - # Check that we can actually unset schg etc flags... - # Clear the flags on source and destination; we'll reinstate them after merging -- if(destexists): -+ if destexists and sflags != 0: - if bsd_chflags.lchflags(dest, 0) < 0: - writemsg("!!! Couldn't clear flags on file being merged: \n ") - # We might have an immutable flag on the parent dir; save and clear. - pflags=bsd_chflags.lgetflags(os.path.dirname(dest)) -- bsd_chflags.lchflags(os.path.dirname(dest), 0) -+ if pflags != 0: -+ bsd_chflags.lchflags(os.path.dirname(dest), 0) - - # Don't bother checking the return value here; if it fails then the next line will catch it. - bsd_chflags.lchflags(src, 0) -@@ -2891,7 +2892,8 @@ - lchown(dest,sstat[stat.ST_UID],sstat[stat.ST_GID]) - if bsd_chflags: - # Restore the flags we saved before moving -- if bsd_chflags.lchflags(dest, sflags) < 0 or bsd_chflags.lchflags(os.path.dirname(dest), pflags) < 0: -+ if (sflags != 0 and bsd_chflags.lchflags(dest, sflags) < 0) or \ -+ (pflags and bsd_chflags.lchflags(os.path.dirname(dest), pflags) < 0): - writemsg("!!! Couldn't restore flags ("+str(flags)+") on " + dest+":\n") - writemsg("!!! %s\n" % str(e)) - return None -@@ -2973,7 +2975,8 @@ - - if bsd_chflags: - # Restore the flags we saved before moving -- if bsd_chflags.lchflags(dest, sflags) < 0 or bsd_chflags.lchflags(os.path.dirname(dest), pflags) < 0: -+ if (sflags != 0 and bsd_chflags.lchflags(dest, sflags) < 0) or \ -+ (pflags and bsd_chflags.lchflags(os.path.dirname(dest), pflags) < 0): - writemsg("!!! Couldn't restore flags ("+str(sflags)+") on " + dest+":\n") - return None - -@@ -6111,7 +6114,7 @@ - if bsd_chflags: - # Save then clear flags on dest. - dflags=bsd_chflags.lgetflags(mydest) -- if(bsd_chflags.lchflags(mydest, 0)<0): -+ if dflags != 0 and bsd_chflags.lchflags(mydest, 0) < 0: - writemsg("!!! Couldn't clear flags on '"+mydest+"'.\n") - - if not os.access(mydest, os.W_OK): - diff --git a/sys-apps/portage/files/digest-portage-2.1_pre8-r5 b/sys-apps/portage/files/digest-portage-2.1_pre8-r5 deleted file mode 100644 index 0766c33a8e88..000000000000 --- a/sys-apps/portage/files/digest-portage-2.1_pre8-r5 +++ /dev/null @@ -1,3 +0,0 @@ -MD5 9e46a3fdb720c1d746525f82e74c3eaa portage-2.1_pre8.tar.bz2 258150 -RMD160 4cfb15ee4fcddae8b53166a810649a98349591ea portage-2.1_pre8.tar.bz2 258150 -SHA256 b5c2d9c0af4f392b3b8e0325ad6b76d908c11ddb32019117155fb4c2ef1a6804 portage-2.1_pre8.tar.bz2 258150 diff --git a/sys-apps/portage/portage-2.1_pre8-r5.ebuild b/sys-apps/portage/portage-2.1_pre8-r5.ebuild deleted file mode 100644 index a01b13f1167e..000000000000 --- a/sys-apps/portage/portage-2.1_pre8-r5.ebuild +++ /dev/null @@ -1,206 +0,0 @@ -# Copyright 1999-2006 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/portage/portage-2.1_pre8-r5.ebuild,v 1.2 2006/04/16 20:10:25 blubb Exp $ - -inherit toolchain-funcs - -DESCRIPTION="The Portage Package Management System. The primary package management and distribution system for Gentoo." -HOMEPAGE="http://www.gentoo.org/" -SRC_URI="mirror://gentoo/${PN}-${PV}.tar.bz2 http://dev.gentoo.org/~zmedico/portage/archives/${PN}-${PV}.tar.bz2" -LICENSE="GPL-2" - -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc-macos ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd" - -SLOT="0" -IUSE="build doc selinux" -DEPEND=">=dev-lang/python-2.3" -RDEPEND="!build? ( >=sys-apps/sed-4.0.5 \ - dev-python/python-fchksum \ - >=dev-lang/python-2.3 \ - userland_GNU? ( sys-apps/debianutils ) \ - >=app-shells/bash-2.05a ) \ - elibc_glibc? ( sys-apps/sandbox ) - elibc_uclibc? ( sys-apps/sandbox ) - !userland_Darwin? ( >=app-misc/pax-utils-0.1.10 ) - selinux? ( >=dev-python/python-selinux-2.15 ) \ - doc? ( app-portage/portage-manpages ) - >=dev-python/pycrypto-2.0.1-r4" - -PROVIDE="virtual/portage" - -S=${WORKDIR}/${PN}-${PV} - -portage_docs() { - einfo "" - einfo "For help with using portage please consult the Gentoo Handbook" - einfo "at http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=3" - einfo "" -} - -src_unpack() { - unpack ${A} - cd "${S}" - local my_patches="1000_r3120_fetchlist_dict.patch - 1010_r3123_manifest2_fixes.patch - 1020_r3118_bug_121368.patch - 1030_r3128_bug_129559_qmerge.patch - 1040_r3126_bug_129244_ebuild_phase.patch - 1050_r3133_lazy_items.patch - 1060_r3134_porttrees_realpath.patch - 1070_r3136_bug_129737_digest.patch - 1080_r3142_bug_129839_digestcheck.patch - 1090_r3146_bug_129720_slot_collision.patch - 1100_r3143_lazy_autouse.patch - 1110_r3147_bug_129852_chflags.patch" - local patches_dir="${PV%_*}/${PV/*_}" - for patch_name in ${my_patches}; do - einfo "Applying ${patch_name} ..." - patch -p0 --no-backup-if-mismatch < \ - "${FILESDIR}"/${patches_dir}/${patch_name} >/dev/null || \ - die "Failed to apply patch" - done - if [ "${PR}" != "r0" ]; then - einfo "Setting portage.VERSION to ${PVR} ..." - sed -i "s/^VERSION=.*/VERSION=\"${PVR}\"/" pym/portage.py || \ - die "Failed to patch portage.VERSION" - fi -} - -src_compile() { - python -O -c "import compileall; compileall.compile_dir('${S}/pym')" - - cd "${S}"/src - $(tc-getCC) ${CFLAGS} ${LDFLAGS} -o tbz2tool tbz2tool.c || \ - die "Failed to build tbz2tool" - - if ! use userland_Darwin; then - cd "${S}"/src/python-missingos - chmod +x setup.py - ./setup.py build || die "Failed to build missingos module" - fi - - if use elibc_FreeBSD; then - cd "${S}"/src/bsd-flags - chmod +x setup.py - ./setup.py build || die "Failed to install bsd-chflags module" - fi -} - -src_install() { - cd "${S}"/cnf - insinto /etc - doins etc-update.conf dispatch-conf.conf make.globals - if [ -f "make.conf.${ARCH}".diff ]; then - patch make.conf "make.conf.${ARCH}".diff || \ - die "Failed to patch make.conf.example" - newins make.conf make.conf.example - else - eerror "" - eerror "Portage does not have an arch-specific configuration for this arch." - eerror "Please notify the arch maintainer about this issue. Using generic." - eerror "" - newins make.conf make.conf.example - fi - - if ! use userland_Darwin; then - cd "${S}"/src/python-missingos - ./setup.py install --root ${D} || \ - die "Failed to install missingos module" - fi - - if use elibc_FreeBSD; then - cd "${S}"/src/bsd-flags - ./setup.py install --root ${D} || \ - die "Failed to install bsd-chflags module" - fi - - dodir /usr/lib/portage/bin - exeinto /usr/lib/portage/bin - cd "${S}"/bin - doexe * - doexe "${S}"/src/tbz2tool - dosym newins /usr/lib/portage/bin/donewins - - for mydir in pym pym/cache pym/elog_modules; do - dodir /usr/lib/portage/${mydir} - insinto /usr/lib/portage/${mydir} - cd "${S}"/${mydir} - doins *.py *.pyo - done - - doman "${S}"/man/*.[0-9] - dodoc "${S}"/ChangeLog - dodoc "${S}"/NEWS - dodoc "${S}"/RELEASE-NOTES - - dodir /usr/bin - for x in ebuild emerge portageq repoman tbz2tool xpak; do - dosym ../lib/portage/bin/${x} /usr/bin/${x} - done - - dodir /usr/sbin - local my_syms="archive-conf - dispatch-conf - emaint - emerge-webrsync - env-update - etc-update - fixpackages - quickpkg - regenworld" - for x in ${my_syms}; do - dosym ../lib/portage/bin/${x} /usr/sbin/${x} - done - - dodir /etc/portage - keepdir /etc/portage - - doenvd "${FILESDIR}"/05portage.envd -} - -pkg_preinst() { - if has livecvsportage ${FEATURES} && [ "${ROOT}" = "/" ]; then - rm -rf ${IMAGE}/usr/lib/portage/pym/* - mv ${IMAGE}/usr/lib/portage/bin/tbz2tool ${T} - rm -rf ${IMAGE}/usr/lib/portage/bin/* - mv ${T}/tbz2tool ${IMAGE}/usr/lib/portage/bin/ - else - for mydir in pym pym/cache pym/elog_modules; do - rm /usr/lib/portage/${mydir}/*.pyc >& /dev/null - rm /usr/lib/portage/${mydir}/*.pyo >& /dev/null - done - fi -} - -pkg_postinst() { - local x - - if [ ! -f "${ROOT}/var/lib/portage/world" ] && - [ -f ${ROOT}/var/cache/edb/world ] && - [ ! -h ${ROOT}/var/cache/edb/world ]; then - mv ${ROOT}/var/cache/edb/world ${ROOT}/var/lib/portage/world - ln -s ../../lib/portage/world /var/cache/edb/world - fi - - for x in ${ROOT}etc/._cfg????_make.globals; do - # Overwrite the globals file automatically. - [ -e "${x}" ] && mv -f "${x}" "${ROOT}etc/make.globals" - done - - ewarn "This series contains a completely rewritten caching framework." - ewarn "If you are using any cache modules (such as the CDB cache" - ewarn "module) portage will not work until they have been disabled." - echo - einfo "The default cache format has changed between 2.0.x and 2.1" - einfo "versions. If you have upgraded from 2.0.x, before using" - einfo "emerge, run \`emerge --metadata\` to restore portage's local" - einfo "cache." - echo - einfo "Flag ordering has changed for \`emerge --pretend --verbose\`." - einfo "Add EMERGE_DEFAULT_OPTS=\"--alphabetical\" to /etc/make.conf" - einfo "to restore the previous ordering." - echo - einfo "See NEWS and RELEASE-NOTES for further changes." - - portage_docs -} |