code: def _make_spec_file(self):
      version = self.distribution.get_version()
      rpmversion = version.replace("-", "_")
      spec = orig.bdist_rpm._make_spec_file(self)
      line23 = "%define version " + version
      line24 = "%define version " + rpmversion
      spec = [
          line.replace(
              "Source0: %{name}-%{version}.tar",
              "Source0: %{name}-%{unmangled_version}.tar",
          )
          .replace(
              "setup.py install ",
              "setup.py install --single-version-externally-managed ",
          )
          .replace("%setup", "%setup -n %{name}-%{unmangled_version}")
          .replace(line23, line24)
          for line in spec
      ]
      insert_loc = spec.index(line24) + 1
      unmangled_version = "%define unmangled_version " + version
      spec.insert(insert_loc, unmangled_version)
      return spec
  
imports: import distutils.command.bdist_rpm
label_desc: Use image node_id 2 for calling the bdist_rpm obj's underlying member method code with example usage: obj._make_spec_file() and returns: spec