1 # TODO: use shared crates?
2 Summary: Tool for generating C bindings to Rust code
3 Summary(pl.UTF-8): Narzędzie do generowania wiązań C do kodu w języku Rust
8 Group: Development/Tools
9 #Source0Download: https://github.com/eqrion/cbindgen/releases
10 Source0: https://github.com/eqrion/cbindgen/archive/v%{version}/cbindgen-%{version}.tar.gz
11 # Source0-md5: e80be8ee57b32d8424677082d079cb43
12 # cd cbindgen-%{version}
15 # tar cJf cbindgen-crates-%{version}.tar.xz cbindgen-%{version}/{vendor,Cargo.lock}
16 Source1: cbindgen-crates-%{version}.tar.xz
17 # Source1-md5: 531d544bab4383baf6ff3008cae4d6e1
18 URL: https://github.com/eqrion/cbindgen
21 ExclusiveArch: %{x8664} %{ix86}
22 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
25 This project can be used to generate C bindings for Rust code.
27 %description -l pl.UTF-8
28 Ten projekt służy do generowania wiązań C do kodu w języku Rust.
31 %setup -q -n cbindgen-%{version} -b1
33 # use our offline registry
34 export CARGO_HOME="$(pwd)/.cargo"
36 mkdir -p "$CARGO_HOME"
37 cat >.cargo/config <<EOF
39 registry = 'https://github.com/rust-lang/crates.io-index'
40 replace-with = 'vendored-sources'
42 [source.vendored-sources]
43 directory = '$PWD/vendor'
47 export CARGO_HOME="$(pwd)/.cargo"
49 cargo -v build --release --frozen
52 rm -rf $RPM_BUILD_ROOT
53 export CARGO_HOME="$(pwd)/.cargo"
55 cargo -v install --frozen --root $RPM_BUILD_ROOT%{_prefix}
56 %{__rm} $RPM_BUILD_ROOT%{_prefix}/.crates.toml
59 rm -rf $RPM_BUILD_ROOT
62 %defattr(644,root,root,755)
63 %doc ARCHITECTURE.md README.md
64 %attr(755,root,root) %{_bindir}/cbindgen