Annocheck: Add detection of known parts of libstdc++-nonshared.a that contain gaps.

Resolves: #2217868
This commit is contained in:
Nick Clifton 2023-07-03 10:54:27 +01:00
parent 814fa70819
commit d1f0b96208
3 changed files with 19 additions and 9 deletions

1
.gitignore vendored
View File

@ -1,3 +1,4 @@
/annobin-12.09.tar.xz
/annobin-12.10.tar.xz
/annobin-12.14.tar.xz
/annobin-12.17.tar.xz

View File

@ -8,7 +8,7 @@ BuildRequires: scl-utils-build
Name: %{?scl_prefix}annobin
Summary: Annotate and examine compiled binary files
Version: 12.14
Version: 12.17
Release: 1%{?dist}
License: GPLv3+
URL: https://sourceware.org/annobin/
@ -45,8 +45,7 @@ URL: https://sourceware.org/annobin/
# checking logic or when building on RHEL-7 or earlier.
%global with_hard_gcc_version_requirement 1
#XX# %%bcond_without plugin_rebuild
%bcond_with plugin_rebuild
%bcond_without plugin_rebuild
# Allow the building of annobin without using annobin itself.
# This is because if we are bootstrapping a new build environment we can have
# a new version of gcc installed, but without a new of annobin installed.
@ -61,9 +60,9 @@ URL: https://sourceware.org/annobin/
# to gcc breaks the version installed into the buildroot. Mote however that
# uncommenting the lines below will result in annocheck not passing the rpminspect
# tests....
# %%if %%{without plugin_rebuild}
%if %{without plugin_rebuild}
%undefine _annotated_build
# %%endif
%endif
#---------------------------------------------------------------------------------
@ -72,6 +71,7 @@ Source: https://nickc.fedorapeople.org/%{annobin_sources}
# For the latest sources use: git clone git://sourceware.org/git/annobin.git
# Insert patches here, if needed. Eg:
# Patch01: annobin-foo.patch
Patch01: annobin-nop.patch
Patch02: annobin-tmp-default-to-using-group-attach.patch
@ -85,6 +85,7 @@ Patch02: annobin-tmp-default-to-using-group-attach.patch
BuildRequires: %{?scl_prefix}gcc
%define gcc_for_annobin %{?_scl_root}/usr/bin/gcc
%define gxx_for_annobin %{?_scl_root}/usr/bin/g++
#---------------------------------------------------------------------------------
@ -412,7 +413,7 @@ export CLANG_TARGET_OPTIONS="-mbranch-protection=standard"
export CLANG_TARGET_OPTIONS="-mabi=ibmlongdouble"
%endif
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
%make_build
@ -428,7 +429,7 @@ BUILD_FLAGS="-fplugin=%{_tmppath}/tmp_annobin.so"
# Disable the standard annobin plugin so that we do get conflicts.
# Note - rpm-4.10 uses a different way of evaluating macros.
%if 0%{?rhel} && 0%{?rhel} < 7
%if 0%{?rhel} && 0%{?rhel} < 9
OPTS="$(rpm --eval '%undefine _annotated_build %build_cflags %build_ldflags')"
%else
OPTS="$(rpm --undefine=_annotated_build --eval '%build_cflags %build_ldflags')"
@ -438,7 +439,7 @@ OPTS="$(rpm --undefine=_annotated_build --eval '%build_cflags %build_ldflags')"
# .attach_to_group pseudo op (eg RHEL-7) then enable the next line.
# BUILD_FLAGS="$BUILD_FLAGS -fplugin-arg-tmp_annobin-no-attach"
make -C gcc-plugin CXXFLAGS="$OPTS $BUILD_FLAGS"
make -C gcc-plugin CXX=%gxx_for_annobin CXXFLAGS="$OPTS $BUILD_FLAGS"
rm %{_tmppath}/tmp_annobin.so
%endif
@ -551,6 +552,14 @@ make check GCC=%gcc_for_annobin
#---------------------------------------------------------------------------------
%changelog
* Fri Jun 30 2023 Nick Clifton <nickc@redhat.com> - 12.17-1
- Annocheck: Add detection of known parts of libstdc++-nonshared.a that contain gaps. (#2217868)
* Tue Jun 27 2023 Nick Clifton <nickc@redhat.com> - 12.16-1
- Spec File: Rebuild with annobin annotation. (#2217812)
- Annocheck: Ignore weak/undef function symbols when checking to see if a binary contains code. (#2217840)
- Annocheck: Add --suppress-version-warnings option.
* Thu Jun 22 2023 Nick Clifton <nickc@redhat.com> - 12.14-1
- Annocheck: Do not ignore separate debuginfo files that do not contain any DWARF. (#2144553)
- Annocheck: Ignore /dev/null filename in string notes.

View File

@ -1 +1 @@
SHA512 (annobin-12.14.tar.xz) = 2adb057aefc7dc03cdef34f7d1054ead8f6cb6dabec88bd0e262357a0f456f9cb349b1eba238382cc5fa5f733e360f586282af9081178ff123e68518bb01c1be
SHA512 (annobin-12.17.tar.xz) = be1ae36ebca5890b5aa0affb2ae2462febe14f1d5734be6056ba74220e73937b515e783a549c9c26b38c73d698b14843e0e38e21e5363df2aebcd7a1b89a46b2