diff options
-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 8cb195383..7fcebe949 100644 --- a/pym/portage/__init__.py +++ b/pym/portage/__init__.py @@ -4819,6 +4819,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): @@ -4830,6 +4831,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: |