diff --git a/ncurses.spec b/ncurses.spec index ab1735179438a7dce680096a048cae5370a45b52..d8f5c4b41103a6e9f576795908f078611e141166 100644 --- a/ncurses.spec +++ b/ncurses.spec @@ -1,6 +1,15 @@ +%if %{?openEuler:1}0 +%global ENABLE_RELOC 1 +%endif + +%if %{ENABLE_RELOC} +%global ldflags_options -Wl,--emit-relocs +%endif + + Name: ncurses Version: 6.3 -Release: 6 +Release: 8 Summary: Terminal control library License: MIT URL: https://invisible-island.net/ncurses/ncurses.html @@ -87,6 +96,16 @@ Requires: %{name} = %{version}-%{release} This package contains development documentation, manuals for interface function, and related documents. +%if %{?ENABLE_RELOC} +%package relocation +Summary: Relocations for %{name} +Requires: %{name}-libs = %{version}-%{release} +BuildRequires: sysboost-devel + +%description relocation +Relocations for %{name} +%endif + %prep %autosetup -n %{name}-%{version} -p1 @@ -123,7 +142,7 @@ for abi in 5 6; do [ $abi = 5 ] && echo $abi5_options [ $char = widec ] && echo --enable-widec [ $progs = yes ] || echo --without-progs - ) + ) LDFLAGS="%{?ldflags_options}" make %{?_smp_mflags} libs [ $progs = yes ] && make %{?_smp_mflags} -C progs @@ -140,6 +159,15 @@ make -C narrowc6 DESTDIR=$RPM_BUILD_ROOT install.libs rm ${RPM_BUILD_ROOT}%{_libdir}/lib{tic,tinfo}.so.6* make -C widec6 DESTDIR=$RPM_BUILD_ROOT install.{libs,progs,data,includes,man} +%if %{?ENABLE_RELOC} +cp ${RPM_BUILD_ROOT}%{_libdir}/libtinfo.so.%{version} ${RPM_BUILD_ROOT}%{_libdir}/relocation.%{version} +objreloc ${RPM_BUILD_ROOT}%{_libdir}/relocation.%{version} +rm -rf ${RPM_BUILD_ROOT}%{_libdir}/relocation.%{version} +mv ${RPM_BUILD_ROOT}%{_libdir}/relocation.%{version}.relocation ${RPM_BUILD_ROOT}%{_libdir}/libtinfo.so.%{version}.relocation +rm -rf ${RPM_BUILD_ROOT}%{_libdir}/relocation.6.3.prim +ln -sf ${RPM_BUILD_ROOT}%{_libdir}/libtinfo.so.%{version} ${RPM_BUILD_ROOT}%{_libdir}/libtinfo.so.6 +%endif + chmod 755 ${RPM_BUILD_ROOT}%{_libdir}/lib*.so.*.* chmod 644 ${RPM_BUILD_ROOT}%{_libdir}/lib*.a @@ -219,6 +247,7 @@ xz NEWS %files libs %{_libdir}/lib*.so.6* %exclude %{_libdir}/libncurses++*.so.6* +%exclude %{_libdir}/libtinfo.so.6.3.relocation %files devel %{_bindir}/ncurses*-config @@ -245,7 +274,24 @@ xz NEWS %{_mandir}/man5/* %{_mandir}/man7/* +%if %{?ENABLE_RELOC} +%files relocation +%{_libdir}/libtinfo.so.%{version}.relocation +%endif + %changelog +* Mon May 22 2023 liutie - 6.3-8 +- Type:enhancement +- ID:NA +- SUG:NA +- DESC: Fix can not find libtinfo.so.6 + +* Mon May 8 2023 liutie - 6.3-7 +- Type:enhancement +- ID:NA +- SUG:NA +- DESC: Independently generate the objreloc tool + * Tue Feb 28 2023 zhujunhao - 6.3-6 - Type:bugfix - CVE:NA