do better for renamed crates
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
This commit is contained in:
parent
561280a0ea
commit
2050880140
2 changed files with 16 additions and 4 deletions
|
@ -180,7 +180,7 @@ def make_diff_metadata(crate, version, patch=False, store=False):
|
||||||
diff = make_patch(toml, enabled=patch)
|
diff = make_patch(toml, enabled=patch)
|
||||||
metadata = Metadata.from_file(toml)
|
metadata = Metadata.from_file(toml)
|
||||||
if store:
|
if store:
|
||||||
shutil.copy2(cratef, os.path.join(os.getcwd(), f"{crate}-{version}.crate"))
|
shutil.copy2(cratef, os.path.join(os.getcwd(), f"{metadata.name}-{version}.crate"))
|
||||||
return crate, diff, metadata
|
return crate, diff, metadata
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
|
@ -218,11 +218,12 @@ def main():
|
||||||
template = JINJA_ENV.get_template("main.spec")
|
template = JINJA_ENV.get_template("main.spec")
|
||||||
|
|
||||||
if args.patch and len(diff) > 0:
|
if args.patch and len(diff) > 0:
|
||||||
patch_file = "{}-fix-metadata.diff".format(metadata.name)
|
patch_file = f"{metadata.name}-fix-metadata.diff"
|
||||||
else:
|
else:
|
||||||
patch_file = None
|
patch_file = None
|
||||||
|
|
||||||
kwargs = {}
|
kwargs = {}
|
||||||
|
kwargs["crate"] = crate
|
||||||
kwargs["target"] = args.target
|
kwargs["target"] = args.target
|
||||||
bins = [tgt for tgt in metadata.targets if tgt.kind == "bin"]
|
bins = [tgt for tgt in metadata.targets if tgt.kind == "bin"]
|
||||||
libs = [tgt for tgt in metadata.targets if tgt.kind in ("lib", "rlib", "proc-macro")]
|
libs = [tgt for tgt in metadata.targets if tgt.kind in ("lib", "rlib", "proc-macro")]
|
||||||
|
@ -269,7 +270,7 @@ def main():
|
||||||
kwargs["license"] = license
|
kwargs["license"] = license
|
||||||
kwargs["license_comments"] = comments
|
kwargs["license_comments"] = comments
|
||||||
|
|
||||||
spec_file = "rust-{}.spec".format(metadata.name)
|
spec_file = f"rust-{metadata.name}.spec"
|
||||||
spec_contents = template.render(md=metadata, patch_file=patch_file, **kwargs)
|
spec_contents = template.render(md=metadata, patch_file=patch_file, **kwargs)
|
||||||
if args.stdout:
|
if args.stdout:
|
||||||
print("# {}".format(spec_file))
|
print("# {}".format(spec_file))
|
||||||
|
|
|
@ -6,6 +6,9 @@
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
%global crate {{ md.name }}
|
%global crate {{ md.name }}
|
||||||
|
{% if md.name != crate %}
|
||||||
|
%global real_crate {{ crate }}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
Name: rust-%{crate}
|
Name: rust-%{crate}
|
||||||
Version: {{ md.version }}
|
Version: {{ md.version }}
|
||||||
|
@ -27,8 +30,12 @@ License: {{ license|default("# FIXME") }}
|
||||||
{% if license_comments is not none %}
|
{% if license_comments is not none %}
|
||||||
{{ license_comments }}
|
{{ license_comments }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
URL: https://crates.io/crates/{{ md.name }}
|
URL: https://crates.io/crates/{{ crate }}
|
||||||
|
{% if md.name != crate %}
|
||||||
|
Source0: https://crates.io/api/v1/crates/%{real_crate}/%{version}/download#/%{crate}-%{version}.crate
|
||||||
|
{% else %}
|
||||||
Source0: https://crates.io/api/v1/crates/%{crate}/%{version}/download#/%{crate}-%{version}.crate
|
Source0: https://crates.io/api/v1/crates/%{crate}/%{version}/download#/%{crate}-%{version}.crate
|
||||||
|
{% endif %}
|
||||||
{% if patch_file is not none %}
|
{% if patch_file is not none %}
|
||||||
{% if target == "opensuse" %}
|
{% if target == "opensuse" %}
|
||||||
# PATCH-FIX-OPENSUSE {{ patch_file }} -- Initial patched metadata
|
# PATCH-FIX-OPENSUSE {{ patch_file }} -- Initial patched metadata
|
||||||
|
@ -118,7 +125,11 @@ which use %{crate} from crates.io.
|
||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
%prep
|
%prep
|
||||||
|
{% if md.name != crate %}
|
||||||
|
%autosetup -n %{real_crate}-%{version} -p1
|
||||||
|
{% else %}
|
||||||
%autosetup -n %{crate}-%{version} -p1
|
%autosetup -n %{crate}-%{version} -p1
|
||||||
|
{% endif %}
|
||||||
%cargo_prep
|
%cargo_prep
|
||||||
|
|
||||||
%build
|
%build
|
||||||
|
|
Loading…
Reference in a new issue