prep/build/etc. scripts, doc files, dependency info) from a config file
rather than the dedicated "package_info" file. (The idea is that
developers will provide RPM-specific info in the "[bdist_rpm]" section of
setup.cfg, but of course it could also be supplied in the other config
files, on the command line, or in the setup script -- or any mix of the
above.)
Major changes:
* added a boatload of options to 'user_options' and
'initialize_options()': 'distribution_name', 'group', 'release', ...
* added 'finalize_package_data()', which takes the place of
'_get_package_data()' -- except it's called from 'finalize_options()',
not 'run()', so we have everything figured out before we actually run
the command
* added 'ensure_string()', 'ensure_string_list()', 'ensure_filename()';
these take the place of '_check_string()' and friends. (These actually
look like really useful type-checking methods that could come in handy
all over the Distutils; should consider moving them up to Command and
using them in other command classes' 'finalize_options()' method for
error-checking).
* various cleanup, commentary, and adaptation to the new way of
storing RPM info in '_make_spec_file()'
* added "--bdist-base" option to parameterize where we build
the RPM (comes from "bdist" by default: "build/bdist.<plat>")
* simplified/cleaned up some code in 'run()' in the process of
removing (most) hard-coded directory names
* if "--spec-only", drop spec file in "dist" rather than "redhat"
(directory name still hard-coded, though)
* use 'reinitialize_command()' to fetch the "sdist" object to
tweak before running "sdist" command
* use 'self.copy_file()' method rather than 'copy_file()' function
* cosmetic tweaks to comments, error messages
* help strings start with lowercase
* added affirmative version of '--no-clean' and '--no-rpm-opt-flags',
which are the default (thus the attributes that correspond to
the options are now 'clean' and 'use_rpm_opt_flags')
* Command method 'find_peer()' -> 'get_finalized_command()'
* Command method 'run_peer()' -> 'run_command()'
Also deleted the 'get_command_option()' method from Command, and
fixed the one place where it was used (in "bdist_dumb").