From d55836d0c6676d970aaeb2b0901c2e381a12b030 Mon Sep 17 00:00:00 2001 From: Kito Date: Wed, 15 Mar 2006 19:27:40 +0000 Subject: [PATCH] move DEFAULT_PATH to globals. svn path=/main/branches/prefix/; revision=2896 --- bin/ebuild.sh | 2 +- cnf/make.globals | 2 ++ pym/portage.py | 14 +++++--------- pym/portage_const.py | 2 -- pym/portage_exec.py | 3 +-- 5 files changed, 9 insertions(+), 14 deletions(-) diff --git a/bin/ebuild.sh b/bin/ebuild.sh index 07b91aa31..c1bb3d64e 100755 --- a/bin/ebuild.sh +++ b/bin/ebuild.sh @@ -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 diff --git a/cnf/make.globals b/cnf/make.globals index 1224e3768..c8c49eb82 100644 --- a/cnf/make.globals +++ b/cnf/make.globals @@ -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 ** # *************************************************** diff --git a/pym/portage.py b/pym/portage.py index a2bc94443..2196941de 100644 --- a/pym/portage.py +++ b/pym/portage.py @@ -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") diff --git a/pym/portage_const.py b/pym/portage_const.py index b89d6cffc..4cb3d64ad 100644 --- a/pym/portage_const.py +++ b/pym/portage_const.py @@ -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 diff --git a/pym/portage_exec.py b/pym/portage_exec.py index 08614ed32..31b379396 100644 --- a/pym/portage_exec.py +++ b/pym/portage_exec.py @@ -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 -- 2.26.2