Ai
9 Star 0 Fork 6

src-openEuler/isula-rust-extensions
关闭

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
isula-rust-extensions.spec 2.69 KB
一键复制 编辑 原始数据 按行查看 历史
xuxuepeng 提交于 2024-11-21 21:27 +08:00 . Update to 0.0.2, and add support for Sandbox API
#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
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/src-openeuler/isula-rust-extensions.git
git@gitee.com:src-openeuler/isula-rust-extensions.git
src-openeuler
isula-rust-extensions
isula-rust-extensions
master

搜索帮助