move DEFAULT_PATH to globals.
authorKito <kito@gentoo.org>
Wed, 15 Mar 2006 19:27:40 +0000 (19:27 -0000)
committerKito <kito@gentoo.org>
Wed, 15 Mar 2006 19:27:40 +0000 (19:27 -0000)
svn path=/main/branches/prefix/; revision=2896

bin/ebuild.sh
cnf/make.globals
pym/portage.py
pym/portage_const.py
pym/portage_exec.py

index 07b91aa317ca73ac53b2a603f356d28b8bf2dcd6..c1bb3d64e2579c3e8ba2e2cd9f3036c35a18e687 100755 (executable)
@@ -47,7 +47,7 @@ fi
 [ ! -z "$OCC" ] && export CC="$OCC"
 [ ! -z "$OCXX" ] && export CXX="$OCXX"
 
-export PATH="${PREFIX}/sbin:${PREFIX}/usr/sbin:@PORTAGE_BASE@/bin:${PREFIX}/bin:${PREFIX}/usr/bin:${ROOTPATH}"
+export PATH="${DEFAULT_PATH}:${ROOTPATH}"
 [ ! -z "$PREROOTPATH" ] && export PATH="${PREROOTPATH%%:}:$PATH"
 
 source @PORTAGE_BASE@/bin/isolated-functions.sh &>/dev/null
index 1224e37689df1aff7794cc54e465e2c2ed8a5585..c8c49eb82618c974810a453c09aa56eeedec103f 100644 (file)
@@ -64,6 +64,8 @@ USE_ORDER="env:pkg:conf:defaults"
 PORTAGE_INST_UID="@rootuid@"
 PORTAGE_INST_GID="@wheelgid@"
 
+# Default PATH for ebuild env
+DEFAULT_PATH="@DOMAIN_PREFIX@/sbin:@DOMAIN_PREFIX@/usr/sbin:@DOMAIN_PREFIX@/bin:@DOMAIN_PREFIX@/usr/bin:@PORTAGE_BASE@/bin"
 #            *****************************
 #            **  DO NOT EDIT THIS FILE  **
 # ***************************************************
index a2bc94443d4f35d20cdeeb5a0939d535c1a32c3f..2196941ded1fcf9fce0b518e7f4e9ddcfd9d4152 100644 (file)
@@ -567,7 +567,7 @@ def env_update(makelinks=1):
                        continue
                myconfig=getconfig(root+portage_const.PREFIX+"/etc/env.d/"+x)
                if myconfig==None:
-                       writemsg("!!! Parsing error in "+str(root)+portage_const.PREFIX+"etc/env.d/"+str(x)+"\n")
+                       writemsg("!!! Parsing error in "+str(root)+portage_const.PREFIX+"/etc/env.d/"+str(x)+"\n")
                        #parse error
                        continue
                # process PATH, CLASSPATH, LDPATH
@@ -616,7 +616,7 @@ def env_update(makelinks=1):
                newprelink.write("# prelink.conf autogenerated by env-update; make all changes to\n")
                newprelink.write("# contents of "+portage_const.PREFIX+"/etc/env.d directory\n")
 
-               for x in map(lambda x: portage_const.PREFIX+x, ["bin","/sbin","/usr/bin","/usr/sbin","/lib","/usr/lib"]):
+               for x in map(lambda x: os.path.join(portage_const.PREFIX,x), ["bin","sbin","usr/bin","usr/sbin","lib","usr/lib"]):
                        newprelink.write("-l "+x+"\n");
                for x in specials["LDPATH"]+specials["PATH"]+specials["PRELINK_PATH"]:
                        if not x:
@@ -1093,21 +1093,14 @@ class config:
                        self.configlist.append({})
                        self.configdict["auto"]=self.configlist[-1]
 
-                       try:
-                               portage_const.DEFAULT_PATH=portage_const.DEFAULT_PATH+":"+self.mygcfg["ROOTPATH"]
-                       except KeyError:
-                               pass
                        #backup-env (for recording our calculated incremental variables:)
                        self.backupenv = os.environ.copy()
                        self.configlist.append(self.backupenv) # XXX Why though?
-                       self.configlist[-1]["PATH"] = portage_const.DEFAULT_PATH
                        self.configdict["backupenv"]=self.configlist[-1]
 
                        self.configlist.append(os.environ.copy())
-                       self.configlist[-1]["PATH"] = portage_const.DEFAULT_PATH
                        self.configdict["env"]=self.configlist[-1]
 
-
                        # make lookuplist for loading package.*
                        self.lookuplist=self.configlist[:]
                        self.lookuplist.reverse()
@@ -1229,6 +1222,9 @@ class config:
                self.configdict["env"]["PORTAGE_GID"]=str(portage_gid)
                self.backupenv["PORTAGE_GID"]=str(portage_gid)
 
+               self.configdict["env"]["PATH"]=self["DEFAULT_PATH"]
+               self.backupenv["PATH"]=self["DEFAULT_PATH"]
+
                if self.has_key("PORT_LOGDIR") and not self["PORT_LOGDIR"]:
                        # port_logdir is defined, but empty.  this causes a traceback in doebuild.
                        writemsg(yellow("!!!")+" PORT_LOGDIR was defined, but set to nothing.\n")
index b89d6cffcabd2247f1792c20b9dee4d550624b57..4cb3d64adf0fdcea0012aa6349564f66b81e9d07 100644 (file)
@@ -50,8 +50,6 @@ INCREMENTALS=["USE","USE_EXPAND","USE_EXPAND_HIDDEN","FEATURES","ACCEPT_KEYWORDS
 STICKIES=["KEYWORDS_ACCEPT","USE","CFLAGS","CXXFLAGS","MAKEOPTS","EXTRA_ECONF","EXTRA_EINSTALL","EXTRA_EMAKE"]
 EBUILD_PHASES                  = ["setup","unpack","compile","test","install","preinst","postinst","prerm","postrm"]
 
-DEFAULT_PATH = ":".join(map(lambda x: os.path.normpath(os.path.join(PREFIX, x)), ["sbin", "usr/sbin", "bin", "usr/bin"]))
-
 EAPI = "prefix"
 
 HASHING_BLOCKSIZE              = 32768
index 08614ed3220c5794f29e93bbb882387c74f1f339..31b3793968d5f856c343b528afdafcc2f4d4a4ba 100644 (file)
@@ -243,8 +243,7 @@ def _exec(binary, mycommand, opt_name, fd_pipes, env, gid, groups, uid, umask):
        os.execve(binary, myargs, env)
 
 def find_binary(binary):
-       from portage_const import DEFAULT_PATH
-       for path in DEFAULT_PATH.split(":"):
+       for path in os.getenv("PATH", "").split(":"):
                filename = "%s/%s" % (path, binary)
                if os.access(filename, os.X_OK) and os.path.isfile(filename):
                        return filename