]>
Commit | Line | Data |
---|---|---|
90d6d73c ER |
1 | Summary: Template to show how to vendor crates |
2 | Name: rust-crate-template | |
3 | Version: 1.0 | |
4 | Release: 0.1 | |
5 | License: Apache v2.0 | |
6 | Group: Applications | |
7 | Source0: https://github.com/NAME/NAME/archive/v%{version}/%{name}-%{version}.tar.gz | |
8 | # Source0-md5: 959298871877c4a50e8e2789d23530c7 | |
9 | # cd NAME-%{version} | |
10 | # cargo vendor | |
11 | # cd .. | |
12 | # tar cJf NAME-crates-%{version}.tar.xz NAME-%{version}/{vendor,Cargo.lock} | |
13 | Source1: %{name}-crates-%{version}.tar.xz | |
14 | # Source1-md5: - | |
15 | URL: - | |
16 | BuildRequires: cargo | |
3ae78191 | 17 | BuildRequires: rpmbuild(macros) >= 2.004 |
90d6d73c | 18 | BuildRequires: rust |
26ddd9b2 ER |
19 | BuildRequires: tar >= 1:1.22 |
20 | BuildRequires: xz | |
3ae78191 | 21 | ExclusiveArch: %{rust_arches} |
90d6d73c ER |
22 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
23 | ||
24 | %description | |
25 | ||
26 | %prep | |
00ebcdd3 | 27 | %setup -q -b1 |
90d6d73c ER |
28 | |
29 | # Use our offline registry | |
30 | export CARGO_HOME="$(pwd)/.cargo" | |
31 | ||
32 | mkdir -p "$CARGO_HOME" | |
33 | cat >.cargo/config <<EOF | |
34 | [source.crates-io] | |
35 | registry = 'https://github.com/rust-lang/crates.io-index' | |
36 | replace-with = 'vendored-sources' | |
37 | ||
38 | [source.vendored-sources] | |
39 | directory = '$PWD/vendor' | |
40 | EOF | |
41 | ||
42 | %build | |
43 | export CARGO_HOME="$(pwd)/.cargo" | |
44 | ||
3ae78191 | 45 | %cargo_build --frozen |
90d6d73c ER |
46 | |
47 | %install | |
48 | rm -rf $RPM_BUILD_ROOT | |
8811f067 ER |
49 | export CARGO_HOME="$(pwd)/.cargo" |
50 | ||
f329c346 | 51 | %cargo_install \ |
8811f067 ER |
52 | --frozen \ |
53 | --path . \ | |
54 | --root $RPM_BUILD_ROOT%{_prefix} | |
55 | ||
56 | %{__rm} $RPM_BUILD_ROOT%{_prefix}/.crates.toml | |
57 | %{__rm} $RPM_BUILD_ROOT%{_prefix}/.crates2.json | |
90d6d73c ER |
58 | |
59 | %clean | |
60 | rm -rf $RPM_BUILD_ROOT | |
61 | ||
62 | %files | |
63 | %defattr(644,root,root,755) | |
64 | %attr(755,root,root) %{_bindir}/* |