Compare commits

...

No commits in common. "c8-beta" and "c9-beta" have entirely different histories.

3 changed files with 32 additions and 65 deletions

View File

@ -1,11 +0,0 @@
--- annobin.orig/gcc-plugin/annobin.cc 2022-06-15 11:55:16.777078303 +0100
+++ annobin-10.76/gcc-plugin/annobin.cc 2022-06-15 11:55:47.044923662 +0100
@@ -105,7 +105,7 @@ static uint annobin_active_che
/* Default to using section groups as the link-order
method needs a linker from binutils 2.36 or later. */
-attach_type annobin_attach_type = not_set;
+attach_type annobin_attach_type = group;
static const char * annobin_section_type = "%note";

View File

@ -1,12 +0,0 @@
diff -rup annobin.orig/gcc-plugin/annobin.cc annobin-10.64/gcc-plugin/annobin.cc
--- annobin.orig/gcc-plugin/annobin.cc 2022-04-06 12:55:02.350469755 +0100
+++ annobin-10.64/gcc-plugin/annobin.cc 2022-04-06 12:55:28.503296390 +0100
@@ -1851,7 +1851,7 @@ annobin_emit_start_sym_and_version_note
Ensure that we do not have empty special text sections so that the
annobin start symbols are never beyond the end of the sections. */
#ifndef ANNOBIN_NOP_INSN
-#define ANNOBIN_NOP_INSN ".nop"
+#define ANNOBIN_NOP_INSN "nop"
#endif
if (* suffix && enable_ppc64_nops)
annobin_emit_asm (ANNOBIN_NOP_INSN,

View File

@ -5,7 +5,7 @@
Name: %{?scl_prefix}annobin Name: %{?scl_prefix}annobin
Summary: Annotate and examine compiled binary files Summary: Annotate and examine compiled binary files
Version: 11.08 Version: 11.08
Release: 1%{?dist} Release: 2%{?dist}
License: GPLv3+ License: GPLv3+
URL: https://sourceware.org/annobin/ URL: https://sourceware.org/annobin/
# Maintainer: nickc@redhat.com # Maintainer: nickc@redhat.com
@ -27,14 +27,14 @@ URL: https://sourceware.org/annobin/
# time check for debuginfod support. # time check for debuginfod support.
%bcond_with debuginfod %bcond_with debuginfod
# Use "--with clangplugin" to enable the building of the annobin plugin for Clang. # Use "--without clangplugin" to disable the building of the annobin plugin for Clang.
%bcond_with clangplugin %bcond_without clangplugin
# Use "--without gccplugin" to disable the building of the annobin plugin for GCC. # Use "--without gccplugin" to disable the building of the annobin plugin for GCC.
%bcond_without gccplugin %bcond_without gccplugin
# Use "--with llvmplugin" to enable the building of the annobin plugin for LLVM. # Use "--without llvmplugin" to disable the building of the annobin plugin for LLVM.
%bcond_with llvmplugin %bcond_without llvmplugin
# Set this to zero to disable the requirement for a specific version of gcc. # Set this to zero to disable the requirement for a specific version of gcc.
# This should only be needed if there is some kind of problem with the version # This should only be needed if there is some kind of problem with the version
@ -73,8 +73,6 @@ Source: %{annobin_sources}
# Insert patches here, if needed. Eg: # Insert patches here, if needed. Eg:
# Patch01: annobin-foo.patch # Patch01: annobin-foo.patch
# NB - ADD %%patchNN line after the %%setup command down below.... # NB - ADD %%patchNN line after the %%setup command down below....
Patch01: annobin-nop.patch
Patch02: annobin-default-to-group-attach.patch
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
@ -84,7 +82,7 @@ Patch02: annobin-default-to-group-attach.patch
# We need the gcc-toolset-12 version of gcc to build annobin, as otherwise the versions will not match. # We need the gcc-toolset-12 version of gcc to build annobin, as otherwise the versions will not match.
%{?scl:Requires:%scl_require_package %{scl} gcc} %{?scl:Requires:%scl_require_package %{scl} gcc}
BuildRequires: %{?scl_prefix}gcc BuildRequires: %{?scl_prefix}gcc %{?scl_prefix}annobin-plugin-gcc
%define gcc_for_annobin %{?_scl_root}/usr/bin/gcc %define gcc_for_annobin %{?_scl_root}/usr/bin/gcc
# Make sure that the necessary sub-packages are built. # Make sure that the necessary sub-packages are built.
@ -316,8 +314,7 @@ echo "Requires: (%{?scl_prefix}gcc >= %{gcc_major} and %{?scl_prefix}gcc < %{gcc
# but then tries to change directory into <scl-prefix>-annobin-<version>. # but then tries to change directory into <scl-prefix>-annobin-<version>.
# %%autosetup -p1 # %%autosetup -p1
%setup -q -n annobin-%{version} %setup -q -n annobin-%{version}
%patch01 -p1 # %%patch01 -p1
%patch02 -p1
# The plugin has to be configured with the same arcane configure # The plugin has to be configured with the same arcane configure
# scripts used by gcc. Hence we must not allow the Fedora build # scripts used by gcc. Hence we must not allow the Fedora build
@ -385,7 +382,7 @@ export LDFLAGS="$LDFLAGS %build_ldflags"
export CLANG_TARGET_OPTIONS="-fcf-protection" export CLANG_TARGET_OPTIONS="-fcf-protection"
%endif %endif
CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" CXXFLAGS="$CFLAGS" %configure ${CONFIG_ARGS} || cat config.log CC=%gcc_for_annobin CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" CXXFLAGS="$CFLAGS" %configure ${CONFIG_ARGS} || cat config.log
%make_build %make_build
@ -467,17 +464,11 @@ rm -f %{buildroot}%{_infodir}/dir
%if %{with tests} %if %{with tests}
%check %check
# Make sure that we run the tests in the same environment as the build.
# In particular they must use the same version of gcc and the binutis.
# The sed command converts scl-gcc-toolset-12- into scl-gcc-toolset-12
source scl_source enable `echo %{?scl_prefix} | sed -e 's/-$//'`
# Change the following line to "make check || :" on RHEL7 or if you need to see the # Change the following line to "make check || :" on RHEL7 or if you need to see the
# test suite logs in order to diagnose a test failure. # test suite logs in order to diagnose a test failure.
make check make check GCC=%gcc_for_annobin
if [ -f tests/test-suite.log ]; then if [ -f tests/test-suite.log ]; then
cat tests/test-suite.log cat tests/*.log
fi fi
%endif %endif
@ -529,18 +520,23 @@ fi
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
%changelog %changelog
* Fri Feb 02 2023 Nick Clifton <nickc@redhat.com> - 11.08-2
- Re-enable building with LTO. (#2166579)
* Tue Jan 31 2023 Nick Clifton <nickc@redhat.com> - 11.08-1 * Tue Jan 31 2023 Nick Clifton <nickc@redhat.com> - 11.08-1
- Annocheck: Fix atexit test. Fix recording of version numbers. (#2165826) - Annocheck: Fix atexit test. Fix recording of version numbers. (#2165528)
* Fri Jan 13 2023 Nick Clifton <nickc@redhat.com> - 11.06-1 * Fri Jan 13 2023 Nick Clifton <nickc@redhat.com> - 11.06-1
- Annocheck: Fix handling of file built by multiple versions of gcc. (#2160701) - Annocheck: Fix handling of file built by multiple versions of gcc. (#2160700)
- Spec file: Enable annotated building. - Spec file: Enable annotated building.
* Thu Jan 12 2023 Nick Clifton <nickc@redhat.com> - 11.05-1 * Thu Jan 12 2023 Nick Clifton <nickc@redhat.com> - 11.05-1
- Annocheck: Fix handling of empty files. (#2159292) - Annocheck: Fix handling of empty files. (#2159292)
- Annocheck: Add crti.o and crtn.o to the list of known glibc special files. (#2158740) - Annocheck: Add crti.o and crtn.o to the list of known glibc special files. (#2158740)
- Annocheck: Fix memory leaks. - Annocheck: Fix memory leaks.
- Annocheck: Do not assume that object files contain no code simply because they do not have an executable segment. (#2158182)
* Thu Jan 05 2023 Nick Clifton <nickc@redhat.com> - 11.02-1
- Annocheck: Do not assume that object files contain no code simply because they do not have an executable segment. (#2158386)
- Annocheck: Add more special glibc filenames. (#2158100) - Annocheck: Add more special glibc filenames. (#2158100)
* Thu Dec 22 2022 Nick Clifton <nickc@redhat.com> - 10.99-1 * Thu Dec 22 2022 Nick Clifton <nickc@redhat.com> - 10.99-1
@ -548,12 +544,16 @@ fi
* Mon Dec 19 2022 Nick Clifton <nickc@redhat.com> - 10.98-1 * Mon Dec 19 2022 Nick Clifton <nickc@redhat.com> - 10.98-1
- GCC Plugin: Fix building with gcc-13. - GCC Plugin: Fix building with gcc-13.
* Fri Dec 16 2022 Nick Clifton <nickc@redhat.com> - 10.97-1
- Annocheck: Add test for binaries built by cross compilers. - Annocheck: Add test for binaries built by cross compilers.
- Annocheck: Improve heuristic used to detect binaries without code. (#2144533) - Annocheck: Improve heuristic used to detect binaries without code. (#2144533)
* Mon Dec 12 2022 Nick Clifton <nickc@redhat.com> - 10.95-1
- Annocheck: Use real filename rather than debuginfo filename. (#2152280) - Annocheck: Use real filename rather than debuginfo filename. (#2152280)
* Mon Dec 05 2022 Nick Clifton <nickc@redhat.com> - 10.94-2 * Mon Dec 05 2022 Nick Clifton <nickc@redhat.com> - 10.94-2
- Rename gcc plugin to gts-annobin. (#2107575) - Rename gcc plugin to gts-annobin. (#2111977)
* Wed Nov 30 2022 Florian Weimer <fweimer@redhat.com> - 10.94-1 * Wed Nov 30 2022 Florian Weimer <fweimer@redhat.com> - 10.94-1
- Rebase to 10.94, brining in support for LLVM 15. (#2118992) - Rebase to 10.94, brining in support for LLVM 15. (#2118992)
@ -579,14 +579,8 @@ fi
- Spec File: Use the %%dir directive in the %%files section to ensure that - Spec File: Use the %%dir directive in the %%files section to ensure that
- plugin directories are useable. (#2080454) - plugin directories are useable. (#2080454)
* Wed Jun 29 2022 Nick Clifton <nickc@redhat.com> - 10.76-5 * Thu Jun 23 2022 Nick Clifton <nickc@redhat.com> - 10.76-2
- Fix tests to run in a scl environment. (#2099696) - Fix libannocheck test so that it does not use lto.
* Fri Jun 24 2022 Nick Clifton <nickc@redhat.com> - 10.76-4
- Spec file: Remove bogus Provides for the annobin-doc subpackage. (#2097616)
* Mon Jun 20 2022 Nick Clifton <nickc@redhat.com> - 10.76-3
- Spec file: Correct the Provides for the annobin-doc subpackage again. (#2097616)
* Wed Jun 15 2022 Nick Clifton <nickc@redhat.com> - 10.76-1 * Wed Jun 15 2022 Nick Clifton <nickc@redhat.com> - 10.76-1
- Spec file: Correct the Provides for the annobin-doc subpackage. (#2097065) - Spec file: Correct the Provides for the annobin-doc subpackage. (#2097065)
@ -594,23 +588,19 @@ fi
- Annocheck: Add GAPS test replacing --ignore-gaps. - Annocheck: Add GAPS test replacing --ignore-gaps.
- Annocheck: Fix covscan detected race condition between stat() and open(). - Annocheck: Fix covscan detected race condition between stat() and open().
* Wed Jun 08 2022 Nick Clifton <nickc@redhat.com> - 10.74-1 * Mon Jun 13 2022 Nick Clifton <nickc@redhat.com> - 10.75-3
- Add in the missing gating.yaml file.
* Thu Jun 09 2022 Nick Clifton <nickc@redhat.com> - 10.75-1
- Annocheck: Fix covscan detected race condition between stat() and open().
- Annocheck: Handle binaries created by Rust 1.18. (#2094420) - Annocheck: Handle binaries created by Rust 1.18. (#2094420)
- Annocheck: Add optional function name to --skip arguments. (PR 29229) - Annocheck: Add optional function name to --skip arguments. (PR 29229)
* Mon Jun 06 2022 Nick Clifton <nickc@redhat.com> - 10.73-2 * Tue Jun 07 2022 Nick Clifton <nickc@redhat.com> - 10.73-2
- Default to using group attach because os s390 build problems.
* Mon Jun 06 2022 Nick Clifton <nickc@redhat.com> - 10.73-1
- Rebuild with scl macros in place. (#2091570)
- Annocheck: Fix handling of command line options that take arguments. (#2086850) - Annocheck: Fix handling of command line options that take arguments. (#2086850)
- Annocheck: Do not complain about unenabled -mbranch-protection option in AArch64 binaries. (#2078909) - Annocheck: Do not complain about unenabled -mbranch-protection option in AArch64 binaries. (#2078909)
* Fri May 27 2022 Nick Clifton <nickc@redhat.com> - 10.71-5
- Bump NVR to allow rebuild with BuildRequires temporarily set to systemOS.
* Wed May 11 2022 Nick Clifton <nickc@redhat.com> - 10.71-1 * Wed May 11 2022 Nick Clifton <nickc@redhat.com> - 10.71-1
- Initial import of annobin sources for GTS12 / RHEL8. (#2077447)
- gcc-plugin: Fix typo in configure.ac. - gcc-plugin: Fix typo in configure.ac.
* Tue May 10 2022 Nianqing Yao <imbearchild@outlook.com> - 10.70-2 * Tue May 10 2022 Nianqing Yao <imbearchild@outlook.com> - 10.70-2