native-turbo/native-turbo.spec

118 lines
2.8 KiB
RPMSpec
Raw Normal View History

2023-05-16 19:13:39 +08:00
#needsrootforbuild
%global __cargo_skip_build 0
%global __cargo_common_opts %{?__cargo_common_opts} --all
2023-04-07 20:05:16 +08:00
Name: sysboost
Version: 1.0.0
2023-05-16 19:13:39 +08:00
Release: 3
2023-04-07 20:05:16 +08:00
Summary: Numa Aware Scheduling
License: Mulan PSL v2
URL: https://gitee.com/openeuler/native-turbo
Source0: %{name}.tar.xz
BuildRequires: meson >= 0.49.2, clang >= 12.0.1
BuildRequires: make >= 4.0, bison >= 2.7, binutils >= 2.30-17, gcc >= 10.3.1
BuildRequires: ncurses-devel
2023-05-16 19:13:39 +08:00
BuildRequires: rust rust-packaging cargo
2023-04-07 20:05:16 +08:00
%description
sysboost can merge ELF files to improve performance.
# Add devel subpackage
%package devel
Summary: Development files for %{name}
Requires: %{name} = %{version}-%{release}
BuildRequires: binutils
%description devel
The %{name}-devel package contains some tools of sysboost.
2023-04-24 19:37:41 +08:00
%prep
2023-04-07 20:05:16 +08:00
export RPM_BUILD_DIR=%_topdir/BUILD
export RPM_BUILD_SOURCE=%_topdir/SOURCES
tar -Jxf $RPM_BUILD_SOURCE/%{name}.tar.xz
cp $RPM_BUILD_SOURCE/objreloc.sh $RPM_BUILD_DIR/objreloc
2023-05-16 19:13:39 +08:00
cp $RPM_BUILD_DIR/native-turbo/sysboost/Cargo.toml $RPM_BUILD_DIR/
%cargo_prep
2023-04-24 19:37:41 +08:00
2023-05-16 19:13:39 +08:00
%cargo_generate_buildrequires
2023-04-07 20:05:16 +08:00
%build
2023-05-16 19:13:39 +08:00
cd $RPM_BUILD_DIR/native-turbo/sysboost
%cargo_build -a
cd $RPM_BUILD_DIR/native-turbo
2023-04-24 19:37:41 +08:00
make release
make
2023-04-07 20:05:16 +08:00
%install
mkdir -p $RPM_BUILD_ROOT/%{_bindir}
mkdir -p $RPM_BUILD_ROOT/usr/lib/systemd/system
2023-05-16 19:13:39 +08:00
pushd native-turbo/build
2023-04-07 20:05:16 +08:00
install -D -p -m 750 ./sysboost/sysboost $RPM_BUILD_ROOT/%{_bindir}/sysboost
2023-04-24 19:37:41 +08:00
install -D -p -m 750 ./sysboost/src/static_template/sysboost_static_template $RPM_BUILD_ROOT/%{_bindir}/sysboost_static_template
2023-04-07 20:05:16 +08:00
install -D -p -m 750 ./sysboost/src/libhook/libhook.so $RPM_BUILD_ROOT/%{_bindir}/libhook.so
2023-05-16 19:13:39 +08:00
popd
pushd native-turbo/sysboost
install -D -p -m 640 %{name}.service $RPM_BUILD_ROOT/usr/lib/systemd/system/%{name}.service
2023-05-17 16:59:50 +08:00
install -D -p -m 750 ./target/release/sysboostd $RPM_BUILD_ROOT%{_bindir}/
2023-05-16 19:13:39 +08:00
popd
2023-04-24 19:37:41 +08:00
install -m 755 $RPM_BUILD_DIR/objreloc $RPM_BUILD_ROOT%{_bindir}/
2023-05-16 19:13:39 +08:00
mkdir -p %{buildroot}/etc/sysboost.d/
mkdir -p %{buildroot}/var/lib/sysboost/
2023-04-07 20:05:16 +08:00
%check
%files
2023-05-16 19:13:39 +08:00
%defattr(-,root,root,-)
%dir /etc/sysboost.d/
%dir /var/lib/sysboost/
2023-04-07 20:05:16 +08:00
%{_bindir}/sysboost
2023-04-24 19:37:41 +08:00
%{_bindir}/sysboost_static_template
2023-04-07 20:05:16 +08:00
%{_bindir}/libhook.so
2023-05-16 19:13:39 +08:00
%{_bindir}/sysboostd
2023-04-07 20:05:16 +08:00
/usr/lib/systemd/system/%{name}.service
2023-04-24 19:37:41 +08:00
%files devel
%defattr(0755,root,root)
%{_bindir}/objreloc
%doc
2023-04-07 20:05:16 +08:00
%post
%systemd_post %{name}.service
%preun
%systemd_preun %{name}.service
%postun
%systemd_postun_with_restart %{name}.service
%changelog
2023-05-16 19:13:39 +08:00
* Tue May 16 2023 liutie <liutie4@huawei.com> - 1.0.0-3
- Type:enhancement
- ID:NA
- SUG:NA
- DESC: Add sysboostd service for sysboost
* Mon May 8 2023 liutie <liutie4@huawei.com> - 1.0.0-2
- Type:enhancement
- ID:NA
- SUG:NA
- DESC: Independently generate the objreloc tool
* Mon May 8 2023 liutie <liutie4@huawei.com> - 1.0.0-1
- Type:enhancement
- ID:NA
- SUG:NA
- DESC: Independently generate the objreloc tool
2023-05-16 19:13:39 +08:00
* Thu Apr 6 2023 liutie <liutie4@huawei.com> - 1.0.0-0