Fix invalid link file issue

Below link file cannot find the target after installation:
find -xtype l | xargs ls -l --color
lrwxrwxrwx. 1 root root 19 Nov 14 19:09 ./libexec/getconf/default -> POSIX_V6_LP64_OFF64
lrwxrwxrwx. 1 root root 36 Nov 14 19:09 ./lib/gcc/x86_64-suse-linux/12/libatomic.so -> ../../../../lib64/libatomic.so.1.2.0
lrwxrwxrwx. 1 root root 35 Nov 14 19:09 ./lib/gcc/x86_64-suse-linux/12/libubsan.so -> ../../../../lib64/libubsan.so.1.0.0

To fix this issue, modify spec file as below:
1. Remove libatomic.so libubsan.so to its package
2. Change the ./libexec/getconf/default target path

Signed-off-by: Chenxi Mao <chenxi.mao@suse.com>
This commit is contained in:
Chenxi Mao 2022-11-14 18:53:29 +08:00
parent e586fcabde
commit 55cfa61071

View File

@ -84,7 +84,7 @@
Summary: Various compilers (C, C++, Objective-C, ...) Summary: Various compilers (C, C++, Objective-C, ...)
Name: %{?scl_prefix}gcc Name: %{?scl_prefix}gcc
Version: 12.2.1 Version: 12.2.1
Release: 8 Release: 9
# libgcc, libgfortran, libgomp, libstdc++ and crtstuff have # libgcc, libgfortran, libgomp, libstdc++ and crtstuff have
# GCC Runtime Exception. # GCC Runtime Exception.
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD
@ -993,9 +993,9 @@ rm -f $FULLPATH/adalib/libgnarl.so* $FULLPATH/adalib/libgnat.so*
mkdir -p %{buildroot}%{_prefix}/libexec/getconf mkdir -p %{buildroot}%{_prefix}/libexec/getconf
if gcc/xgcc -B gcc/ -E -P -dD -xc /dev/null | grep '__LONG_MAX__.*\(2147483647\|0x7fffffff\($\|[LU]\)\)'; then if gcc/xgcc -B gcc/ -E -P -dD -xc /dev/null | grep '__LONG_MAX__.*\(2147483647\|0x7fffffff\($\|[LU]\)\)'; then
ln -sf POSIX_V6_ILP32_OFF32 %{buildroot}%{_prefix}/libexec/getconf/default ln -sf /usr/libexec/getconf/POSIX_V6_ILP32_OFF32 %{buildroot}%{_prefix}/libexec/getconf/default
else else
ln -sf POSIX_V6_LP64_OFF64 %{buildroot}%{_prefix}/libexec/getconf/default ln -sf /usr/libexec/getconf/POSIX_V6_LP64_OFF64 %{buildroot}%{_prefix}/libexec/getconf/default
fi fi
mkdir -p %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib} mkdir -p %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}
@ -1895,7 +1895,6 @@ end
%endif %endif
%if %{build_libatomic} %if %{build_libatomic}
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libatomic.a %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libatomic.a
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libatomic.so
%endif %endif
%if %{build_libasan} %if %{build_libasan}
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libasan.a %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libasan.a
@ -1904,7 +1903,6 @@ end
%endif %endif
%if %{build_libubsan} %if %{build_libubsan}
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libubsan.a %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libubsan.a
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libubsan.so
%endif %endif
%endif %endif
%ifarch %{multilib_64_archs} %ifarch %{multilib_64_archs}
@ -1926,7 +1924,6 @@ end
%endif %endif
%if %{build_libatomic} %if %{build_libatomic}
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libatomic.a %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libatomic.a
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libatomic.so
%endif %endif
%if %{build_libasan} %if %{build_libasan}
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libasan.a %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libasan.a
@ -1935,7 +1932,6 @@ end
%endif %endif
%if %{build_libubsan} %if %{build_libubsan}
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libubsan.a %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libubsan.a
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libubsan.so
%endif %endif
%endif %endif
%ifarch sparcv9 sparc64 ppc ppc64 ppc64p7 %ifarch sparcv9 sparc64 ppc ppc64 ppc64p7
@ -1949,7 +1945,6 @@ end
%endif %endif
%if %{build_libatomic} %if %{build_libatomic}
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libatomic.a %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libatomic.a
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libatomic.so
%endif %endif
%if %{build_libasan} %if %{build_libasan}
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan.a %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan.a
@ -1958,19 +1953,12 @@ end
%endif %endif
%if %{build_libubsan} %if %{build_libubsan}
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libubsan.a %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libubsan.a
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libubsan.so
%endif %endif
%else %else
%if %{build_libatomic}
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libatomic.so
%endif
%if %{build_libasan} %if %{build_libasan}
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan.so %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan.so
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan_preinit.o %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan_preinit.o
%endif %endif
%if %{build_libubsan}
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libubsan.so
%endif
%endif %endif
%if %{build_libtsan} %if %{build_libtsan}
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libtsan.so %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libtsan.so
@ -2428,6 +2416,13 @@ end
%if %{build_libatomic} %if %{build_libatomic}
%files -n %{?scl_prefix}libatomic %files -n %{?scl_prefix}libatomic
%{_prefix}/%{_lib}/libatomic.so.1* %{_prefix}/%{_lib}/libatomic.so.1*
%ifarch sparcv9 ppc
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libatomic.so
%endif
%ifarch %{multilib_64_archs}
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libatomic.so
%endif
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libatomic.so
%files -n %{?scl_prefix}libatomic-static %files -n %{?scl_prefix}libatomic-static
%dir %{_prefix}/lib/gcc %dir %{_prefix}/lib/gcc
@ -2474,6 +2469,13 @@ end
%if %{build_libubsan} %if %{build_libubsan}
%files -n %{?scl_prefix}libubsan %files -n %{?scl_prefix}libubsan
%{_prefix}/%{_lib}/libubsan.so.1* %{_prefix}/%{_lib}/libubsan.so.1*
%ifarch sparcv9 ppc
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libubsan.so
%endif
%ifarch %{multilib_64_archs}
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libubsan.so
%endif
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libubsan.so
%files -n %{?scl_prefix}libubsan-static %files -n %{?scl_prefix}libubsan-static
%dir %{_prefix}/lib/gcc %dir %{_prefix}/lib/gcc
@ -2653,6 +2655,9 @@ end
%doc rpm.doc/changelogs/libcc1/ChangeLog* %doc rpm.doc/changelogs/libcc1/ChangeLog*
%changelog %changelog
* Mon Nov 14 2022 Chenxi Mao <chenxi.mao@suse.com> 12.2.1-9
- Fix invalid link file issue
* Wed Nov 09 2022 Cui Lili <lili.cui@intel.com> 12.2.1-8 * Wed Nov 09 2022 Cui Lili <lili.cui@intel.com> 12.2.1-8
- Add attribute hot judgement for INLINE_HINT_known_hot hint - Add attribute hot judgement for INLINE_HINT_known_hot hint