diff options
author | Joseph Hunkeler <jhunkeler@gmail.com> | 2013-07-29 16:27:38 -0400 |
---|---|---|
committer | Joseph Hunkeler <jhunkeler@gmail.com> | 2013-07-29 16:27:38 -0400 |
commit | 49394a3d01f05b92ea6635b0fd88f7a1d3a8b14a (patch) | |
tree | b552e604e02edcb9aadcda5ae651401919725f34 | |
parent | e73fba646a958b5bb70aae7fb6f1f3000bac804c (diff) | |
download | ipsutils-49394a3d01f05b92ea6635b0fd88f7a1d3a8b14a.tar.gz |
Feature: --nodepsolve disables dependency resolution (GOOD FOR META PACKAGING\!)
-rwxr-xr-x | ipsbuild.py | 1 | ||||
-rw-r--r-- | ipsutils/build.py | 5 | ||||
-rw-r--r-- | ipsutils/tasks.py | 5 |
3 files changed, 10 insertions, 1 deletions
diff --git a/ipsbuild.py b/ipsbuild.py index d9f8a21..b7ba895 100755 --- a/ipsbuild.py +++ b/ipsbuild.py @@ -22,6 +22,7 @@ import os parser = argparse.ArgumentParser(description='Build Solaris 11 packages from .ips spec files') parser.add_argument('--version', action="store_true", help='Show version information') parser.add_argument('--verbose', action="store_true", help='Increased verbosity') +parser.add_argument('--nodepsolve', action="store_true", help='Disable dependency resolution') parser.add_argument('--lint', action="store_true", help='Enables deep packaging checks') parser.add_argument('--fast', action="store_true", help='Use system tools to extract source archive') parser.add_argument('spec', nargs='*', help='An ipsutils spec file') diff --git a/ipsutils/build.py b/ipsutils/build.py index 34839fb..b4848c0 100644 --- a/ipsutils/build.py +++ b/ipsutils/build.py @@ -49,7 +49,8 @@ class Build(env.Environment): self.controller.task(tasks.Manifest(cls=self)) self.controller.task(tasks.Transmogrify(cls=self)) self.controller.task(tasks.Dependencies(cls=self)) - self.controller.task(tasks.Resolve_Dependencies(cls=self)) + if not self.options.nodepsolve: + self.controller.task(tasks.Resolve_Dependencies(cls=self)) self.controller.task(tasks.AlignPermissions(cls=self)) if self.options.lint: self.controller.task(tasks.Lint(cls=self)) @@ -60,4 +61,6 @@ class Build(env.Environment): def show_summary(self): print("Summary of {0:s}".format(self.key_dict['name'])) for k, v in self.key_dict.items(): + if not v: + continue print("+ {0:s}: {1:s}".format(k, v)) diff --git a/ipsutils/tasks.py b/ipsutils/tasks.py index 8ab2158..e1bfe98 100644 --- a/ipsutils/tasks.py +++ b/ipsutils/tasks.py @@ -108,6 +108,11 @@ class Dependencies(task.Task): err = proc_pkg.wait()
fp.flush()
fp.close()
+
+ if vars(self.cls.options)['nodepsolve']:
+ shutil.copy2(self.cls.env_meta['STAGE3'], \
+ self.cls.env_meta['STAGE4'])
+
if err <= 1:
err = 0
return err
|