Compare commits

...

66 Commits
master ... f33

Author SHA1 Message Date
Jakub Jelinek f6e97a78fc 9.68-2 2021-04-25 19:09:31 +02:00
Nick Clifton 15a0e7f874 - Annocheck: WARN if the annobin plugin was built for a newer version of the compiler than the one on which it was run. (#1950657)
- Annocheck: Improve detection of missing GNU-stack support.
- Fix anomolies reported by covscan.
- gcc-plugin: Use a fixed filename when running in LTO mode.
- Annocheck: Fix detection of special function names.  (#1934189)
- Annocheck: FAIL the deliberate use of -fno-stack-protector, but add some exceptions for glibc.  (#1923439)
- Annocheck: Add colour to some messages.  Skip the deliberate use of -fno-stack-protector.  (#1923439)
- Annocheck: Fix some problems with tests for missing notes.
- Add some GO tests to annocheck.
- Add a future fail for the presence of RPATH in the dynamic tags.
- Add the ability to disable the warning message about -D_FORTIFY_SOURCE being missing.
- Workaround for elflint problems with PPC compiled files.  (#1880634)
- Fix bogus AArch64 test failures.
- Improved testing by annocheck.  Add fixed format message mode.
- Fix inconsistency reporting -fcf-protection and -fstack-clash-protection results.
- Add support for -D_FORTIFY_SOURCE=3.
- annocheck: When a binary is produced both by GAS and GCC, select GAS as the real producer.  (#1906171)
- annocheck: Improve test for LTO compiled binaries that do not have -Wall annotations.  (#1906171)
- annocheck: Mark a missining -D_FORTIFY_SOURCE as a FAIL.
2021-04-21 13:38:20 +01:00
Nick Clifton 6a7c154f61 Rebase to 9.49 2020-12-09 16:40:43 +00:00
Nick Clifton 469bbc7e60 NVR bump to allow rebuilding without using annobin. 2020-10-07 11:31:55 +01:00
Jakub Jelinek da9d196410 Rebuilt for gcc 10.2.1-5 2020-10-06 20:40:05 +02:00
Nick Clifton 057676c5e3 gcc plugin: Do not complain about missing pre-processor options when examining a preprocessed input file.
Resolves: #1862718
2020-08-11 16:24:55 +01:00
Nick Clifton 16d8c4b5fe Use more robust checks for AArch64 options 2020-07-30 17:01:07 +01:00
Nick Clifton 1c15fe568b Fix bug testing CLANG compiler assembler sources 2020-07-30 08:40:49 +01:00
Nick Clifton 43a0359804 Bring in better fix for AArch64 pointer size bug 2020-07-29 16:37:50 +01:00
Fedora Release Engineering 6e6cadfea2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-27 12:04:18 +00:00
Nick Clifton 932b17dd34 Rebuild with plugin enabled to check that suppression is working 2020-07-26 09:42:58 +01:00
Nick Clifton 3ab9323c0b Temporary suppression of aarch64 pointer size check 2020-07-26 09:31:57 +01:00
Nick Clifton b034a2c7c1 Add support for installing clang and llvm plugins 2020-07-26 09:05:32 +01:00
Nick Clifton afb29d7d9f Disable annobin to allow rebuild. 2020-07-26 08:56:46 +01:00
Peter Robinson 229003f625 clean up .gitignore 2020-07-25 11:04:27 +01:00
Peter Robinson 8840f2fcb9 Rebuild for gcc 10.2 2020-07-25 10:44:33 +01:00
Nick Clifton 6fd2366132 Annocheck: Do not skip tests of the short-enums notes. 2020-07-01 16:59:51 +01:00
Nick Clifton 9f46ccb4ce Add (optional) llvm plugin. 2020-06-15 17:33:58 +01:00
Igor Raits c4f24c4ee5
Fix build / installation of a clang plugin
Signed-off-by: Igor Raits <ignatenkobrain@fedoraproject.org>
2020-05-27 17:07:00 +02:00
Nick Clifton 225ffdc722 Annobin: Fall back on using the flags if the option cannot be found in cl_options.
Resolves: #1817659
2020-04-22 13:01:20 +01:00
Nick Clifton 459acd6cb6 Annocheck: Detect Fortran compiled programs. (#1824393) 2020-04-16 16:29:42 +01:00
Nick Clifton ec93f17ffa Annobin: If option name mismatch occurs, seach for the real option.
Resolves: #1817452
2020-04-01 14:21:23 +01:00
Nick Clifton dcdc0af39b Annocheck: Fix a division by zero error when parsing GO binaries.
Resolves: #1818863
2020-03-30 17:13:30 +01:00
Nick Clifton dcc513660a Annobin: Fix access to the -flto and -fsanitize flags. 2020-03-27 09:53:24 +00:00
Nick Clifton 82024ae45f Add some debugging 2020-03-27 08:58:02 +00:00
Nick Clifton 25d4740c92 Use offsets stored in gcc's cl_option structure to access the global_options array, thus removing the need to check for changes in the size of this structure. 2020-03-26 15:46:44 +00:00
Nick Clifton ba9486d50e Suppress using annobin during build (temporary) 2020-03-26 12:08:28 +00:00
Nick Clifton b1078c0c21 NVR bump to allow rebuild against new gcc 2020-03-26 12:03:20 +00:00
Nick Clifton fd8169aaee Rename gcc plugin directory to gcc-plugin.
Stop annocheck from complaining about missing options when the binary has been built in a mixed environment.
2020-03-12 16:29:39 +00:00
Nick Clifton 46ef9ab08d And again, this time with annotation enabled.
Related: #1810941
2020-03-12 11:24:42 +00:00
Nick Clifton 1a0dc72791 Disable annotations whilst rebuilding. 2020-03-12 11:15:09 +00:00
Nick Clifton 1defc985fc NVR bump to enable rebuild against updated gcc.
Relates: #1810941
2020-03-12 11:10:13 +00:00
Nick Clifton 5770b9a0d8 Add BZ number to changelog 2020-03-04 14:23:48 +00:00
Nick Clifton 09d5b50939 Improve builtby tool.
Stop annocheck complaining about missing notes when the binary is not compiled by either gcc or clang.
Skip the check of the ENTRY instruction for binaries not compiled by gcc or clang.
2020-03-04 14:22:53 +00:00
Nick Clifton cb98e5f903 Fix infinite loop hangup in annocheck.
Disable debuginfod support by default.
Improve parsing of .comment section.
2020-02-28 10:43:39 +00:00
Nick Clifton 5d051cb7a7 Fix clang plugin to use hidden symbols. 2020-02-27 12:42:53 +00:00
Nick Clifton f7f58a9fb9 Add ability to build clang plugin (disabled by default). 2020-02-25 15:50:15 +00:00
Nick Clifton e8f56c0bdb Annocheck: Fix error printing out the version number. 2020-02-17 17:21:55 +00:00
Nick Clifton 1fa49e66f8 Annobin: Add checks of the exact location of the examined switches. 2020-02-14 13:48:28 +00:00
Nick Clifton eb569a62e1 Annobin: Note when stack clash notes are generated.
Annocheck: Handle multiple builder IDs in the .comment section.
2020-02-11 15:30:09 +00:00
Nick Clifton 2b9645b749 Add configure option to suppress building annocheck. 2020-01-31 13:32:01 +00:00
Nick Clifton dba13c4fd1 oops - forgot to add the new sources 2020-01-31 12:10:52 +00:00
Nick Clifton 4c77fc39e7 Fix debuginfod test. 2020-01-31 12:05:43 +00:00
Nick Clifton 30290e7bd6 Correct the build requirement for building with debuginfod support. 2020-01-30 17:18:38 +00:00
Nick Clifton 3317ae10db Add support for debuginfod (disabled by default) 2020-01-30 16:48:12 +00:00
Fedora Release Engineering b22155004c - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-28 11:36:19 +00:00
Nick Clifton 23baf8b1d3 Disable annobin whilst building annobin - in order to allow it to be rebuilt 2020-01-24 11:19:26 +00:00
Nick Clifton 3755b69778 NVR bumo 2020-01-24 10:54:37 +00:00
Nick Clifton 980573dc2e Add experimental clang plugin and rebuild with gcc-10. 2020-01-20 12:38:03 +00:00
Nick Clifton 476968a31a Version bump in order to allow rebuilding with gcc-10. 2020-01-20 11:38:51 +00:00
Nick Clifton 8997d89f3d Have annocheck ignore notes with an end address of 0. 2019-12-06 14:43:08 +00:00
Nick Clifton 9c95399d00 Add new sources 2019-11-18 21:31:07 +00:00
Nick Clifton 27da4aee96 Improve checking of gcc versions. 2019-11-18 17:37:38 +00:00
Nick Clifton df1c169d82 oops - set correct NVR. 2019-11-15 16:04:03 +00:00
Nick Clifton 9f8f0cdd01 Annocheck: Do not skip positive results. 2019-11-15 15:59:54 +00:00
Nick Clifton d97bf868e7 Generate a WARN result for code compiled with instrumentation enabled.
Relates: #1753918
2019-11-01 13:58:20 +00:00
Nick Clifton fff201eb4f Replace address checks with dladdr1. 2019-10-22 16:55:27 +01:00
Nick Clifton 046883693b Use libabigail like checking to ensure variable address consistency. 2019-10-21 16:51:56 +01:00
Nick Clifton 07e0a5ab8f Skip generation of global notes for hot/cold sections. 2019-10-16 16:35:21 +01:00
Nick Clifton 59663eb6dc Generate FAIL results if -Wall or -Wformat-security are missing. 2019-10-10 14:40:50 +01:00
Nick Clifton c240981e82 - If notes cannot be found in the executable look for them in the debuginfo file, if available.
- Generate a FAIL if notes are missing from the executable/debuginfo file.
- Record and report the setting of the AArcht64 specific -mbranch-protection option.
2019-10-04 07:59:55 +01:00
Nick Clifton af41c06a9f Improve detection of GO binaries.
Add gcc version information to annobin notes.
Do not complain about missing FORTIFY_SOURCE and GLIBCXX_ASSERTIONS in LTO compilations.
2019-09-23 13:39:55 +01:00
Nick Clifton 16503862ea NVR bump to allow rebuild against latest gcc.
Resolves: #1748529
2019-09-04 08:30:12 +01:00
Nick Clifton b6d4688b8a Allow compiler used to run tests to be specified on the command line.
Resolves: #1723401
2019-08-19 10:45:35 +01:00
Nick Clifton 4a6b895755 Fix a memory allocation error in the annobin plugin.
Resolves: #1737306
2019-08-06 15:42:50 +01:00
Fedora Release Engineering 978810c39d - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-24 17:55:36 +00:00
3 changed files with 336 additions and 138 deletions

107
.gitignore vendored
View File

@ -1,106 +1 @@
/annobin-2.0.tar.xz
/annobin-2.1.tar.xz
/annobin-2.2.tar.xz
/annobin-2.3.tar.lz
/annobin-2.3.tar.xz
/annobin-2.4.tar.xz
/annobin-2.5.tar.xz
/annobin-2.5.1.tar.xz
/annobin-3.0.tar.xz
/annobin-3.1.tar.xz
/annobin-3.2.tar.xz
/annobin-3.3.tar.xz
/annobin-3.4.tar.xz
/annobin-3.5.tar.xz
/annobin-3.6.tar.xz
/annobin-5.0.tar.xz
/annobin-5.1.tar.xz
/annobin-5.2.tar.xz
/annobin-5.3.tar.xz
/annobin-5.4.tar.xz
/annobin-5.5.tar.xz
/annobin-5.6.tar.xz
/annobin-5.7.tar.xz
/annobin-5.8.tar.xz
/annobin-5.9.tar.xz
/annobin-5.10.tar.xz
/annobin-5.11.tar.xz
/annobin-6.0.tar.xz
/annobin-6.1.tar.xz
/annobin-6.2.tar.xz
/annobin-6.3.tar.xz
/annobin-6.4.tar.xz
/annobin-6.5.tar.xz
/annobin-6.6.tar.xz
/annobin-7.0.tar.xz
/annobin-7.1.tar.xz
/annobin-8.0.tar.xz
/annobin-8.1.tar.xz
/annobin-8.2.tar.xz
/annobin-8.3.tar.xz
/annobin-8.4.tar.xz
/annobin-8.5.tar.xz
/annobin-8.6.tar.xz
/annobin-8.7.tar.xz
/annobin-8.8.tar.xz
/annobin-8.9.tar.xz
/annobin-8.10.tar.xz
/annobin-8.11.tar.xz
/annobin-8.12.tar.xz
/annobin-8.13.tar.xz
/annobin-8.14.tar.xz
/annobin-8.15.tar.xz
/annobin-8.16.tar.xz
/annobin-8.17.tar.xz
/annobin-8.18.tar.xz
/annobin-8.19.tar.xz
/annobin-8.20.tar.xz
/annobin-8.21.tar.xz
/annobin-8.22.tar.xz
/annobin-8.23.tar.xz
/annobin-8.24.tar.xz
/annobin-8.25.tar.xz
/annobin-8.26.tar.xz
/annobin-8.27.tar.xz
/annobin-8.29.tar.xz
/annobin-8.30.tar.xz
/annobin-8.31.tar.xz
/annobin-8.32.tar.xz
/annobin-8.33.tar.xz
/annobin-8.34.tar.xz
/annobin-8.35.tar.xz
/annobin-8.36.tar.xz
/annobin-8.37.tar.xz
/annobin-8.38.tar.xz
/annobin-8.39.tar.xz
/annobin-8.41.tar.xz
/annobin-8.44.tar.xz
/annobin-8.45.tar.xz
/annobin-8.48.tar.xz
/annobin-8.49.tar.xz
/annobin-8.50.tar.xz
/annobin-8.51.tar.xz
/annobin-8.52.tar.xz
/annobin-8.53.tar.xz
/annobin-8.55.tar.xz
/annobin-8.56.tar.xz
/annobin-8.57.tar.xz
/annobin-8.58.tar.xz
/annobin-8.59.tar.xz
/annobin-8.60.tar.xz
/annobin-8.61.tar.xz
/annobin-8.62.tar.xz
/annobin-8.63.tar.xz
/annobin-8.64.tar.xz
/annobin-8.65.tar.xz
/annobin-8.66.tar.xz
/annobin-8.67.tar.xz
/annobin-8.68.tar.xz
/annobin-8.69.tar.xz
/annobin-8.70.tar.xz
/annobin-8.71.tar.xz
/annobin-8.72.tar.xz
/annobin-8.73.tar.xz
/annobin-8.74.tar.xz
/annobin-8.76.tar.xz
/annobin-8.77.tar.xz
/annobin-*.tar.xz

View File

@ -1,13 +1,37 @@
Name: annobin
Summary: Binary annotation plugin for GCC
Version: 8.77
Release: 1%{?dist}
Summary: Annotate and examine compiled binary files
Version: 9.68
Release: 2%{?dist}
License: GPLv3+
URL: https://fedoraproject.org/wiki/Toolchain/Watermark
# ProtocolURL: https://fedoraproject.org/wiki/Toolchain/Watermark
# Maintainer: nickc@redhat.com
#---------------------------------------------------------------------------------
# Use "--without tests" to disable the testsuite.
%bcond_without tests
# Use "--without annocheck" to disable the installation of the annocheck program.
%bcond_without annocheck
# Use "--with debuginfod" to force support for debuginfod to be compiled into
# the annocheck program. By default the configure script will check for
# availablilty at build time, but this might not match the run time situation.
# FIXME: Add a --without debuginfod option to forcefully disable the configure
# time check for debuginfod support.
%bcond_with debuginfod
# Use "--with clangplugin" to build the annobin plugin for Clang.
%bcond_with clangplugin
# Use "--with llvmplugin" to build the annobin plugin for LLVM.
%bcond_with llvmplugin
# 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
# checking logic or when building on RHEL-7 or earlier.
%global with_hard_gcc_version_requirement 1
# # Do not build the annobin plugin with annotation enabled.
# # This is because if we are bootstrapping a new build environment we can have
@ -22,20 +46,10 @@ URL: https://fedoraproject.org/wiki/Toolchain/Watermark
# The problem should now only arise when rebasing to a new major version
# of gcc, in which case the undefine below can be temporarily reinstated.
#
# %%undefine _annotated_build
# Use "--without tests" to disable the testsuite. The default is to run them.
%bcond_without tests
# Use "--without annocheck" to disable the installation of the annocheck program.
%bcond_without annocheck
# 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
# checking logic or when building on RHEL-7 or earlier.
%global with_hard_gcc_version_requirement 1
%undefine _annotated_build
#---------------------------------------------------------------------------------
Source: https://nickc.fedorapeople.org/annobin-%{version}.tar.xz
# For the latest sources use: git clone git://sourceware.org/git/annobin.git
@ -97,6 +111,12 @@ Requires: gcc
%endif
BuildRequires: gcc gcc-plugin-devel gcc-c++
%if %{with clangplugin}
BuildRequires: clang clang-devel llvm llvm-devel compiler-rt
%endif
%if %{with llvmplugin}
BuildRequires: clang clang-devel llvm llvm-devel compiler-rt
%endif
%description
Provides a plugin for GCC that records extra information in the files
@ -105,6 +125,14 @@ that it compiles.
Note - the plugin is automatically enabled in gcc builds via flags
provided by the redhat-rpm-macros package.
%if %{with clangplugin}
Also provides a plugin for Clang which performs a similar function.
%endif
%if %{with llvmplugin}
Also provides a plugin for LLVM which performs a similar function.
%endif
#---------------------------------------------------------------------------------
%if %{with tests}
@ -124,6 +152,9 @@ 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
%if %{with debuginfod}
BuildRequires: elfutils-debuginfod-client-devel
%endif
%description annocheck
Installs the annocheck program which uses the notes generated by annobin to
@ -134,7 +165,17 @@ hardening options.
#---------------------------------------------------------------------------------
%global ANNOBIN_PLUGIN_DIR %(gcc --print-file-name=plugin)
%global ANNOBIN_GCC_PLUGIN_DIR %(gcc --print-file-name=plugin)
%if %{with clangplugin}
# FIXME: Clang does not appear to have an official plugin directory.
# Instead it just uses dlopen() with no pathname prefix. So we
# construct a (hopefully good) path and rely upon users of annobin
# knowing about this location.
# FIXME2: Currently this same path is hardcoded into the Makefile.in
# files in the clang-plugin and llvm-plugin source directories...
%global ANNOBIN_CLANG_PLUGIN_DIR /usr/lib64/clang/%(llvm-config --version)/lib
%endif
#---------------------------------------------------------------------------------
@ -144,14 +185,14 @@ if [ -z "%{gcc_vr}" ]; then
exit 1
fi
echo "Requires: (gcc >= %{gcc_major} with gcc < %{gcc_next})"
echo "Requires: (gcc >= %{gcc_major} and gcc < %{gcc_next})"
%autosetup -p1
# The plugin has to be configured with the same arcane configure
# scripts used by gcc. Hence we must not allow the Fedora build
# system to regenerate any of the configure files.
touch aclocal.m4 plugin/config.h.in
touch aclocal.m4 gcc-plugin/config.h.in
touch configure */configure Makefile.in */Makefile.in
# Similarly we do not want to rebuild the documentation.
touch doc/annobin.info
@ -159,47 +200,90 @@ touch doc/annobin.info
#---------------------------------------------------------------------------------
%build
%configure --quiet --with-gcc-plugin-dir=%{ANNOBIN_PLUGIN_DIR}
CONFIG_ARGS=
%if %{with debuginfod}
CONFIG_ARGS="$CONFIG_ARGS --with-debuginfod"
%else
CONFIG_ARGS="$CONFIG_ARGS --without-debuginfod"
%endif
%if %{with clangplugin}
CONFIG_ARGS="$CONFIG_ARGS --with-clang"
%endif
%if %{with llvmplugin}
CONFIG_ARGS="$CONFIG_ARGS --with-llvm"
%endif
%if %{without tests}
CONFIG_ARGS="$CONFIG_ARGS --without-test"
%endif
%configure --quiet --with-gcc-plugin-dir=%{ANNOBIN_GCC_PLUGIN_DIR} ${CONFIG_ARGS} || cat config.log
%make_build
# Rebuild the plugin, this time using the plugin itself! This
# ensures that the plugin works, and that it contains annotations
# of its own. This could mean that we end up with a plugin with
# double annotations in it. (If the build system enables annotations
# for plugins by default). I have not tested this yet, but I think
# that it should be OK.
cp plugin/.libs/annobin.so.0.0.0 %{_tmppath}/tmp_annobin.so
make -C plugin clean
cp gcc-plugin/.libs/annobin.so.0.0.0 %{_tmppath}/tmp_annobin.so
make -C gcc-plugin clean
BUILD_FLAGS="-fplugin=%{_tmppath}/tmp_annobin.so -fplugin-arg-tmp_annobin-rename"
# If building on RHEL7, enable the next option as the .attach_to_group assembler pseudo op is not available in the assembler.
# BUILD_FLAGS="$BUILD_FLAGS -fplugin-arg-tmp_annobin-no-attach"
make -C plugin CXXFLAGS="%{optflags} $BUILD_FLAGS"
make -C gcc-plugin CXXFLAGS="%{optflags} $BUILD_FLAGS"
rm %{_tmppath}/tmp_annobin.so
%if %{with clangplugin}
# FIXME: The symbolic link should not be needed.
ln -f -s ../annobin-global.h clang-plugin
make -C clang-plugin annobin.so
%endif
#---------------------------------------------------------------------------------
%install
%make_install
%{__rm} -f %{buildroot}%{_infodir}/dir
rm -f %{buildroot}%{_infodir}/dir
%if %{with clangplugin}
install -Dpm0755 -t %{buildroot}%{ANNOBIN_CLANG_PLUGIN_DIR} clang-plugin/annobin.so
%endif
%if %{with llvmplugin}
#FIXME: ADD INSTALL
%endif
#---------------------------------------------------------------------------------
%if %{with tests}
%check
# On RHEL7 the assembler does not support all of the annobin tests.
# 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.
make check
if [ -f tests/test-suite.log ]; then
cat tests/test-suite.log
fi
%if %{with clangplugin}
# FIXME: RUN clang tests.
%endif
%if %{with llvmplugin}
#FIXME: RUN LLVM tests.
%endif
%endif
#---------------------------------------------------------------------------------
%files
%{ANNOBIN_PLUGIN_DIR}
%{_bindir}/built-by
%{_bindir}/check-abi
%{_bindir}/hardened
%{_bindir}/run-on-binaries-in
%{ANNOBIN_GCC_PLUGIN_DIR}
%license COPYING3 LICENSE
%exclude %{_datadir}/doc/annobin-plugin/COPYING3
%exclude %{_datadir}/doc/annobin-plugin/LICENSE
@ -211,6 +295,13 @@ fi
%{_mandir}/man1/hardened.1*
%{_mandir}/man1/run-on-binaries-in.1*
%if %{with clangplugin}
%{ANNOBIN_CLANG_PLUGIN_DIR}
%endif
%if %{with llvmplugin}
%{ANNOBIN_CLANG_PLUGIN_DIR}
%endif
%if %{with annocheck}
%files annocheck
%{_bindir}/annocheck
@ -220,6 +311,218 @@ fi
#---------------------------------------------------------------------------------
%changelog
* Sun Apr 25 2021 Jakub Jelinek <jakub@redhat.com> - 9.68-2
- Rebuilt for gcc 10.3.1-1
* Wed Apr 21 2021 Nick Clifton <nickc@redhat.com> - 9.68-1
- Annocheck: WARN if the annobin plugin was built for a newer version of the compiler than the one on which it was run. (#1950657)
- Annocheck: Improve detection of missing GNU-stack support.
- Fix anomolies reported by covscan.
- gcc-plugin: Use a fixed filename when running in LTO mode.
- Annocheck: Fix detection of special function names. (#1934189)
- Annocheck: FAIL the deliberate use of -fno-stack-protector, but add some exceptions for glibc. (#1923439)
- Annocheck: Add colour to some messages. Skip the deliberate use of -fno-stack-protector. (#1923439)
- Annocheck: Fix some problems with tests for missing notes.
- Add some GO tests to annocheck.
- Add a future fail for the presence of RPATH in the dynamic tags.
- Add the ability to disable the warning message about -D_FORTIFY_SOURCE being missing.
- Workaround for elflint problems with PPC compiled files. (#1880634)
- Fix bogus AArch64 test failures.
- Improved testing by annocheck. Add fixed format message mode.
- Fix inconsistency reporting -fcf-protection and -fstack-clash-protection results.
- Add support for -D_FORTIFY_SOURCE=3.
- annocheck: When a binary is produced both by GAS and GCC, select GAS as the real producer. (#1906171)
- annocheck: Improve test for LTO compiled binaries that do not have -Wall annotations. (#1906171)
- annocheck: Mark a missining -D_FORTIFY_SOURCE as a FAIL.
* Wed Dec 09 2020 Nick Clifton <nickc@redhat.com> - 9.49-1
- Rebase to 9.49.
- annocheck: Fix notes analyzer to accept empty PPC64 notes.
- gcc plugin: Tweak generation of end symbols for PPC64 when LTO is active. (#1898075)
- gcc plugin: Add support for GCC 11's cl_vars array.
- Annocheck: Support enabling/disabling future fails.
- GCC plugin: Always record global notes for the .text.startup,
.text.exit, .text.hot and .text.cold sections.
- Clang plugin: Add -lLLVM to the build command line.
- Annocheck: Improve reporting of missing -D_FORTIFY_SOURCE option. (#1898075)
- Annocheck: Improve reporting of missing LTO option.
- Add detecting of gimple compiled binaries.
- Add --without-gcc-plugin option.
- Annocheck: Fix bug parsing DW_AT_producer.
- Add test of .note.gnu.property section for PowerPC.
- Add test of objcopy's ability to merge notes.
- Record the -flto setting and produce a soft warning if it is absent.
- Suppress warnings about _D_GLIBCXX_ASSERTIONS if the source code is known to be something other than C++.
- Correct the directory chosen for 32-bit LLVM and Clang plugins. (#1884951)
- Allow the use of the SHF_LINK_ORDER section flag to discard unused notes. (Experimental).
- Enable the build and installation of the LLVM and Clang plugins. (Experimental).
- gcc-plugin: Fix test for empty PowerPC sections. (#1880634)
- annocheck: Add tests for the AArch64 BTI and PAC security features. (#1862478)
- gcc plugin: Use a 4 byte offset for PowerPC start symbols, so that they do not break disassemblies.
- gcc plugin: Correct the detection of 32-bit x86 builds. (#1876197)
- gcc plugin: Detect any attempt to access the global_options array.
* Wed Oct 07 2020 Jakub Jelinek <jakub@redhat.com> - 9.28-3
- NVR bump to allow rebuilding without using annobin.
* Tue Oct 06 2020 Jakub Jelinek <jakub@redhat.com> - 9.28-2
- Rebuilt for gcc 10.2.1-5
* Tue Aug 11 2020 Nick Clifton <nickc@redhat.com> - 9.28-1
- gcc plugin: Do not complain about missing pre-processor options when examining a preprocessed input file. (#1862718)
* Thu Jul 30 2020 Nick Clifton <nickc@redhat.com> - 9.27-1
- Use more robust checks for AArch64 options.
* Thu Jul 30 2020 Nick Clifton <nickc@redhat.com> - 9.26-1
- Detect CLANG compiled assembler that is missing IBT support.
* Wed Jul 29 2020 Nick Clifton <nickc@redhat.com> - 9.25-1
- Improved target pointer size discovery.
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 9.24-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Sun Jul 26 2020 Nick Clifton <nickc@redhat.com> - 9.24-2
- Rebuild with plugin enabled to check that suppression works.
* Sun Jul 26 2020 Nick Clifton <nickc@redhat.com> - 9.24-1
- Add support for installing clang and llvm plugins.
- Temporary suppression of aarch64 pointer size check. (#1860549)
* Sat Jul 25 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 9.23-2
- Rebuild for gcc 10.2
* Wed Jul 01 2020 Nick Clifton <nickc@redhat.com> - 9.23-1
- Annocheck: Do not skip tests of the short-enums notes. (#1743635)
* Mon Jun 15 2020 Nick Clifton <nickc@redhat.com> - 9.22-1
- Add (optional) llvm plugin.
* Wed Apr 22 2020 Nick Clifton <nickc@redhat.com> - 9.21-1
- Annobin: Fall back on using the flags if the option cannot be found in cl_options. (#1817659)
* Thu Apr 16 2020 Nick Clifton <nickc@redhat.com> - 9.20-1
- Annocheck: Detect Fortran compiled programs. (#1824393)
* Wed Apr 01 2020 Nick Clifton <nickc@redhat.com> - 9.19-1
- Annobin: If option name mismatch occurs, seach for the real option. (#1817452)
* Mon Mar 30 2020 Nick Clifton <nickc@redhat.com> - 9.18-1
- Annocheck: Fix a division by zero error when parsing GO binaries. (#1818863)
* Fri Mar 27 2020 Nick Clifton <nickc@redhat.com> - 9.16-1
- Annobin: Fix access to the -flto and -fsanitize flags.
* Thu Mar 26 2020 Nick Clifton <nickc@redhat.com> - 9.14-1
- Annobin: Use offsets stored in gcc's cl_option structure to access the global_options array, thus removing the need to check for changes in the size of this structure.
* Thu Mar 26 2020 Nick Clifton <nickc@redhat.com> - 9.13-2
- NVR bump to allow rebuilding against new gcc.
* Thu Mar 12 2020 Nick Clifton <nickc@redhat.com> - 9.13-1
- Rename gcc plugin directory to gcc-plugin.
- Stop annocheck from complaining about missing options when the binary has been built in a mixed environment.
* Thu Mar 12 2020 Nick Clifton <nickc@redhat.com> - 9.12-3
- And again, this time with annotation enabled. (#1810941)
* Thu Mar 12 2020 Nick Clifton <nickc@redhat.com> - 9.12-2
- NVR bump to enable rebuild against updated gcc. (#1810941)
* Wed Mar 04 2020 Nick Clifton <nickc@redhat.com> - 9.12-1
- Improve builtby tool.
- Stop annocheck complaining about missing notes when the binary is not compiled by either gcc or clang.
- Skip the check of the ENTRY instruction for binaries not compiled by gcc or clang. (#1809656)
* Fri Feb 28 2020 Nick Clifton <nickc@redhat.com> - 9.11-1
- Fix infinite loop hangup in annocheck.
- Disable debuginfod support by default.
- Improve parsing of .comment section.
* Thu Feb 27 2020 Nick Clifton <nickc@redhat.com> - 9.10-1
- Fix clang plugin to use hidden symbols.
* Tue Feb 25 2020 Nick Clifton <nickc@redhat.com> - 9.09-1
- Add ability to build clang plugin (disabled by default).
* Mon Feb 17 2020 Nick Clifton <nickc@redhat.com> - 9.08-1
- Annocheck: Fix error printing out the version number.
* Fri Feb 14 2020 Nick Clifton <nickc@redhat.com> - 9.07-1
- Annobin: Add checks of the exact location of the examined switches.
* Tue Feb 11 2020 Nick Clifton <nickc@redhat.com> - 9.06-1
- Annobin: Note when stack clash notes are generated.
- Annocheck: Handle multiple builder IDs in the .comment section.
* Fri Jan 31 2020 Nick Clifton <nickc@redhat.com> - 9.05-1
- Add configure option to suppress building annocheck.
* Fri Jan 31 2020 Nick Clifton <nickc@redhat.com> - 9.04-1
- Fix debuginfod test.
* Thu Jan 30 2020 Nick Clifton <nickc@redhat.com> - 9.03-2
- Correct the build requirement for building with debuginfod support.
* Thu Jan 30 2020 Nick Clifton <nickc@redhat.com> - 9.03-1
- Add debuginfod support.
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 9.01-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Mon Jan 20 2020 Nick Clifton <nickc@redhat.com> - 9.01-2
- Rebuild againt latest gcc-10.
* Mon Jan 20 2020 Nick Clifton <nickc@redhat.com> - 9.01-1
- Add clang plugin (experimental).
* Fri Dec 06 2019 Nick Clifton <nickc@redhat.com> - 8.92-1
- Have annocheck ignore notes with an end address of 0.
* Mon Nov 18 2019 Nick Clifton <nickc@redhat.com> - 8.91-1
- Improve checking of gcc versions.
* Fri Nov 15 2019 Nick Clifton <nickc@redhat.com> - 8.90-1
- Do not skip positive results.
* Fri Nov 01 2019 Nick Clifton <nickc@redhat.com> - 8.88-1
- Generate a WARN result for code compiled with instrumentation enabled. (#1753918)
* Tue Oct 22 2019 Nick Clifton <nickc@redhat.com> - 8.87-1
- Replace address checks with dladdr1.
* Mon Oct 21 2019 Nick Clifton <nickc@redhat.com> - 8.86-1
- Use libabigail like checking to ensure variable address consistency.
* Wed Oct 16 2019 Nick Clifton <nickc@redhat.com> - 8.85-1
- Skip generation of global notes for hot/cold sections.
* Thu Oct 10 2019 Nick Clifton <nickc@redhat.com> - 8.84-1
- Generate FAIL results if -Wall or -Wformat-security are missing.
* Thu Oct 03 2019 Nick Clifton <nickc@redhat.com> - 8.83-1
- If notes cannot be found in the executable look for them in the debuginfo file, if available.
- Generate a FAIL if notes are missing from the executable/debuginfo file.
- Record and report the setting of the AArcht64 specific -mbranch-protection option.
* Mon Sep 23 2019 Nick Clifton <nickc@redhat.com> - 8.81-1
- Improve detection of GO binaries.
- Add gcc version information to annobin notes.
- Do not complain about missing FORTIFY_SOURCE and GLIBCXX_ASSERTIONS in LTO compilations.
* Wed Sep 04 2019 Nick Clifton <nickc@redhat.com> - 8.79-2
- NVR bump to allow rebuild against latest gcc. (#1748529)
* Tue Aug 06 2019 Nick Clifton <nickc@redhat.com> - 8.79-1
- Allow compiler used to run tests to be specified on the command line. (#1723401)
* Tue Aug 06 2019 Nick Clifton <nickc@redhat.com> - 8.78-1
- Fix a memory allocation error in the annobin plugin. (#1737306)
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 8.77-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Mon Jun 24 2019 Nick Clifton <nickc@redhat.com> - 8.77-1
- Another attempt at fixing the detection and reporting of missing -D_FORTIFY_SOURCE options. (#1703500)

View File

@ -1 +1 @@
SHA512 (annobin-8.77.tar.xz) = d9d393aa359ab58a24d295dd4108b0255e39cf9210ec99125ce3f3589adff795aba50234817b38134964caa2fc92cf04d6c6e2945ae6cc2e1145033383cc58cb
SHA512 (annobin-9.68.tar.xz) = ca76411cd112f61002f56d5cbe82307c3137b6da4deaaa12d70493ac514ff3950ffda4e0812c0414200a495228fe36b02a9a8628c5e616456adffe923917b391