You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
rust-packaging/rust-packaging.spec

76 lines
1.9 KiB

%bcond_without check
# https://pagure.io/koji/issue/659
%global debug_package %{nil}
Name: rust-packaging
3 years ago
Version: 20
Release: %autorelease
Summary: RPM macros for building Rust packages on various architectures
License: MIT
URL: https://pagure.io/fedora-rust/rust2rpm
Source: https://pagure.io/fedora-rust/rust2rpm/archive/v%{version}/rust2rpm-v%{version}.tar.gz
Include linker flags for package note in %build_rustflags This was tested in copr [1]: 96 packages succeeded: - rust-afterburn rust-alacritty rust-askalono-cli rust-assert_cli rust-base100 rust-bat rust-below rust-bindgen rust-blsctl rust-bodhi-cli rust-bootupd rust-btrd rust-cargo-bloat rust-cargo-c rust-cargo-insta rust-cargo-readme rust-cbindgen rust-choosier rust-comrak rust-copydeps rust-coreos-installer rust-count-zeroes rust-dbus-codegen rust-desed rust-diskonaut rust-docopt rust-drg rust-dua-cli rust-dutree rust-edit rust-elfcat rust-exa rust-fd-find rust-fedora-coreos-pinger rust-fedora-update-feedback rust-fluent-syntax rust-git-delta rust-gitui rust-handlebars rust-heatseeker rust-helvum rust-hexyl rust-hyperfine rust-jql rust-just rust-lalrpop rust-leb128 rust-libbpf-cargo rust-libslirp rust-lscolors rust-lsd rust-oxipng rust-packaging rust-peg0.5 rust-permutate rust-pleaser rust-pommes rust-pretty-git-prompt rust-procs rust-protobuf-codegen rust-pulldown-cmark rust-python-launcher rust-rav1e rust-rd-agent rust-rd-hashd rust-read-process-memory rust-resctl-bench rust-resctl-demo rust-ripgrep rust-rpick rust-rudo rust-rustbus rust-rustdoc-stripper rust-rustfilt rust-sass-rs rust-sd rust-semver-parser rust-sequoia-keyring-linter rust-sequoia-sop rust-sequoia-sq rust-sequoia-sqv rust-sevctl rust-sha1collisiondetection rust-silver rust-skim rust-ssh-key-dir rust-starship rust-subprocess rust-system76_ectool rust-tealdeer rust-termbg rust-tokei rust-varlink-cli rust-varlink_generator rust-weezl rust-ybaas rust-yubibomb rust-zincati rust-zopfli rust-zoxide rust-zram-generator 11 failures: - rust-bootupd: partial architecture support - rust-cargo-c: compilation failure on one architecture - rust-oxipng: partial architecture support - rust-sevctl: partial architecture support - rust-cargo-edit: nothing provides requested (crate(toml_edit/default) >= 0.2.0 with crate(toml_edit/default) < 0.3.0~) - rust-ffsend: nothing provides requested (crate(version-compare/default) >= 0.1.0 with crate(version-compare/default) < 0.2.0~) - rust-image-roll: nothing provides requested (crate(infer/default) >= 0.6.0 with crate(infer/default) < 0.7.0~) - rust-inferno: nothing provides requested (crate(assert_cmd/default) >= 1.0.0 with crate(assert_cmd/default) < 2.0.0~) - rust-navi: compilation erros (releted to clap version?) - rust-rbspy: compilation erros (releted to nix version?) - rust-sequoia-octopus-librnp: cannot find function `thread_rng` in crate `rand` - rust-sevctl: copr build timeout [1] https://copr.fedorainfracloud.org/coprs/zbyszek/rust-package-notes/builds/
3 years ago
Patch: https://pagure.io/fedora-rust/rust2rpm/pull-request/168.patch
Patch: https://pagure.io/fedora-rust/rust2rpm/pull-request/179.patch
ExclusiveArch: %{rust_arches}
# gawk is needed for stripping dev-deps in macro
Requires: gawk
Requires: python3-rust2rpm = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: rust-srpm-macros >= 17
Requires: rust
Requires: cargo >= 1.41
%description
The package provides macros for building projects in Rust
on various architectures.
%package -n python3-rust2rpm
Summary: Convert Rust packages to RPM
BuildRequires: python3-devel
BuildRequires: python3-setuptools
%if %{with check}
BuildRequires: python3-pytest
BuildRequires: cargo
%endif
Requires: cargo
Provides: rust2rpm = %{version}-%{release}
%{?python_provide:%python_provide python3-rust2rpm}
%description -n python3-rust2rpm
%{summary}.
%prep
4 years ago
%autosetup -n rust2rpm-v%{version} -p1
%build
%py3_build
%install
%py3_install
install -D -p -m 0644 -t %{buildroot}%{_rpmmacrodir} data/macros.rust data/macros.cargo
install -D -p -m 0644 -t %{buildroot}%{_fileattrsdir} data/cargo.attr
%if %{with check}
%check
py.test-%{python3_version} -vv test.py
%endif
%files
%license LICENSE
%{_rpmmacrodir}/macros.rust
%{_rpmmacrodir}/macros.cargo
%{_fileattrsdir}/cargo.attr
%files -n python3-rust2rpm
%license LICENSE
3 years ago
%doc NEWS
%{_bindir}/rust2rpm
%{_bindir}/cargo-inspector
%{python3_sitelib}/rust2rpm-*.egg-info/
%{python3_sitelib}/rust2rpm/
%changelog
%autochangelog