summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xbin/ebuild10
-rw-r--r--pym/portage/__init__.py5
2 files changed, 13 insertions, 2 deletions
diff --git a/bin/ebuild b/bin/ebuild
index a91a78587..00ef29512 100755
--- a/bin/ebuild
+++ b/bin/ebuild
@@ -17,7 +17,10 @@ force_help = "When used together with the digest or manifest " + \
"that do not already exist in ${DISTDIR} will be automatically fetched."
parser.add_option("--force", help=force_help, action="store_true", dest="force")
-parser.add_option("--debug", help="show debug output", action="store_true", dest="debug")
+parser.add_option("--debug", help="show debug output",
+ action="store_true", dest="debug")
+parser.add_option("--skip-manifest", help="skip all manifest checks",
+ action="store_true", dest="skip_manifest")
opts, pargs = parser.parse_args(args=sys.argv[1:])
@@ -152,6 +155,11 @@ if "test" in pargs:
tmpsettings["FEATURES"] = " ".join(tmpsettings.features)
tmpsettings.backup_changes("FEATURES")
+if opts.skip_manifest:
+ tmpsettings["EBUILD_SKIP_MANIFEST"] = "1"
+ tmpsettings.backup_changes("EBUILD_SKIP_MANIFEST")
+ portage._doebuild_manifest_exempt_depend += 1
+
build_dir_phases = set(["setup", "unpack", "compile",
"test", "install", "package", "rpm"])
diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py
index 6b35f1791..901edf924 100644
--- a/pym/portage/__init__.py
+++ b/pym/portage/__init__.py
@@ -3296,8 +3296,9 @@ def fetch(myuris, mysettings, listonly=0, fetchonly=0, locks_in_subdir=".locks",
if try_mirrors:
mymirrors += [x.rstrip("/") for x in mysettings["GENTOO_MIRRORS"].split() if x]
+ skip_manifest = mysettings.get("EBUILD_SKIP_MANIFEST") == "1"
pkgdir = mysettings.get("O")
- if pkgdir is not None:
+ if not (pkgdir is None or skip_manifest):
mydigests = Manifest(
pkgdir, mysettings["DISTDIR"]).getTypeDigests("DIST")
else:
@@ -4063,6 +4064,8 @@ def digestcheck(myfiles, mysettings, strict=0, justmanifest=0):
"""Verifies checksums. Assumes all files have been downloaded.
DEPRECATED: this is now only a compability wrapper for
portage.manifest.Manifest()."""
+ if mysettings.get("EBUILD_SKIP_MANIFEST") == "1":
+ return 1
pkgdir = mysettings["O"]
manifest_path = os.path.join(pkgdir, "Manifest")
if not os.path.exists(manifest_path):