Add support for 'path' argument

parent 4a132aa4
......@@ -264,7 +264,7 @@ class Script:
os.path.join(buildout['buildout']['parts-directory'], self.name))
# cleanup some variables
for k in ['location', 'url', 'md5sum']:
for k in ['location', 'url', 'md5sum', 'path']:
self.options[k] = self.options.get(k, '').strip()
self.options['script'] = self.options.get('script', self.script) % \
self.options
......@@ -382,9 +382,12 @@ class Cmmi(Script):
Compatibility on parameter level"""
script = """
url = self.download(self.options['url'], self.options.get('md5sum'))
extract_dir = self.extract(url)
workdir = guessworkdir(extract_dir)
if self.options['url']:
url = self.download(self.options['url'], self.options.get('md5sum'))
extract_dir = self.extract(url)
workdir = guessworkdir(extract_dir)
else:
workdir = self.options['path']
configure_command = self.options.get('configure-command')
if configure_command is None or configure_command.lower() == 'None':
configure_command = ["./configure", "--prefix=%(location)s"] + %(configure-options)r.split()
......@@ -408,3 +411,7 @@ call(make_command + ['install'], cwd=workdir, env=env)
options['configure-options'] = ' '.join(options.get('configure-options',
'').strip().splitlines())
Script.__init__(self, buildout, name, options)
if options['url'] and options['path']:
raise zc.buildout.UserError('You must use either "url" or "path", not both!')
if not (options['url'] or options['path']):
raise zc.buildout.UserError('You must provide either "url" or "path".')
\ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment