Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 274861 Details for
Bug 368865
remove EMERGE_FROM in EAPI=4
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
supress EMERGE_FROM in ebuild/eclass where MERGE_TYPE is available
0001-suppress-EMERGE_FROM-in-EAPIs-that-don-t-need-it.patch (text/plain), 7.34 KB, created by
Brian Harring (RETIRED)
on 2011-05-28 08:50:27 UTC
(
hide
)
Description:
supress EMERGE_FROM in ebuild/eclass where MERGE_TYPE is available
Filename:
MIME Type:
Creator:
Brian Harring (RETIRED)
Created:
2011-05-28 08:50:27 UTC
Size:
7.34 KB
patch
obsolete
>From 1548e9005455464de5304bb44d74a7d2d1cd4d3b Mon Sep 17 00:00:00 2001 >From: Brian Harring <ferringb@gmail.com> >Date: Sat, 28 May 2011 01:45:29 -0700 >Subject: [PATCH] suppress EMERGE_FROM in EAPIs that don't need it > >--- > bin/ebuild.sh | 21 +++++++++++++------ > bin/isolated-functions.sh | 2 +- > pym/_emerge/Binpkg.py | 2 +- > pym/_emerge/EbuildBuild.py | 2 +- > pym/_emerge/Scheduler.py | 4 +- > .../package/ebuild/_config/special_env_vars.py | 6 ++-- > pym/portage/package/ebuild/doebuild.py | 4 +- > 7 files changed, 24 insertions(+), 17 deletions(-) > >diff --git a/bin/ebuild.sh b/bin/ebuild.sh >index 37a3084..273d2b2 100755 >--- a/bin/ebuild.sh >+++ b/bin/ebuild.sh >@@ -690,9 +690,16 @@ ebuild_phase() { > > ebuild_phase_with_hooks() { > local x phase_name=${1} >- for x in {pre_,,post_}${phase_name} ; do >- ebuild_phase ${x} >- done >+ >+ # only export EMERGE_FROM to eapi's lack MERGE_TYPE, but export >+ # it to hooks in full >+ EMERGE_FROM="${PORTAGE_EMERGE_FROM}" ebuild_phase pre_${phase_name} >+ if has ${EAPI} 0 1 2 3; then >+ EMERGE_FROM="${PORTAGE_EMERGE_FROM}" ebuild_phase ${phase_name} >+ else >+ ebuild_phase ${phase_name} >+ fi >+ EMERGE_FROM="${PORTAGE_EMERGE_FROM}" ebuild_phase post_${phase_name} > } > > dyn_pretend() { >@@ -785,12 +792,12 @@ dyn_clean() { > rm -rf "${PORTAGE_BUILDDIR}/image" "${PORTAGE_BUILDDIR}/homedir" > rm -f "${PORTAGE_BUILDDIR}/.installed" > >- if [[ $EMERGE_FROM = binary ]] || \ >+ if [[ $PORTAGE_EMERGE_FROM = binary ]] || \ > ! hasq keeptemp $FEATURES && ! hasq keepwork $FEATURES ; then > rm -rf "${T}" > fi > >- if [[ $EMERGE_FROM = binary ]] || ! hasq keepwork $FEATURES; then >+ if [[ $PORTAGE_EMERGE_FROM = binary ]] || ! hasq keepwork $FEATURES; then > rm -f "$PORTAGE_BUILDDIR"/.{ebuild_changed,logid,pretended,setuped,unpacked,prepared} \ > "$PORTAGE_BUILDDIR"/.{configured,compiled,tested,packaged} \ > "$PORTAGE_BUILDDIR"/.die_hooks \ >@@ -1362,7 +1369,7 @@ inherit() { > > if [ "${EBUILD_PHASE}" != "depend" ] && \ > [[ ${EBUILD_PHASE} != *rm ]] && \ >- [[ ${EMERGE_FROM} != "binary" ]] ; then >+ [[ ${PORTAGE_EMERGE_FROM} != "binary" ]] ; then > # This is disabled in the *rm phases because they frequently give > # false alarms due to INHERITED in /var/db/pkg being outdated > # in comparison the the eclasses from the portage tree. >@@ -1743,7 +1750,7 @@ PORTAGE_READONLY_METADATA="DEFINED_PHASES DEPEND DESCRIPTION > PDEPEND PROVIDE RDEPEND RESTRICT SLOT SRC_URI" > > PORTAGE_READONLY_VARS="D EBUILD EBUILD_PHASE \ >- EBUILD_SH_ARGS ECLASSDIR EMERGE_FROM FILESDIR MERGE_TYPE \ >+ EBUILD_SH_ARGS ECLASSDIR PORTAGE_EMERGE_FROM FILESDIR MERGE_TYPE \ > PM_EBUILD_HOOK_DIR \ > PORTAGE_ACTUAL_DISTDIR PORTAGE_ARCHLIST PORTAGE_BASHRC \ > PORTAGE_BINPKG_FILE PORTAGE_BINPKG_TAR_OPTS PORTAGE_BINPKG_TMPFILE \ >diff --git a/bin/isolated-functions.sh b/bin/isolated-functions.sh >index 24443ac..857fbcb 100644 >--- a/bin/isolated-functions.sh >+++ b/bin/isolated-functions.sh >@@ -182,7 +182,7 @@ die() { > eerror " ${x}" > done > fi >- if [ "${EMERGE_FROM}" != "binary" ] && \ >+ if [ "${PORTAGE_EMERGE_FROM}" != "binary" ] && \ > ! hasq ${EBUILD_PHASE} prerm postrm && \ > [ "${EBUILD#${PORTDIR}/}" == "${EBUILD}" ] ; then > local overlay=${EBUILD%/*} >diff --git a/pym/_emerge/Binpkg.py b/pym/_emerge/Binpkg.py >index 1ed5c1f..cb38942 100644 >--- a/pym/_emerge/Binpkg.py >+++ b/pym/_emerge/Binpkg.py >@@ -55,7 +55,7 @@ class Binpkg(CompositeTask): > (dir_path, self.settings['PORTAGE_BUILDDIR'])) > self._build_dir = EbuildBuildDir( > scheduler=self.scheduler, settings=settings) >- settings.configdict["pkg"]["EMERGE_FROM"] = "binary" >+ settings.configdict["pkg"]["PORTAGE_EMERGE_FROM"] = "binary" > settings.configdict["pkg"]["MERGE_TYPE"] = "binary" > > if eapi_exports_replace_vars(settings["EAPI"]): >diff --git a/pym/_emerge/EbuildBuild.py b/pym/_emerge/EbuildBuild.py >index a678ede..fbab823 100644 >--- a/pym/_emerge/EbuildBuild.py >+++ b/pym/_emerge/EbuildBuild.py >@@ -42,7 +42,7 @@ class EbuildBuild(CompositeTask): > self._tree = tree > portdb = root_config.trees[tree].dbapi > settings.setcpv(pkg) >- settings.configdict["pkg"]["EMERGE_FROM"] = "ebuild" >+ settings.configdict["pkg"]["PORTAGE_EMERGE_FROM"] = "ebuild" > if self.opts.buildpkgonly: > settings.configdict["pkg"]["MERGE_TYPE"] = "buildonly" > else: >diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py >index b10439a..5bca447 100644 >--- a/pym/_emerge/Scheduler.py >+++ b/pym/_emerge/Scheduler.py >@@ -1011,7 +1011,7 @@ class Scheduler(PollScheduler): > os.makedirs(infloc) > portage.xpak.tbz2(tbz2_file).unpackinfo(infloc) > ebuild_path = os.path.join(infloc, x.pf + ".ebuild") >- settings.configdict["pkg"]["EMERGE_FROM"] = "binary" >+ settings.configdict["pkg"]["PORTAGE_EMERGE_FROM"] = "binary" > settings.configdict["pkg"]["MERGE_TYPE"] = "binary" > > else: >@@ -1020,7 +1020,7 @@ class Scheduler(PollScheduler): > ebuild_path = portdb.findname(x.cpv, myrepo=x.repo) > if ebuild_path is None: > raise AssertionError("ebuild not found for '%s'" % x.cpv) >- settings.configdict["pkg"]["EMERGE_FROM"] = "ebuild" >+ settings.configdict["pkg"]["PORTAGE_EMERGE_FROM"] = "ebuild" > if self._build_opts.buildpkgonly: > settings.configdict["pkg"]["MERGE_TYPE"] = "buildonly" > else: >diff --git a/pym/portage/package/ebuild/_config/special_env_vars.py b/pym/portage/package/ebuild/_config/special_env_vars.py >index 0214c86..64f7275 100644 >--- a/pym/portage/package/ebuild/_config/special_env_vars.py >+++ b/pym/portage/package/ebuild/_config/special_env_vars.py >@@ -13,8 +13,8 @@ import re > # configuration files. > env_blacklist = frozenset(( > "A", "AA", "CATEGORY", "DEPEND", "DESCRIPTION", "EAPI", >- "EBUILD_PHASE", "ED", "EMERGE_FROM", "EPREFIX", "EROOT", >- "HOMEPAGE", "INHERITED", "IUSE", >+ "EBUILD_PHASE", "ED", "PORTAGE_EMERGE_FROM", "EMERGE_FROM", "EPREFIX", >+ "EROOT", "HOMEPAGE", "INHERITED", "IUSE", > "KEYWORDS", "LICENSE", "MERGE_TYPE", > "PDEPEND", "PF", "PKGUSE", "PORTAGE_BACKGROUND", > "PORTAGE_BACKGROUND_UNMERGE", "PORTAGE_BUILDIR_LOCKED", >@@ -39,7 +39,7 @@ environ_whitelist += [ > "DISTDIR", "DOC_SYMLINKS_DIR", "EAPI", "EBUILD", > "EBUILD_FORCE_TEST", > "EBUILD_PHASE", "ECLASSDIR", "ECLASS_DEPTH", "ED", >- "EMERGE_FROM", "EPREFIX", "EROOT", >+ "PORTAGE_EMERGE_FROM", "EPREFIX", "EROOT", > "FEATURES", "FILESDIR", "HOME", "MERGE_TYPE", "NOCOLOR", "PATH", > "PKGDIR", > "PKGUSE", "PKG_LOGDIR", "PKG_TMPDIR", >diff --git a/pym/portage/package/ebuild/doebuild.py b/pym/portage/package/ebuild/doebuild.py >index 4cdd765..e68908a 100644 >--- a/pym/portage/package/ebuild/doebuild.py >+++ b/pym/portage/package/ebuild/doebuild.py >@@ -695,10 +695,10 @@ def doebuild(myebuild, mydo, myroot, mysettings, debug=0, listonly=0, > if eapi_exports_merge_type(mysettings["EAPI"]) and \ > "MERGE_TYPE" not in mysettings.configdict["pkg"]: > if tree == "porttree": >- mysettings.configdict["pkg"]["EMERGE_FROM"] = "ebuild" >+ mysettings.configdict["pkg"]["PORTAGE_EMERGE_FROM"] = "ebuild" > mysettings.configdict["pkg"]["MERGE_TYPE"] = "source" > elif tree == "bintree": >- mysettings.configdict["pkg"]["EMERGE_FROM"] = "binary" >+ mysettings.configdict["pkg"]["PORTAGE_EMERGE_FROM"] = "binary" > mysettings.configdict["pkg"]["MERGE_TYPE"] = "binary" > > if eapi_exports_replace_vars(mysettings["EAPI"]) and \ >-- >1.7.4.1 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 368865
:
274859
| 274861 |
274863
|
274887
|
274889