| 12345678910111213141516171819202122232425262728293031323334353637383940 | import distutils.command.bdist_rpm as origimport warningsfrom setuptools import SetuptoolsDeprecationWarningclass bdist_rpm(orig.bdist_rpm):    """    Override the default bdist_rpm behavior to do the following:    1. Run egg_info to ensure the name and version are properly calculated.    2. Always run 'install' using --single-version-externally-managed to       disable eggs in RPM distributions.    """    def run(self):        warnings.warn(            "bdist_rpm is deprecated and will be removed in a future "            "version. Use bdist_wheel (wheel packages) instead.",            SetuptoolsDeprecationWarning,        )        # ensure distro name is up-to-date        self.run_command('egg_info')        orig.bdist_rpm.run(self)    def _make_spec_file(self):        spec = orig.bdist_rpm._make_spec_file(self)        spec = [            line.replace(                "setup.py install ",                "setup.py install --single-version-externally-managed "            ).replace(                "%setup",                "%setup -n %{name}-%{unmangled_version}"            )            for line in spec        ]        return spec
 |