From f5a3c0eb0c25bb48f0b964b8571b4cdc9c7ef7ab Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Dec 10 2022 08:09:50 +0000 Subject: import annobin-10.94-1.el8 --- diff --git a/.annobin.metadata b/.annobin.metadata index f201021..44b8c07 100644 --- a/.annobin.metadata +++ b/.annobin.metadata @@ -1 +1 @@ -c0950f32db75ab1aa938fbd0342410c9329682f9 SOURCES/annobin-10.67.tar.xz +eff2dc8e5d552753f8c90f342b9687d7d5989480 SOURCES/annobin-10.94.tar.xz diff --git a/.gitignore b/.gitignore index 410747e..003cf85 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/annobin-10.67.tar.xz +SOURCES/annobin-10.94.tar.xz diff --git a/SPECS/annobin.spec b/SPECS/annobin.spec index a4a8d93..4402628 100644 --- a/SPECS/annobin.spec +++ b/SPECS/annobin.spec @@ -1,8 +1,8 @@ Name: annobin Summary: Annotate and examine compiled binary files -Version: 10.67 -Release: 3.0.1%{?dist} +Version: 10.94 +Release: 1%{?dist} License: GPLv3+ # Maintainer: nickc@redhat.com # Web Page: https://sourceware.org/annobin/ @@ -56,7 +56,6 @@ License: GPLv3+ %global annobin_sources annobin-%{version}.tar.xz Source: https://nickc.fedorapeople.org/%{annobin_sources} -# Source: %%{annobin_sources} # For the latest sources use: git clone git://sourceware.org/git/annobin.git # This is where a copy of the sources will be installed. @@ -157,6 +156,12 @@ Summary: Test scripts and binaries for checking the behaviour and output of the Provides a means to test the generation of annotated binaries and the parsing of the resulting files. +BuildRequires: make + +%if %{with debuginfod} +BuildRequires: elfutils-debuginfod-client-devel +%endif + %endif #--------------------------------------------------------------------------------- @@ -166,9 +171,11 @@ of the resulting files. Summary: A tool for checking the security hardening status of binaries BuildRequires: gcc elfutils elfutils-devel elfutils-libelf-devel rpm-devel binutils-devel make + %if %{with debuginfod} BuildRequires: elfutils-debuginfod-client-devel %endif + Requires: cpio rpm %description annocheck @@ -219,6 +226,12 @@ CONFIG_ARGS="--quiet --with-gcc-plugin-dir=%{ANNOBIN_GCC_PLUGIN_DIR}" %if %{with debuginfod} CONFIG_ARGS="$CONFIG_ARGS --with-debuginfod" %else +# Note - we explicitly disable debuginfod support if it was not configured. +# This is because by default annobin's configue script will assume --with-debuginfod=auto +# and then run a build time test to see if debugingfod is available. It +# may well be, but the build time environment may not match the run time +# environment, and the rpm will not have a Requirement on the debuginfod +# client. CONFIG_ARGS="$CONFIG_ARGS --without-debuginfod" %endif @@ -238,11 +251,18 @@ CONFIG_ARGS="$CONFIG_ARGS --with-llvm" CONFIG_ARGS="$CONFIG_ARGS --without-tests" %endif +%if %{without annocheck} +CONFIG_ARGS="$CONFIG_ARGS --without-annocheck" +%endif + %set_build_flags +export CFLAGS="$CFLAGS $RPM_OPT_FLAGS %build_cflags" +export LDFLAGS="$LDFLAGS %build_ldflags" + # Fedora supports AArch64's -mbranch-protection=bti, RHEL does not. %if 0%{?fedora} != 0 -export CFLAGS="$CFLAGS -DAARCh64_BRANCH_PROTECTION_SUPPORTED=1" +export CFLAGS="$CFLAGS -DAARCH64_BRANCH_PROTECTION_SUPPORTED=1" %endif CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" CXXFLAGS="$CFLAGS" %configure ${CONFIG_ARGS} || cat config.log @@ -293,6 +313,7 @@ make -C llvm-plugin all CXXFLAGS="$OPTS $BUILD_FLAGS" # PLUGIN_INSTALL_DIR is used by the Clang and LLVM makefiles... %install + %make_install PLUGIN_INSTALL_DIR=%{buildroot}/%{llvm_plugin_dir} %if %{with clangplugin} @@ -364,11 +385,46 @@ fi %{_libdir}/libannocheck.* %{_bindir}/annocheck %doc %{_mandir}/man1/annocheck.1.gz +%{_libdir}/pkgconfig/libannocheck.pc %endif #--------------------------------------------------------------------------------- %changelog +* Wed Dec 07 2022 Nick Clifton - 10.94-1 +- Rebase to 10.94. (#2151312) +- Annocheck: Better detection of binaries which do not contain code. (#2144533) +- Annocheck: Provide more information when a test is skipped because the file being tested was not compiled. +- Annocheck: Try harder not to run mutually exclusive tests. +- Tests: Fix future-test so that it properly handles the situation where the compiler does not support the new options. +- Libannocheck: Actually set result fields after tests are run. +- Libannocheck: Replace libannocheck_version variable with LIBANNOCHECK_VERSION define. +- Libannocheck: Remove 'Requires binutils-devel' from libannocheck.pc. +- Libannocheck: Move into separate sub-package. +- Libannocheck: Add libannocheck.pc pkgconfig file. +- Libannocheck: Add libannocheck_reinit(). +- GCC Plugin: Record -ftrivial-auto-var-init and -fzero-call-used-regs. +- Annocheck: Add future tests for -ftrivial-auto-var-init and -fzero-call-used-regs. +- Clang Plugin: Fix for building with Clang-15. (#2125875) +- Annocheck: Add a test for the inconsistent use of -Ofast. (#1248744) +- Plugin: Fix top level configuration support for RiscV. +- Annocheck: Improvements to the size tool. +- Annocheck: Fixes for libannocheck.h. +- Annocheck: Add automatic profile selection. +- Annocheck: Improve gap detection and reporting. +- Annocheck: Check build-id of separate debuginfo files. +- Annocheck: Add GAPS test replacing --ignore-gaps. +- Annocheck: Fix covscan detected race condition between stat() and open(). +- Annocheck: Handle binaries created by Rust 1.18. (#2094420) +- Annocheck: Add optional function name to --skip arguments. (PR 29229) +- Annocheck: Fix handling of command line options that take arguments. (#2086850) +- Annocheck: Do not complain about unenabled -mbranch-protection option in AArch64 binaries. (#2078909) +- gcc-plugin: Fix typo in configure.ac. +- Add support for RISC-V. +- Annocheck: Add another special case for glibc rpms. (#2083070) +- Annocheck: Do not complain about unenabled -mbranch-protection option in AArch64 binaries if compiled using LTO. (#2082146) +- Annocheck: Add more glibc exceptions + check PT_TLS segments. (#2081131) + * Thu Jul 21 2022 Florian Weimer - 10.67-3 - Rebuild to switch back to system annobin (#2108721)