-%debuginforustflags -C debuginfo=%{expand:%%define __dic_%{?_enable_debug_packages} 1}%{?__dic_1:2}%{!?__dic_1:0}%{expand:%%undefine __dic_%{?_enable_debug_packages}}
+%debuginforustflags -C debuginfo=%{expand:%%define __dic_%{?_enable_debug_packages} 1}%{?__dic_1:2}%{!?__dic_1:0}%{expand:%%undefine __dic_%{?_enable_debug_packages}} -C strip=none
%rpmrustflags %debuginforustflags
%rust_arches %{x8664} %{ix86} x32 aarch64 armv6hl armv7hl armv7hnl
+%rust_target \\\
+%ifarch i586\
+i586-unknown-linux-gnu\\\
+%endif\
+%ifarch i686 pentium3 pentium4 athlon\
+i686-unknown-linux-gnu\\\
+%endif\
+%ifarch %{x8664}\
+x86_64-unknown-linux-gnu\\\
+%endif\
+%ifarch x32\
+x86_64-unknown-linux-gnux32\\\
+%endif\
+%ifarch aarch64\
+aarch64-unknown-linux-gnu\\\
+%endif\
+%ifarch armv6hl\
+arm-unknown-linux-gnueabihf\\\
+%endif\
+%ifarch armv7hl \
+armv7-unknown-linux-gnueabihf\\\
+%endif\
+%ifarch armv7hnl\
+thumbv7neon-unknown-linux-gnueabihf\\\
+%endif\
+%{nil}
+
+%cargo_target %rust_target
+%cargo_targetdir target
+%cargo_objdir %{?buildsubdir:%{_builddir}/%{buildsubdir}/}%{cargo_targetdir}/%{rust_target}/%{!?debug:release}%{?debug:debug}
+
+%__rustc /usr/bin/rustc
%__cargo /usr/bin/cargo
%__cargo_common_opts -v --offline
%cargo_build \\\
+ CC="%{__cc}" \\\
+ CXX="%{__cxx}" \\\
+ CFLAGS="%{rpmcppflags} %{rpmcflags}" \\\
+ CXXFLAGS="%{rpmcppflags} %{rpmcxxflags}" \\\
+ LDFLAGS="%{rpmldflags}" \\\
+ PKG_CONFIG_ALLOW_CROSS=1 \\\
+ RUSTC="${RUSTC:-%__rustc}" \\\
+ %{?rustc_wrapper:RUSTC_WRAPPER="${RUSTC_WRAPPER:-%rustc_wrapper}"} \\\
RUSTFLAGS="${RUSTFLAGS:-%rpmrustflags}" \\\
%{?__jobs:CARGO_BUILD_JOBS="${CARGO_BUILD_JOBS:-%{__jobs}}"} \\\
%{__cargo} %{__cargo_common_opts} build %{!?debug:--release} \\\
-%ifarch x32 \
- --target x86_64-unknown-linux-gnux32 \\\
-%endif \
+ --target %rust_target \\\
+ --target-dir %{cargo_targetdir} \\\
%{nil}
%cargo_install \\\
+ CC="%{__cc}" \\\
+ CXX="%{__cxx}" \\\
+ CFLAGS="%{rpmcppflags} %{rpmcflags}" \\\
+ CXXFLAGS="%{rpmcppflags} %{rpmcxxflags}" \\\
+ LDFLAGS="%{rpmldflags}" \\\
+ PKG_CONFIG_ALLOW_CROSS=1 \\\
+ RUSTC="${RUSTC:-%__rustc}" \\\
+ %{?rustc_wrapper:RUSTC_WRAPPER="${RUSTC_WRAPPER:-%rustc_wrapper}"} \\\
RUSTFLAGS="${RUSTFLAGS:-%rpmrustflags}" \\\
%{?__jobs:CARGO_BUILD_JOBS="${CARGO_BUILD_JOBS:-%{__jobs}}"} \\\
%{__cargo} %{__cargo_common_opts} install \\\
-%ifarch x32 \
- --target x86_64-unknown-linux-gnux32 \\\
-%endif \
+ --target %rust_target \\\
+ --target-dir %{cargo_targetdir} \\\
%{nil}