Signed-off-by: xuxuepeng <xuxuepeng1@huawei.com> (cherry picked from commit 9defd1de11539485f0b7d6e40b359e579603388b)
93 lines
2.7 KiB
RPMSpec
93 lines
2.7 KiB
RPMSpec
#needsrootforbuild
|
|
%global __cargo_skip_build 0
|
|
%global _debugsource_packages 1
|
|
%global _debuginfo_subpackages 1
|
|
%define _unpackaged_files_terminate_build 0
|
|
%define debug_package %{nil}
|
|
|
|
Name: isula-rust-extensions
|
|
Version: 0.0.2
|
|
Release: 1
|
|
URL: https://gitee.com/openeuler/isula-rust-extensions
|
|
Source: %{name}-%{version}.tar.gz
|
|
Summary: isula-rust-extensions is a rust-extension library for iSulad.
|
|
Group: Application/System
|
|
License: Mulan PSL v2
|
|
|
|
ExclusiveArch: x86_64 aarch64
|
|
|
|
Patch0001: 0001-change-wait-callback-argument-from-u8-to-c_char.patch
|
|
|
|
BuildRequires: rust
|
|
BuildRequires: cargo
|
|
BuildRequires: rust-packaging
|
|
BuildRequires: cmake gcc
|
|
|
|
%description
|
|
Based on Rust programming language, rust-extension library for iSulad.
|
|
|
|
%package devel
|
|
Summary: Rust extensions for iSulad
|
|
Group: Libraries
|
|
ExclusiveArch: x86_64 aarch64
|
|
Requires: %{name} = %{version}-%{release}
|
|
|
|
%description devel
|
|
the %{name}-libs package contains rust-extension library for iSulad
|
|
|
|
%prep
|
|
%autosetup -p1
|
|
pushd nri
|
|
%cargo_prep
|
|
%cargo_generate_buildrequires
|
|
popd
|
|
pushd sandbox
|
|
%cargo_prep
|
|
%cargo_generate_buildrequires
|
|
popd
|
|
|
|
%build
|
|
pushd nri
|
|
sed -i '/\[source.crates-io\]/{n;d}' ./.cargo/config
|
|
sed -i '/\[source.local-registry\]/{n;d}' ./.cargo/config
|
|
sed -i '/\[source.local-registry\]/a directory = "vendor"' ./.cargo/config
|
|
%ifarch aarch64
|
|
sed -i 's/rustflags = \[/rustflags = \["-Clink-arg=-lgcc", "-Clink-arg=-lfdt", /g' ./.cargo/config
|
|
%endif
|
|
%cargo_build -a
|
|
popd
|
|
pushd sandbox
|
|
sed -i '/\[source.crates-io\]/{n;d}' ./.cargo/config
|
|
sed -i '/\[source.local-registry\]/{n;d}' ./.cargo/config
|
|
sed -i '/\[source.local-registry\]/a directory = "vendor"' ./.cargo/config
|
|
%ifarch aarch64
|
|
sed -i 's/rustflags = \[/rustflags = \["-Clink-arg=-lgcc", "-Clink-arg=-lfdt", /g' ./.cargo/config
|
|
%endif
|
|
%cargo_build -a
|
|
popd
|
|
|
|
%install
|
|
mkdir -p ${RPM_BUILD_ROOT}/{%{_libdir},%{_includedir}}
|
|
install -m 0644 nri/nri_plugin.h ${RPM_BUILD_ROOT}/%{_includedir}/nri_plugin.h
|
|
strip nri/target/release/libisula_nri.so
|
|
install -m 0755 nri/target/release/libisula_nri.so ${RPM_BUILD_ROOT}/%{_libdir}/libisula_nri.so
|
|
install -m 0644 sandbox/isula_sandbox_api.h ${RPM_BUILD_ROOT}/%{_includedir}/isula_sandbox_api.h
|
|
strip sandbox/target/release/libisula_sandbox.so
|
|
install -m 0755 sandbox/target/release/libisula_sandbox.so ${RPM_BUILD_ROOT}/%{_libdir}/libisula_sandbox.so
|
|
|
|
%files
|
|
%defattr(-,root, root,-)
|
|
%{_libdir}/*
|
|
|
|
%files devel
|
|
%defattr(-,root, root,-)
|
|
%{_includedir}/nri_plugin.h
|
|
%{_includedir}/isula_sandbox_api.h
|
|
|
|
%changelog
|
|
* Fri Nov 22 2024 xuxuepeng <xuxuepeng1@huawei.com> - 0.0.2-1
|
|
- Update to 0.0.2, add support for sandbox API
|
|
|
|
* Fri Aug 09 2024 jikai <jikai11@huawei.com> - 0.0.1-1
|
|
- Initial RPM release
|