Spec File: Use correct names for the symlinks.
Resolves: RHEL-53572
This commit is contained in:
parent
554718a014
commit
a6710845de
53
annobin.spec
53
annobin.spec
@ -9,7 +9,7 @@ BuildRequires: scl-utils-build
|
|||||||
Name: %{?scl_prefix}annobin
|
Name: %{?scl_prefix}annobin
|
||||||
Summary: Annotate and examine compiled binary files
|
Summary: Annotate and examine compiled binary files
|
||||||
Version: 12.65
|
Version: 12.65
|
||||||
Release: 1%{?dist}
|
Release: 3%{?dist}
|
||||||
License: GPL-3.0-or-later AND LGPL-2.0-or-later AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (LGPL-2.0-or-later WITH GCC-exception-2.0) AND GFDL-1.3-or-later
|
License: GPL-3.0-or-later AND LGPL-2.0-or-later AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (LGPL-2.0-or-later WITH GCC-exception-2.0) AND GFDL-1.3-or-later
|
||||||
URL: https://sourceware.org/annobin/
|
URL: https://sourceware.org/annobin/
|
||||||
# Maintainer: nickc@redhat.com
|
# Maintainer: nickc@redhat.com
|
||||||
@ -70,21 +70,21 @@ URL: https://sourceware.org/annobin/
|
|||||||
Source: https://nickc.fedorapeople.org/%{annobin_sources}
|
Source: https://nickc.fedorapeople.org/%{annobin_sources}
|
||||||
# For the latest sources use: git clone git://sourceware.org/git/annobin.git
|
# For the latest sources use: git clone git://sourceware.org/git/annobin.git
|
||||||
|
|
||||||
# Insert patches here, if needed. Eg:
|
# Insert patches here, if needed.
|
||||||
# Patch01: annobin-foo.patch
|
|
||||||
Patch01: annobin-tmp-default-to-using-group-attach.patch
|
Patch01: annobin-tmp-default-to-using-group-attach.patch
|
||||||
Patch02: annobin-tmp-skip-libannocheck-test.patch
|
Patch02: annobin-tmp-skip-libannocheck-test.patch
|
||||||
|
|
||||||
# This is where a copy of the sources will be installed.
|
# This is where a copy of the sources will be installed.
|
||||||
%global annobin_source_dir %{?_scl_root}/%{_usrsrc}/annobin
|
%global annobin_source_dir %{?_scl_root}/%{_usrsrc}/annobin
|
||||||
|
|
||||||
%{?scl:Requires:%scl_runtime}
|
BuildRequires: %{?scl_prefix}gcc
|
||||||
%{?scl:BuildRequires:%scl_runtime}
|
BuildRequires: %{?scl_prefix}gcc-c++
|
||||||
# We need the gcc-toolset-13 version of gcc to build annobin, as otherwise the versions will not match.
|
# We need the gcc-toolset-13 version of gcc to build annobin, as otherwise the versions will not match.
|
||||||
%{?scl:Requires:%scl_require_package %{scl} gcc}
|
|
||||||
|
|
||||||
BuildRequires: %{?scl_prefix}gcc %{?scl_prefix}gcc-c++
|
|
||||||
BuildRequires: %{?scl_prefix}annobin-plugin-gcc
|
BuildRequires: %{?scl_prefix}annobin-plugin-gcc
|
||||||
|
%{?scl:BuildRequires:%scl_runtime}
|
||||||
|
|
||||||
|
%{?scl:Requires:%scl_runtime}
|
||||||
|
%{?scl:Requires:%scl_require_package %{scl} gcc}
|
||||||
|
|
||||||
%define gcc_for_annobin %{?_scl_root}/usr/bin/gcc
|
%define gcc_for_annobin %{?_scl_root}/usr/bin/gcc
|
||||||
%define gxx_for_annobin %{?_scl_root}/usr/bin/g++
|
%define gxx_for_annobin %{?_scl_root}/usr/bin/g++
|
||||||
@ -394,9 +394,8 @@ export CFLAGS="$CFLAGS -DAARCH64_BRANCH_PROTECTION_SUPPORTED=1"
|
|||||||
export CFLAGS="$CFLAGS $RPM_OPT_FLAGS %build_cflags -I%{?_scl_root}/usr/include"
|
export CFLAGS="$CFLAGS $RPM_OPT_FLAGS %build_cflags -I%{?_scl_root}/usr/include"
|
||||||
export LDFLAGS="$LDFLAGS %build_ldflags -L%{?_scl_root}/usr/lib64 -L%{?_scl_root}/usr/lib"
|
export LDFLAGS="$LDFLAGS %build_ldflags -L%{?_scl_root}/usr/lib64 -L%{?_scl_root}/usr/lib"
|
||||||
|
|
||||||
# Set target-specific security options to be used when building the
|
# Set target-specific options to be used when building the Clang and LLVM plugins.
|
||||||
# Clang and LLVM plugins. FIXME: There should be a better way to do
|
# FIXME: There should be a better way to do this.
|
||||||
# this.
|
|
||||||
%ifarch %{ix86} x86_64
|
%ifarch %{ix86} x86_64
|
||||||
export CLANG_TARGET_OPTIONS="-fcf-protection"
|
export CLANG_TARGET_OPTIONS="-fcf-protection"
|
||||||
%endif
|
%endif
|
||||||
@ -408,7 +407,7 @@ export CLANG_TARGET_OPTIONS="-mbranch-protection=standard"
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%ifnarch riscv64
|
%ifnarch riscv64
|
||||||
export CLANG_TARGET_OPTIONS="$CLANG_TARGET_OPTIONS -flto"
|
export CLANG_TARGET_OPTIONS="$CLANG_TARGET_OPTIONS -flto -O2"
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
CC=%gcc_for_annobin CXX=%gxx_for_annobin CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" CXXFLAGS="$CFLAGS" %configure ${CONFIG_ARGS} || cat config.log
|
CC=%gcc_for_annobin CXX=%gxx_for_annobin CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" CXXFLAGS="$CFLAGS" %configure ${CONFIG_ARGS} || cat config.log
|
||||||
@ -470,11 +469,20 @@ mv %{buildroot}/%{llvm_plugin_dir}/annobin-for-clang.so %{buildroot}/%{clang_plu
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if %{with gccplugin}
|
%if %{with gccplugin}
|
||||||
|
pushd %{buildroot}/%{ANNOBIN_GCC_PLUGIN_DIR}
|
||||||
|
|
||||||
# Record the version of gcc that built this plugin.
|
# Record the version of gcc that built this plugin.
|
||||||
# Note - we cannot just store %%{gcc_vr} as sometimes the gcc rpm version changes
|
# Note - we cannot just store %%{gcc_vr} as sometimes the gcc rpm version changes
|
||||||
# without the NVR being altered. See BZ #2030671 for more discussion on this.
|
# without the NVR being altered. See BZ #2030671 for more discussion on this.
|
||||||
mkdir -p %{buildroot}/%{ANNOBIN_GCC_PLUGIN_DIR}
|
cat `%gcc_for_annobin --print-file-name=rpmver` > %{aver}
|
||||||
cat `%gcc_for_annobin --print-file-name=rpmver` > %{buildroot}/%{ANNOBIN_GCC_PLUGIN_DIR}/%{aver}
|
|
||||||
|
# Also rename the plugin to its GTS variant
|
||||||
|
mv annobin.so.0.0.0 gts-annobin.so.0.0.0
|
||||||
|
rm -f annobin.so annobin.so.0 gts-annobin.so gts-annobin.so.0
|
||||||
|
ln -s gts-annobin.so.0.0 gts-annobin.so
|
||||||
|
ln -s gts-annobin.so.0.0 gts-annobin.so.0
|
||||||
|
|
||||||
|
popd
|
||||||
|
|
||||||
# Also install a copy of the sources into the build tree.
|
# Also install a copy of the sources into the build tree.
|
||||||
mkdir -p %{buildroot}%{annobin_source_dir}
|
mkdir -p %{buildroot}%{annobin_source_dir}
|
||||||
@ -537,16 +545,18 @@ make check GCC=%gcc_for_annobin
|
|||||||
%files plugin-gcc
|
%files plugin-gcc
|
||||||
%dir %{ANNOBIN_GCC_PLUGIN_DIR}
|
%dir %{ANNOBIN_GCC_PLUGIN_DIR}
|
||||||
|
|
||||||
%{ANNOBIN_GCC_PLUGIN_DIR}/annobin.so
|
%{ANNOBIN_GCC_PLUGIN_DIR}/gts-annobin.so
|
||||||
%verify(owner) %{ANNOBIN_GCC_PLUGIN_DIR}/annobin.so
|
%verify(owner) %{ANNOBIN_GCC_PLUGIN_DIR}/gts-annobin.so
|
||||||
|
|
||||||
%{ANNOBIN_GCC_PLUGIN_DIR}/annobin.so.0
|
%{ANNOBIN_GCC_PLUGIN_DIR}/gts-annobin.so.0
|
||||||
%verify(owner) %{ANNOBIN_GCC_PLUGIN_DIR}/annobin.so.0
|
%verify(owner) %{ANNOBIN_GCC_PLUGIN_DIR}/gts-annobin.so.0
|
||||||
|
|
||||||
%{ANNOBIN_GCC_PLUGIN_DIR}/annobin.so.0.0.0
|
%{ANNOBIN_GCC_PLUGIN_DIR}/gts-annobin.so.0.0.0
|
||||||
%verify(owner) %{ANNOBIN_GCC_PLUGIN_DIR}/annobin.so.0.0.0
|
%verify(owner) %{ANNOBIN_GCC_PLUGIN_DIR}/gts-annobin.so.0.0.0
|
||||||
|
|
||||||
%{ANNOBIN_GCC_PLUGIN_DIR}/%{aver}
|
%{ANNOBIN_GCC_PLUGIN_DIR}/%{aver}
|
||||||
|
|
||||||
|
%dir %{annobin_source_dir}
|
||||||
%{annobin_source_dir}/latest-annobin.tar.xz
|
%{annobin_source_dir}/latest-annobin.tar.xz
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
@ -564,6 +574,9 @@ make check GCC=%gcc_for_annobin
|
|||||||
#---------------------------------------------------------------------------------
|
#---------------------------------------------------------------------------------
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Aug 09 2024 Nick Clifton <nickc@redhat.com> - 12.65-3
|
||||||
|
- Spec File: Use correct names for the symlinks. (RHEL-53572)
|
||||||
|
|
||||||
* Tue Jul 30 2024 Nick Clifton <nickc@redhat.com> - 12.65-1
|
* Tue Jul 30 2024 Nick Clifton <nickc@redhat.com> - 12.65-1
|
||||||
- Rebase to 12.65. (RHEL-51018)
|
- Rebase to 12.65. (RHEL-51018)
|
||||||
- Annocheck: Fix recording arguments for later re-use. (RHEL-50802)
|
- Annocheck: Fix recording arguments for later re-use. (RHEL-50802)
|
||||||
|
Loading…
Reference in New Issue
Block a user