diff options
author | Jason Stubbs <jstubbs@gentoo.org> | 2004-10-29 14:45:35 +0000 |
---|---|---|
committer | Jason Stubbs <jstubbs@gentoo.org> | 2004-10-29 14:45:35 +0000 |
commit | 6c97e50f22a45a1565fa213fdefccafaffab9d8a (patch) | |
tree | 395ab14684dc5c15de88449c75ecae051a674864 /bin/emerge | |
parent | Closing out (#69388), using solution provided in said bug. (diff) | |
download | portage-cvs-6c97e50f22a45a1565fa213fdefccafaffab9d8a.tar.gz portage-cvs-6c97e50f22a45a1565fa213fdefccafaffab9d8a.tar.bz2 portage-cvs-6c97e50f22a45a1565fa213fdefccafaffab9d8a.zip |
emerge: Fixed issue where emerge adds package to world when --onlydeps is
specified. #69260 Fixed issue where emerge was adding packages to world
when --uprade is specified even if the package is already installed. #69287
Fixed logic in path/to/ebuild check so that symlinks do not cause false
positives.
dispatch-conf: Added usata's fix for mac-os compatibility. #69304
getbinpkg.py: Reversed the logic of ftp passive-mode selection. #69371
Diffstat (limited to 'bin/emerge')
-rwxr-xr-x | bin/emerge | 15 |
1 files changed, 8 insertions, 7 deletions
@@ -1,7 +1,7 @@ #!/usr/bin/python -O # Copyright 1999-2004 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /local/data/ulm/cvs/history/var/cvsroot/gentoo-src/portage/bin/emerge,v 1.351 2004/10/28 13:37:08 jstubbs Exp $ +# $Header: /local/data/ulm/cvs/history/var/cvsroot/gentoo-src/portage/bin/emerge,v 1.352 2004/10/29 14:45:35 jstubbs Exp $ import os,sys os.environ["PORTAGE_CALLER"]="emerge" @@ -1011,7 +1011,7 @@ class depgraph: sys.exit(1) mytbz2=xpak.tbz2(x) mykey=mytbz2.getelements("CATEGORY")[0]+"/"+os.path.basename(x)[:-5] - if portage.db["/"]["bintree"].getname(mykey) != os.path.abspath(x): + if os.path.realpath(portage.db["/"]["bintree"].getname(mykey)) != os.path.realpath(x): print red("\n*** You need to adjust PKGDIR to emerge this package.\n") sys.exit(1) if not self.create(["binary",portage.root,mykey],None,"--onlydeps" not in myopts): @@ -1019,8 +1019,9 @@ class depgraph: elif not "--oneshot" in myopts: myfavorites.append(mykey) elif x[-7:]==".ebuild": - mykey=os.path.basename(os.path.abspath(x+"/../.."))+"/"+os.path.basename(x)[:-7] - if portage.db["/"]["porttree"].dbapi.findname(mykey) != os.path.abspath(x): + x = os.path.realpath(x) + mykey=os.path.basename(os.path.normpath(x+"/../.."))+"/"+os.path.basename(x)[:-7] + if os.path.realpath(portage.db["/"]["porttree"].dbapi.findname(mykey)) != x: print red("\n*** You need to adjust PORTDIR or PORTDIR_OVERLAY to emerge this package.\n") sys.exit(1) if mykey not in portage.db["/"]["porttree"].dbapi.xmatch("match-visible", portage.dep_getkey(mykey)): @@ -1728,8 +1729,7 @@ class depgraph: mymergelist.append(mylist[x]) else: myfavkey=portage.cpv_getkey(mylist[x][2]) - if "--update" in myopts and portage.db[portage.root]["vartree"].dbapi.match(myfavkey): - # It's already merged, so we don't add it if updating. + if "--onlydeps" in myopts: continue # Add to the world file. Since we won't be able to later. if (not "--fetchonly" in myopts) and (myfavkey in favorites): @@ -1865,7 +1865,8 @@ class depgraph: myfavdict=genericdict(myfavs) mysysdict=genericdict(syslist) #don't record if already in system profile or already recorded - if (not mysysdict.has_key(myfavkey)) and (not myfavdict.has_key(myfavkey)): + if ("--update" not in myopts or not portage.db[portage.root]["vartree"].dbapi.match(myfavkey)) and \ + (not mysysdict.has_key(myfavkey)) and (not myfavdict.has_key(myfavkey)): #we don't have a favorites entry for this package yet; add one myfavdict[myfavkey]=myfavkey print ">>> Recording",myfavkey,"in \"world\" favorites file..." |