diff options
| author | ?ric Araujo <merwok@netwok.org> | 2012-02-05 11:59:27 +0100 |
|---|---|---|
| committer | ?ric Araujo <merwok@netwok.org> | 2012-02-05 11:59:27 +0100 |
| commit | 858a259ca7d7d06d6dc2436106860176b6c6427d (patch) | |
| tree | 0ea62ba1e73b78d1a6d7bdc8dc57b6763ad9d3f7 /distutils2/create.py | |
| parent | 5fdd763dde6f8e93038be86edd59631a78de4734 (diff) | |
| download | disutils2-858a259ca7d7d06d6dc2436106860176b6c6427d.tar.gz | |
Stop converting package_data to extra_files in pysetup create (#13712).
pysetup create used to convert package_data from an existing setup.py
into extra_files, but these files are only present in sdists, not
installed: they don?t have the same use case at all, so converting one
into the other did not work.
Diffstat (limited to 'distutils2/create.py')
| -rw-r--r-- | distutils2/create.py | 36 |
1 files changed, 22 insertions, 14 deletions
diff --git a/distutils2/create.py b/distutils2/create.py index 5ad4563..546b178 100644 --- a/distutils2/create.py +++ b/distutils2/create.py @@ -298,6 +298,7 @@ class MainProgram(object): # optional string entries if 'keywords' in self.data and self.data['keywords']: + # XXX shoud use comma to separate, not space fp.write(u'keywords = %s\n' % ' '.join(self.data['keywords'])) for name in ('home_page', 'author', 'author_email', 'maintainer', 'maintainer_email', 'description-file'): @@ -318,17 +319,30 @@ class MainProgram(object): fp.write(u'%s = ' % name) fp.write(u''.join(' %s\n' % val for val in self.data[name]).lstrip()) + fp.write(u'\n[files]\n') - for name in ('packages', 'modules', 'scripts', - 'package_data', 'extra_files'): + + for name in ('packages', 'modules', 'scripts', 'extra_files'): if not(name in self.data and self.data[name]): continue fp.write(u'%s = %s\n' % (name, u'\n '.join(self.data[name]).strip())) - fp.write(u'\nresources =\n') - for src, dest in self.data['resources']: - fp.write(u' %s = %s\n' % (src, dest)) - fp.write(u'\n') + + if self.data.get('package_data'): + fp.write(u'package_data =\n') + for pkg, spec in sorted(self.data['package_data'].items()): + # put one spec per line, indented under the package name + indent = u' ' * (len(pkg) + 7) + spec = (u'\n' + indent).join(spec) + fp.write(u' %s = %s\n' % (pkg, spec)) + fp.write(u'\n') + + if self.data.get('resources'): + fp.write(u'resources =\n') + for src, dest in self.data['resources']: + fp.write(u' %s = %s\n' % (src, dest)) + fp.write(u'\n') + finally: fp.close() @@ -400,14 +414,8 @@ class MainProgram(object): for src in srcs] data['resources'].extend(files) - # 2.2 package_data -> extra_files - package_dirs = dist.package_dir or {} - for package, extras in dist.package_data.items() or []: - package_dir = package_dirs.get(package, package) - for file_ in extras: - if package_dir: - file_ = package_dir + '/' + file_ - data['extra_files'].append(file_) + # 2.2 package_data + data['package_data'] = dist.package_data.copy() # Use README file if its content is the desciption if "description" in data: |
