diff options
author | Zac Medico <zmedico@gentoo.org> | 2009-03-11 03:50:20 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2009-03-11 03:50:20 +0000 |
commit | 7e2490ee01dcc0f61ea5b35d8218a6512cf63e77 (patch) | |
tree | 3f1acc8f92f7c1f03c03c70d9847997df097d096 | |
parent | a02b9529ea0b0210b0e525ac014871b598dc7c90 (diff) | |
download | portage-7e2490ee01dcc0f61ea5b35d8218a6512cf63e77.tar.gz portage-7e2490ee01dcc0f61ea5b35d8218a6512cf63e77.tar.bz2 portage-7e2490ee01dcc0f61ea5b35d8218a6512cf63e77.zip |
Add new EAPI 3_pre1 value, and disable unpack() support for *.xz for earlier
EAPI values. (trunk r12596)
svn path=/main/branches/2.1.6/; revision=12877
-rwxr-xr-x | bin/ebuild.sh | 13 | ||||
-rw-r--r-- | pym/portage/__init__.py | 4 |
2 files changed, 13 insertions, 4 deletions
diff --git a/bin/ebuild.sh b/bin/ebuild.sh index 20bf0d389..e4ba92837 100755 --- a/bin/ebuild.sh +++ b/bin/ebuild.sh @@ -334,6 +334,7 @@ unpack() { local y local myfail local tar_opts="" + local eapi=${EAPI:-0} [ -z "$*" ] && die "Nothing passed to the 'unpack' command" for x in "$@"; do @@ -435,11 +436,15 @@ unpack() { fi ;; xz) - if [ "${y}" == "tar" ]; then - xz -dc "${srcdir}${x}" | tar xof - ${tar_opts} - assert "$myfail" + if hasq $eapi 0 1 2 ; then + vecho "unpack ${x}: file format not recognized. Ignoring." else - xz -dc "${srcdir}${x}" > ${x%.*} || die "$myfail" + if [ "${y}" == "tar" ]; then + xz -dc "${srcdir}${x}" | tar xof - ${tar_opts} + assert "$myfail" + else + xz -dc "${srcdir}${x}" > ${x%.*} || die "$myfail" + fi fi ;; *) diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py index 2f9006138..ae4e7a120 100644 --- a/pym/portage/__init__.py +++ b/pym/portage/__init__.py @@ -4809,6 +4809,7 @@ def _spawn_misc_sh(mysettings, commands, **kwargs): eerror(l, phase=mydo, key=mysettings.mycpv) return rval +_testing_eapis = frozenset(["3_pre1"]) _deprecated_eapis = frozenset(["2_pre3", "2_pre2", "2_pre1"]) def _eapi_is_deprecated(eapi): @@ -4820,6 +4821,9 @@ def eapi_is_supported(eapi): if _eapi_is_deprecated(eapi): return True + if eapi in _testing_eapis: + return True + try: eapi = int(eapi) except ValueError: |