!8 Independently generate the objreloc tool

From: @ironictwist 
Reviewed-by: @gameoverboss 
Signed-off-by: @gameoverboss
This commit is contained in:
openeuler-ci-bot 2023-05-08 13:12:13 +00:00 committed by Gitee
commit b8e16593d0
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
3 changed files with 40 additions and 58 deletions

View File

@ -1,6 +1,6 @@
Name: sysboost
Version: 1.0.0
Release: 1
Release: 2
Summary: Numa Aware Scheduling
License: Mulan PSL v2
URL: https://gitee.com/openeuler/native-turbo
@ -15,6 +15,15 @@ BuildRequires: ncurses-devel
%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.
%prep
rm -rf src
mkdir -p bin
@ -28,8 +37,7 @@ export SYSBOOST_DIR=$RPM_BUILD_DIR/src/gitee.com/%{name}
tar -Jxf $RPM_BUILD_SOURCE/%{name}.tar.xz
cp $RPM_BUILD_SOURCE/%{name}.service $RPM_BUILD_DIR/
mv $RPM_BUILD_DIR/native-turbo/sysboost/src/objreloc/objreloc.sh $RPM_BUILD_DIR/native-turbo/sysboost/src/objreloc/objreloc
cp $RPM_BUILD_SOURCE/objreloc.sh $RPM_BUILD_DIR/objreloc
cd $RPM_BUILD_DIR/
@ -47,15 +55,22 @@ install -D -p -m 750 ./sysboost/src/static_template/sysboost_static_template $RP
install -D -p -m 750 ./sysboost/src/libhook/libhook.so $RPM_BUILD_ROOT/%{_bindir}/libhook.so
install -D -p -m 640 %{SOURCE1} $RPM_BUILD_ROOT/usr/lib/systemd/system/%{name}.service
install -m 755 $RPM_BUILD_DIR/objreloc $RPM_BUILD_ROOT%{_bindir}/
%check
%files
%doc
%{_bindir}/sysboost
%{_bindir}/sysboost_static_template
%{_bindir}/libhook.so
/usr/lib/systemd/system/%{name}.service
%files devel
%defattr(0755,root,root)
%{_bindir}/objreloc
%doc
%post
%systemd_post %{name}.service
@ -66,6 +81,12 @@ install -D -p -m 640 %{SOURCE1} $RPM_BUILD_ROOT/usr/lib/systemd/system/%{name}.s
%systemd_postun_with_restart %{name}.service
%changelog
* 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

15
objreloc.sh Normal file
View File

@ -0,0 +1,15 @@
#!/bin/bash
if [ $# -eq 0 ]; then
echo "Usage: $0 <Files to be split>"
exit 1
fi
LIB_FILE="$1"
if [ ! -f "$LIB_FILE" ]; then
echo "Error: $LIB_FILE does not exist"
exit 1
fi
# Remove debug and unnecessary sections, and create relocation and primary files
objcopy --strip-debug --strip-dwo --strip-unneeded "$LIB_FILE" "$LIB_FILE.relocation"
objcopy --remove-relocations=".*" "$LIB_FILE" "$LIB_FILE.prim"

View File

@ -1,54 +0,0 @@
Name: objreloc
Version: 1.0.0
Release: 0
Summary: Numa Aware Scheduling
License: Mulan PSL v2
URL: https://gitee.com/openeuler/native-turbo
Source0: sysboost.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
%description
The package contains objreloc for relocations.
%prep
rm -rf src
mkdir -p bin
mkdir -p pkg
mkdir -p src/gitee.com
export RPM_BUILD_DIR=%_topdir/BUILD
export RPM_BUILD_SOURCE=%_topdir/SOURCES
export SYSBOOST_DIR=$RPM_BUILD_DIR/src/gitee.com/%{name}
tar -Jxf $RPM_BUILD_SOURCE/sysboost.tar.xz
mv $RPM_BUILD_DIR/native-turbo/sysboost/src/objreloc/objreloc.sh $RPM_BUILD_DIR/native-turbo/sysboost/src/objreloc/objreloc
cd $RPM_BUILD_DIR/
%build
%install
mkdir -p $RPM_BUILD_ROOT/%{_bindir}
install -m 755 $RPM_BUILD_DIR/native-turbo/sysboost/src/objreloc/objreloc $RPM_BUILD_ROOT%{_bindir}/
%check
%files
%defattr(0755,root,root)
%{_bindir}/objreloc
%doc
%post
%changelog
* Mon May 8 2023 liutie <liutie4@huawei.com> - 1.0.0-0
- Type:enhancement
- ID:NA
- SUG:NA
- DESC: Independently generate the objreloc tool