Compare commits

..

365 Commits

Author SHA1 Message Date
fde60ad240
Disable LTO on riscv64 for LLVM/Clang
ld.gold is not supported on riscv64. This means that LTO plugin is not
available on LLVM/Clang.

Signed-off-by: David Abdurachmanov <davidlt@rivosinc.com>
2023-08-25 09:24:49 +03:00
Nick Clifton
b8758c2ddd Annocheck: Change GO FIPS test to look for CGO_ENABLED markers. 2023-08-04 14:13:51 +01:00
Nick Clifton
1399107c1f Annocheck: Add test for FIPS compliant GO binaries. 2023-07-31 12:41:44 +01:00
Nick Clifton
bcd8d3a6c1 Annocheck: Fix double free. (#2226749) 2023-07-26 16:09:06 +01:00
Václav Kadlčík
e1ed0f967b Move downstream tests to a separate repository
The tests have been moved to
  https://src.fedoraproject.org/tests/annobin
The move will enable more flexible downstream usage, namely
in RHEL testing.
2023-07-26 13:09:38 +02:00
Fedora Release Engineering
420e5ffe64 Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-19 13:17:45 +00:00
Nick Clifton
7d937f32ea Spec File: migrated to SPDX license. (#2222112) 2023-07-18 13:13:11 +01:00
Nick Clifton
5b54cac552 Spec File: Change License field to use SPDX notation. (#2222112) 2023-07-17 13:18:39 +01:00
Nick Clifton
2b17846e9b Annocheck: Ignore AArch64 $x and $d symbols. (#2221192) 2023-07-17 10:53:34 +01:00
Nick Clifton
1652c5101a GCC Plugin: Suppress active checks for fortran sources. Improve scanning of COLLECT_GCC_OPTIONS. 2023-07-05 14:30:54 +01:00
Nick Clifton
eca718919f Remove dependency upon libiberty 2023-07-03 15:52:09 +01:00
Tom Stellard
74ac5654d6 Fix Regression/testsuite test
Rawhide now has dnf5, so we need to install dnf5-plugins for the
builddep command to work.
2023-06-29 17:25:41 +00:00
Nick Clifton
de71a8d994 Annocheck: Add detection of known parts of libstdc++-nonshared.a that contain gaps. (#2217864) 2023-06-29 15:24:28 +01:00
Nick Clifton
351368aee5 Annocheck: Ignore weak/undef function symbols when checking to see if a binary contains code. (#2217840) 2023-06-27 13:10:32 +01:00
Nick Clifton
f84a88b3c7 Annocheck: Add --suppress-version-warnings option. 2023-06-26 16:32:51 +01:00
Nick Clifton
644bc59850 Annocheck: Do not ignore separate debuginfo files that do not contain any DWARF. 2023-06-22 16:46:30 +01:00
Nick Clifton
599631e996 12.13: More tweaks to glibc detection heuristics. (#2215968) 2023-06-20 14:36:52 +01:00
Nick Clifton
91e4265352 Check for string notes in debuginfo file, even if there are ELF notes in the main file 2023-06-02 14:54:24 +01:00
Nick Clifton
6e8c98dd8f Annocheck: Add support for el10 and rhel-10 profiles. 2023-05-26 12:09:29 +01:00
Petr Písař
b92fd219d6 Rebuild against rpm-4.19 (https://fedoraproject.org/wiki/Changes/RPM-4.19) 2023-05-22 17:37:50 +02:00
Nick Clifton
9e5f183b04 add missing patch file 2023-05-05 11:44:33 +01:00
Nick Clifton
18b154e072 Enable new string format notes 2023-05-05 11:44:05 +01:00
Nick Clifton
6a9bd4377f Improve detection and reporting of problems with Rust binaries. 2023-04-28 14:22:04 +01:00
Nick Clifton
8725f42767 Annocheck: Fix detection of missing plugin options.
Resolves: #2189492
2023-04-25 17:49:30 +01:00
Nick Clifton
6a05b5374b 12.08: Fix covscan errors and libannocheck initialisation 2023-04-25 13:10:28 +01:00
Nick Clifton
c7f9bb74d9 gcc-plugin: generate warnings about misspelt -D_FORTIFY_SOURCE and/or -D_GLIBCXX_ASSERTIONS options. 2023-04-21 13:42:16 +01:00
Nick Clifton
8e60c8613b gcc-plugin: use a bigger buffer for constructing notes. 2023-04-20 17:20:10 +01:00
Nick Clifton
666fd997c8 Fix detection of optimization level in llvm plugin. 2023-04-20 11:02:31 +01:00
Nick Clifton
45e0e60d56 annocheck: Fix seg-fault when checking for glibc components in string format notes. 2023-04-19 13:22:11 +01:00
Nick Clifton
47dc851a55 configure: Simplify. 2023-04-13 20:03:14 +01:00
Nick Clifton
126c39082f Fix Clang and LLVM plugins to work with LLVM v16.
Improve string notes.
Add environment variable for annobin plugin options.
2023-04-11 13:53:28 +01:00
Nick Clifton
6f67429132 gcc plugin: Keep ELF notes at protocol version 3. 2023-03-30 12:27:52 +01:00
Nick Clifton
52cd4f8979 Annocheck: Add a few more glibc exceptions.
Protocol: Update to version 4 - add string notes.
2023-03-29 09:52:27 +01:00
Yaakov Selkowitz
4cb3354e13 Fix RHEL build
RHEL 7+ have rpm versions which support the --undefine parameter.
2023-03-14 13:40:34 -04:00
Nick Clifton
07c77149e9 Fix NVR 2023-03-13 16:10:45 +00:00
Nick Clifton
71f22a9e68 Annocheck: Update message for LTO tests. (#2177140) 2023-03-13 16:10:02 +00:00
Nick Clifton
bbc496884e Add more exceptions for glibc functions 2023-03-08 10:07:57 +00:00
Nick Clifton
24835ca037 Another special case for glibc 2023-03-03 16:06:25 +00:00
Nick Clifton
8c78c3f165 GCC Plugin: Do not run if other plugins are active. (#2162746) 2023-02-28 10:52:07 +00:00
Václav Kadlčík
85d843af12 Remove an obsoleted option from the CI plan
TMT has obsoleted the "directory" option. We do not need to replace it
with anything, the discovery phase works still the same way.
2023-02-27 09:17:24 +01:00
Nick Clifton
1465b9cc20 Annocheck: Add code to handle glibc functions built without LTO. 2023-02-23 13:44:06 +00:00
Nick Clifton
f2ce511886 Libannocheck: Fix thinko in debugging code. - Annocheck: Fix LTO test. - Notes: Display notes held in separate dbeuginfo files. 2023-02-02 15:25:05 +00:00
Nick Clifton
b9a4683387 Annocheck: Fix atexit test. Fix recording of version numbers. (#2165528) 2023-01-31 08:22:35 +00:00
Nick Clifton
fff7a22799 LLVM & Clang Plugins: Build with branch protection on AArch64. (#2164364)
Fix gating tests.
2023-01-25 12:43:46 +00:00
Václav Kadlčík
f45bd71eb3 Adapt test scripts to newest annobin versions 2023-01-24 15:15:39 +01:00
Václav Kadlčík
bc0466b88d Make requirements in gating tests more explicit
Make requirements stricter (required packages instead of recommended
packages) and remove requirements that are no longer needed. The
previous requirements caused failures in manual testing and possibly
some gating failures as well.
2023-01-24 15:09:53 +01:00
Václav Kadlčík
250db92462 Adapt to TMT 1.19+
The Fedora testing farm was updated to TMT 1.19 in December.
"how: beakerlib" in our test metadata is no longer supported,
this commit fixes it.
2023-01-24 15:05:19 +01:00
Nick Clifton
0dd004a8d8 Libannocheck: Fix bug causing infinite looping when running tests. 2023-01-20 16:38:35 +00:00
Fedora Release Engineering
d5c3f3f99c Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-18 21:45:12 +00:00
Jakub Jelinek
4cdb52a0c2 Rebuilt against GCC 13. 2023-01-16 13:06:48 +01:00
Nick Clifton
886835160d Annocheck: Fix handling of file built by multiple versions of gcc. (#2160700) 2023-01-13 16:17:24 +00:00
Nick Clifton
357f81a176 Annocheck: Fix handling of empty files. (#2159292) 2023-01-09 15:03:04 +00:00
Nick Clifton
ba8d65fa5b Annocheck: Add crti.o and crtn.o to the list of known glibc special files. (#2158740) 2023-01-06 13:50:48 +00:00
Nick Clifton
4ff4a783cb Annocheck: Fix memory leaks 2023-01-06 09:51:48 +00:00
Nick Clifton
afa3de1ef8 nnocheck: Do not assume that object files contain no code simply because they do not have an executable segment. (#2158182) 2023-01-04 15:43:33 +00:00
Nick Clifton
2ec6c8b01c annocheck: Add more special glibc files 2023-01-04 11:56:35 +00:00
Nick Clifton
8749815a76 Improve handling of tool versions 2022-12-21 16:30:12 +00:00
Nick Clifton
2bb2ec5d78 NVR bump to allow rebuild 2022-12-20 13:11:50 +00:00
Nick Clifton
c1204cc8ac Spec File: Fix rebuilding plugins (better version). 2022-12-20 11:33:24 +00:00
Nick Clifton
5271f2bc79 Spec File: Fix building with plugin_rebuild enabled. 2022-12-20 11:00:37 +00:00
Nick Clifton
be2978da15 add new sources 2022-12-16 11:36:22 +00:00
Nick Clifton
072153ed0c GCC plugin: Fix building with gcc-13. 2022-12-16 11:29:52 +00:00
Nick Clifton
2f21168d4c Annocheck: Add test for binaries built by cross compilers 2022-12-16 08:48:26 +00:00
Nick Clifton
567f2c40ba Add new sources 2022-12-15 11:30:58 +00:00
Nick Clifton
c30926d750 Annocheck: Improve heuristic used to detect binaries without code. (#2144533) 2022-12-15 11:21:15 +00:00
Nick Clifton
79c88cf669 Avoid using debug filename when parsing notes in a debuginfo file. (#2152280) 2022-12-12 13:36:29 +00:00
Nick Clifton
a943824136 Annocheck: Better detection of binaries which do not contain code. (#2144533) 2022-11-30 10:02:01 +00:00
Nick Clifton
5ed44f97c8 Annocheck: Provide more information when a test is skipped because the file being tested was not compiled. 2022-11-23 14:07:59 +00:00
Nick Clifton
e1f5135ff6 Annocheck: Try harder not to run mutually exclusive tests. 2022-11-07 18:00:03 +00:00
Nick Clifton
48b4264002 Tests: Fix future-test so that it properly handles the situation where the compiler does not support the new options. 2022-10-21 12:41:20 +01:00
Nick Clifton
3ce07632bf Libannocheck: Actually set result fields after tests are run. 2022-10-19 16:11:48 +01:00
Nick Clifton
f85d35312b Libannocheck: Replace libannocheck_version variable with LIBANNOCHECK_VERSION define. 2022-10-17 14:45:49 +01:00
Nick Clifton
0062e138c9 Libannocheck: Remove 'Requires binutils-devel' from libannocheck.pc. 2022-10-11 12:24:53 +01:00
Nick Clifton
47ea330426 Libannocheck: Move into separate sub-package. 2022-10-05 11:37:21 +01:00
Nick Clifton
5967b15825 libannocheck: Add pkgconfig file 2022-10-04 14:05:30 +01:00
Nick Clifton
b374112889 Libannocheck: Add libannocheck_reinit(). 2022-09-30 15:35:19 +01:00
Nick Clifton
157ed58dce 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.
2022-09-22 16:30:48 +01:00
Nick Clifton
867bb75b55 Clang Plugin: Fix for building with Clang-15. (#2125875) 2022-09-20 13:17:11 +01:00
Nick Clifton
0b1b4157b3 Annocheck: Add a test for the inconsistent use of -Ofast. (#1248744) 2022-09-09 14:51:52 +01:00
Nick Clifton
689378de52 Annocheck: Add a test for the inconsistent use of -Ofast. (#1248744) 2022-09-09 13:47:09 +01:00
Nick Clifton
c86583e001 NVR Bump in order to trigger a rebuild for ELN. (#2124562) 2022-09-06 16:01:29 +01:00
Nick Clifton
253c3f05a5 Plugin: Fix top level configuration support for RiscV. 2022-08-11 11:29:10 +01:00
Nick Clifton
8dc50c73e8 Annocheck: Improvements to the size tool. 2022-08-11 10:07:49 +01:00
Nick Clifton
a55206c420 Annocheck: Fixes for libannocheck.h. 2022-07-25 15:44:44 +01:00
Fedora Release Engineering
0190aaeb50 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-20 20:49:03 +00:00
Nick Clifton
794d4708ef Annocheck: Add automatic profile selection. 2022-07-05 09:16:59 +01:00
Nick Clifton
4cf5153ba7 Annocheck: Improve gap detection and reporting 2022-07-04 16:18:07 +01:00
Nick Clifton
2a644cdee4 Spec File: Use the %%dir directive in the %%files section to ensure that plugin directories are useable. (#2080454)
Spec File: Remove bogus Provides from annobin-docs subpackage.
2022-06-29 17:38:18 +01:00
Nick Clifton
278aadbc36 Annocheck: Check build-id of separate debuginfo files.
Annocheck: Add GAPS test replacing --ignore-gaps.
2022-06-14 10:18:00 +01:00
Nick Clifton
6af1867f17 Annocheck: Fix covscan detected race condition between stat() and open(). 2022-06-09 15:12:55 +01:00
Nick Clifton
d9744eac07 Annocheck: Handle binaries created by Rust 1.18. (#2094420)
Annocheck: Add optional function name to --skip arguments.  (PR 29229)
2022-06-07 16:56:59 +01:00
Nick Clifton
6aaecc9f93 Annocheck: Fix handling of command line options that take arguments. (#2086850) 2022-05-17 12:34:14 +01:00
Nick Clifton
f271cd9920 Annocheck: Do not complain about unenabled -mbranch-protection option in AArch64 binaries. (#2078909) 2022-05-16 15:53:08 +01:00
Nick Clifton
1f57bcbc2c gcc-plugin: Fix typo in configure.ac 2022-05-11 14:35:10 +01:00
David Abdurachmanov
6a039d67f0 Add support for RISC-V
Author: David Abdurachmanov <david.abdurachmanov@gmail.com>
Signed-off-by: Nianqing Yao <imbearchild@outlook.com> and David Abdurachmanov <david.abdurachmanov@gmail.com>
2022-05-11 20:51:05 +08:00
Jun Aruga
e305a8053a Add URL tag to see it by rpm -qi annobin-annocheck. 2022-05-10 15:42:24 +02:00
Nick Clifton
f0bfd1e41e Annocheck: Add another special case for glibc rpms. (#2083070) 2022-05-09 11:07:02 +01:00
Nick Clifton
67f8a8d11a Annocheck: Do not complain about unenabled -mbranch-protection option in AArch64 binaries if compiled using LTO. (#2082146) 2022-05-06 15:00:55 +01:00
Nick Clifton
75736750e6 Annocheck: Add more glibc exceptions + check PT_TLS segments. (#2081131) 2022-05-03 14:09:23 +01:00
Nick Clifton
b464395c19 Annocheck: Do not complain about missing -mbranch-protection option in AArch64 binaries if compiled by golang. 2022-04-22 08:22:06 +01:00
Nick Clifton
2e205722fd Annocheck: Do not complain about missing -mbranch-protection option in AArch64 binaries if compiled in LTO mode. 2022-04-13 09:35:37 +01:00
Nick Clifton
e0ddeb63a3 10.65: gcc-plugin: Add support for CLVC_INTEGER 2022-04-12 17:53:12 +01:00
Nick Clifton
098cf0d690 Annocheck: Even more special cases for AArch64 glibc on RHEL-8. (#2072082) 2022-04-06 12:58:19 +01:00
Nick Clifton
3de80672fa Annocheck: Add more special cases for AArch64 glibc on RHEL-8. (#2072082) 2022-04-06 12:19:52 +01:00
Nick Clifton
d4466f7406 Fix thinko in llvm plugin sources 2022-04-05 14:04:16 +01:00
Nick Clifton
eceb178173 remap OPT_Wall 2022-04-02 09:31:20 +01:00
Nick Clifton
c2186bc772 10.60: Add support for building using meson+ninja. 2022-03-31 13:41:14 +01:00
sergesanspaille
8b1a765248 Rebuilt against new LLVM release, with patch. 2022-03-30 21:33:03 +02:00
Nick Clifton
8ee18a899b Fix bug in annocheck's AArch64 property note test. 2022-03-30 11:49:43 +01:00
Nick Clifton
14685185f1 gcc-plugin: Do not issue warning messages for autoconf generated source files. (#2009958) 2022-03-14 11:53:08 +00:00
Jakub Jelinek
d5f69acf32 10.57-3 2022-03-09 19:31:39 +01:00
Jakub Jelinek
6cdacc7a72 10.57-2 2022-03-09 15:28:56 +01:00
Nick Clifton
c712a9f799 Annocheck: Update documentation and fix typo in annocheck. (#2061291) 2022-03-07 12:30:17 +00:00
Václav Kadlčík
1301bfec6a Adapt a gating test to annobin 10.56
Since 10.56, annocheck needs to be told how to handle symlinks. This
particular test was developed for the "follow symlinks" behaviour so
let's add --follow-links. However, while being here, checking on the
other code path wouldn't hurt so let's look at it, too.
2022-03-07 10:40:58 +01:00
Václav Kadlčík
ac454f15f0 Fix a typo in a gating test 2022-03-07 10:19:22 +01:00
Nick Clifton
c9b3e0dcfe Annocheck: Add option to enable/disable following symbolic links. 2022-03-04 17:29:15 +00:00
Nick Clifton
d6d59a73a8 Always identify Rust binaries, even if built on a host that does not know about Rust.
Resolves: #2057737
2022-02-28 11:53:01 +00:00
Jakub Jelinek
43a0cd19e4 10.54-4 2022-02-24 14:53:49 +01:00
Nick Clifton
1b6c8e58c5 Spec File: Use a different method to disable the annobin plugin (#2054571) 2022-02-16 12:49:47 +00:00
Jakub Jelinek
4f1eb1f73a 10.54-2 2022-02-14 10:10:40 +01:00
Nick Clifton
41efc42594 annocheck: skip PIE and PIC tests for GO binaries 2022-02-11 15:26:15 +00:00
Jakub Jelinek
5b4731b0ac 10.53-2 2022-02-06 17:45:26 +01:00
Nick Clifton
21338bea37 Borrow a patch from the GCC package to stop libtool from inserting needless runpaths into binaries. (#2030667) 2022-01-27 16:56:19 +00:00
Nick Clifton
9cdecda9e3 gcc-plugin: Use canonical_option field of save_decoded_options array. (#2047148) 2022-01-27 13:09:45 +00:00
Florian Weimer
8c2f473929 Rebuild for new gcc version 2022-01-27 10:29:49 +01:00
Nick Clifton
8e76478b1d Annocheck: Add an option to disable the use of debuginfod (if available).
Annocheck: Add more glibc special file names.
Annocheck: Skip some tests for BPF binaries.
2022-01-25 15:42:19 +00:00
Nick Clifton
a6710fda16 Annocheck: Add another glibc static library symbol. (#2043047) 2022-01-20 16:20:57 +00:00
Nick Clifton
4852d3d782 Annocheck: Skip property note test for GO binaries. (#204300) 2022-01-20 15:18:08 +00:00
Fedora Release Engineering
86fbdc98e6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-19 21:16:45 +00:00
Nick Clifton
dfa29772c3 Another NVR bump 2022-01-19 19:31:54 +00:00
Jakub Jelinek
7cf2a96973 10.48-4 2022-01-19 18:35:04 +01:00
Nick Clifton
f7e1805543 Another NVR bump 2022-01-19 14:25:39 +00:00
Nick Clifton
449fc20654 NVR bump 2022-01-19 13:56:59 +00:00
Nick Clifton
557b866dd0 GCC Plugin: Do not fail if a section cannot be attached to a group. 2022-01-17 14:38:17 +00:00
Nick Clifton
9816f99346 NVR bump to allow rebuild in a side tag. 2022-01-14 10:45:48 +00:00
Nick Clifton
a6ef977e8b GCC Plugin: Only default to link-once when using gcc-12 or later. (#2039297) 2022-01-14 09:48:30 +00:00
Nick Clifton
efff188861 Add fix for fortify test 2022-01-10 12:02:15 +00:00
Nick Clifton
244433eec3 GCC Plugin: Replace CLVC_BOOLEAN with CLVC_BIT_SET/CLVC_BIT_CLEAR. 2022-01-10 09:33:18 +00:00
Nick Clifton
c53c5783da NVR bump and disable annobin during build 2022-01-10 09:16:01 +00:00
Jakub Jelinek
b097ccc79b 10.44-4 2022-01-10 01:01:41 +01:00
Jakub Jelinek
a40c58d2d4 10.44-4 2022-01-10 01:00:55 +01:00
Jakub Jelinek
ffabcb06f2 10.44-3 2022-01-10 00:49:59 +01:00
Jakub Jelinek
550ef1b763 10.44-2 2022-01-10 00:25:58 +01:00
Jakub Jelinek
c34a9f5bc5 10.44-2 2022-01-09 20:08:02 +01:00
Nick Clifton
a14426ce95 Annocheck: Add even more glibc function names. (#2037333) 2022-01-07 15:09:37 +00:00
Nick Clifton
ee78766bff Annocheck: ARM: Do not fail tests that rely upon annobin notes. 2022-01-07 14:10:23 +00:00
Nick Clifton
0000a56eab Annocheck: Extend list of known glibc functions. (#2037333) 2022-01-05 15:38:48 +00:00
Nick Clifton
1e262d15b3 - Annocheck: Ignore gaps that contain the _start symbol (for AArch64). (#1995224)
- Annocheck: Ignore more glibc special binaries.  (#2037220)
2022-01-05 12:06:02 +00:00
Nick Clifton
b4ba4e0d3c Annocheck: Do not complaining about missing stack clash notes if the compilation used LTO. (#2034946) 2022-01-04 11:42:27 +00:00
Nick Clifton
ec8f2b145d - Annocheck: Add /usr/lib/ld-linux-aarch64.so.1 to the list of known glibc binaries. (#2033255)
- Doc: Note that ENDBR is only needed as the landing pad for indirect branches/calls.  (#28705)
- Spec File: Store full	gcc version release string in plugin info file.  (#2030671)
2021-12-17 15:46:16 +00:00
Nick Clifton
15b34fde9c Fix for RHEL-7 2021-12-14 17:55:37 +00:00
Nick Clifton
7c94cb66cc Annocheck: Do not complaining about missing -mstackrealign notes in LTO mode. (#2030298) 2021-12-14 10:04:35 +00:00
Nick Clifton
0c278a5d73 GCC Plugin: Do not record missing -mstackrealign in LTO mode. (#2030298) 2021-12-13 17:54:33 +00:00
Nick Clifton
0e6be40a3c Tests: Fix fortify and debuginfod tests to use newly built annobin plugin. 2021-12-13 13:41:04 +00:00
Nick Clifton
77a92a7119 Tests: Fix fortify and debuginfod tests to use newly built annobin plugin. 2021-12-13 12:55:43 +00:00
Nick Clifton
d83b796c87 Tests: Fix gaps and stat tests to use newly built annobin plugin. (#2028063) 2021-12-06 17:49:41 +00:00
Nick Clifton
ce231f4bd9 Tests: Fix gaps and stat tests to use newly built annobin plugin. (#2028063) 2021-12-06 14:43:50 +00:00
Nick Clifton
c7d76e06c2 Annocheck: Ignore gaps in binaries at least partial built by golang.
Resolves: #2028583
2021-12-06 12:19:06 +00:00
Nick Clifton
c99cca3ac4 Annocheck: Allow spaces in golang symbols. 2021-12-02 15:38:52 +00:00
Nick Clifton
3bf68f34bb Initial checkin of libannocheck 2021-12-01 15:53:49 +00:00
Nick Clifton
14b9ff320e gcc-plugin: Fix bug creating empty attachments.
Annocheck: Change MAYB result to SKIP for DT_RPATH.  (#2026300)
2021-11-24 14:03:50 +00:00
Nick Clifton
9fd7a9a7dc Annocheck: Skip missing fortify/warning notes for ARM32. 2021-11-19 12:25:11 +00:00
Nick Clifton
ddf58cca97 gcc-plugin: Try another fix for ppc64le section grouping. (#2023437) 2021-11-18 13:29:22 +00:00
Nick Clifton
cfbdb08f28 gcc-plugin: Revert 10.22 change. (#2023437) 2021-11-16 17:01:20 +00:00
Nick Clifton
5faade2ad7 Add support for more special glibc functions.
Fix building LLVM and Clang plugins for the ARM architecture.
2021-11-16 11:14:14 +00:00
Nick Clifton
92c34892f6 Annocheck: Add a test for unicode characters in identifiers. 2021-11-08 13:47:26 +00:00
Nick Clifton
18219884f1 gcc-plugin: Default to link-order grouping for PPC64LE. (#2016458) 2021-10-27 11:10:47 +01:00
Nick Clifton
ee53f9336e Annocheck: Do not fail if a --skip-<name> option does not match a known test.
ldconfig-test: Skip the LTO check.
2021-10-26 15:58:02 +01:00
Nick Clifton
7add09b73e Annocheck: Add more glibc function names. 2021-10-26 08:28:59 +01:00
Nick Clifton
7f58204567 gcc-plugin: Fix attaching the .text section to the .text.group section. 2021-10-21 13:48:54 +01:00
Nick Clifton
0bd26e8615 Complain about DT_RPATH for Fedora binaries. 2021-10-20 17:49:04 +01:00
Nick Clifton
3f7c00bf57 Better reporting of problems in object files.
Resolves: #2013708
2021-10-18 16:17:25 +01:00
Nick Clifton
7bc94a3f7c Add a requirement on llvm-libs for clang and llvm plugins.
Resolves: #2014573
2021-10-18 14:24:09 +01:00
Nick Clifton
0c5b1fec47 Fix configuring annocheck without gcc-plugin.
- Annocheck: Better reporting of debuginfod problems.
- Tests: Fix bugs in debuginfod test.
2021-10-14 20:04:48 +01:00
Nick Clifton
ab631794b6 Fix merge issues. 2021-10-13 11:56:58 +01:00
Nick Clifton
8477e1751d Annocheck: Add tests based upon recent bug fixes. 2021-10-13 11:55:02 +01:00
Tom Stellard
825be9a6a2 Rebuild for llvm-13.0.0 2021-10-12 16:29:18 +00:00
Nick Clifton
f1b2a85f11 Annocheck: Fix memory corruptions when using --debug-path and when a corrupt note is found.
Resolves: #2011438
2021-10-08 16:25:13 +01:00
Nick Clifton
f25c7c2336 Annocheck: Fix MAYB results for mixed GO/C files.
Annocheck: Move some messages from VERBOSE to VERBOSE2.
Annocheck: Scan zero-length tool notes.
2021-10-08 14:15:39 +01:00
Nick Clifton
efe8b5622b Annocheck: Fix covscan detected flaws.
plugins: Add more required build options.
2021-10-06 10:59:43 +01:00
Nick Clifton
c27947f871 Annocheck: Fix cf-prot test to fail if the CET notes are missing.
Annocheck: Skip gaps in the .plt section.
Plugins: Add -g option when building LLVM and Clang.
2021-10-05 14:28:09 +01:00
Nick Clifton
37b5de8c9b Annocheck: Add more cases of glibc startup functions. 2021-10-04 15:26:35 +01:00
Nick Clifton
5f79645f58 - Annocheck: Fix covscan detected problems.
- Annocheck: Add --profile=el8.
- gcc-plugin: Conditionalize generation of branch protection note.
2021-10-01 13:11:12 +01:00
Nick Clifton
da3ba09492 Annocheck: Ignore gaps containing NOP instructions. 2021-09-29 13:12:12 +01:00
Nick Clifton
c62bd663ec GCC Plugin: Fix detection of running inside the LTO compiler. (#2004917) 2021-09-16 15:06:57 +01:00
Nick Clifton
ee93527317 Annocheck: Do not insist on the DT_AARCH64_PAC_PLT flag being present in AArch64 binaries. 2021-09-15 15:00:18 +01:00
Nick Clifton
0aa5d1ce55 Annocheck: With gaps at the start/end of the .text section, check for special symbols before displaying a MAYB result. 2021-09-15 12:09:38 +01:00
Nick Clifton
a99d618d38 Annocheck: Do not set CFLAGS/LDFLAGS when building. Take from environment instead. 2021-09-15 10:43:42 +01:00
Nick Clifton
92cb681581 Annocheck: Fix exit code when tests PASS. 2021-09-10 11:08:17 +01:00
Nick Clifton
fe496281b3 - Documentation: Add node for each hardening test.
- Documentation: Install online.
- Annocheck: Annote FAIL and MAYB results with URL to documentation
- Annocheck: Add --no-urls and --provide-urls options
- Annocheck: Add --help-<tool> option.
2021-09-09 14:18:24 +01:00
Nick Clifton
9d82370d42 - Annocheck: Fix fuzzing detected failures.
- Annocheck: Added --profile option.
- Docs: Documented --profile option and rpminspect.yaml.
2021-09-03 17:55:06 +01:00
Nick Clifton
ba44d58e22 Annocheck: Skip GO/CET checks. Fix fuzzing detected failures. 2021-08-31 15:18:09 +01:00
Nick Clifton
29d70de971 LLVM Plugin: Automatically choose the correct tests to run, based upon the version of Clang installed. (#1997444)
spec file: Add the installation of the annobon sources into /usr/src/annobin.
2021-08-25 13:38:58 +01:00
Nick Clifton
1d5918a750 Annocheck: Fix memory corruption. (#1996963)
spec file: Add the creation of a gcc-plugin version info file in /usr/lib/rpm/redhat.
2021-08-24 17:16:30 +01:00
Martin Cermak
5e4c738a8f CI Gating: Test cover bz1991931 2021-08-20 15:25:33 +02:00
Martin Cermak
be3e1af704 CI Gating: Test cover bz1988715 2021-08-20 14:43:36 +02:00
Martin Cermak
ced3a24210 CI gating: Test cover bz1988714 2021-08-20 14:04:14 +02:00
Nick Clifton
7a0769e513 Annocheck: Add linker generated function for ppc64le exceptions. (#1981410)
LLVM Plugin: Allow checks to be selected from the command line.
Annocheck: Examine DW_AT_producer for -flto.
2021-08-18 11:28:24 +01:00
Nick Clifton
5d4d27dda9 Annocheck: Conditionalize detection of AArch64's PAC+BTI protection.
Annocheck: Add linker generated function for s390x exceptions.  (#1981410)
2021-08-17 15:03:42 +01:00
Nick Clifton
6d69597433 Annocheck: Generate MAYB results for gaps in notes covering the .text section. (#1991943)
Annocheck: Close DWARF file descriptors once the debug info is no longer needed.  (#1981410)
LLVM Plugin: Update to build with Clang v13.  (Thanks to: Tom Stellard <tstellar@redhat.com>)
2021-08-17 12:10:03 +01:00
Tom Stellard
438dd33afc Rebuild for LLVM 13.0.0-rc1 2021-08-16 20:04:41 +00:00
Nick Clifton
c76d8664da Annocheck: Fix memory corruption. (#1988715) 2021-08-16 12:41:17 +01:00
Nick Clifton
75a23fb883 Annocheck: Skip certain tests for kernel modules. 2021-08-11 17:23:33 +01:00
Nick Clifton
71f8485e39 Annocheck: Detect a missing CET note. (#1991931)
Annocheck: Do not report future fails for AArch64 notes.
Annocheck: Warn about multiple --debug-file, --debug-rpm and --debug-dir options.
2021-08-10 15:14:48 +01:00
Nick Clifton
4af05b1261 Annocheck: Process files in command line order. (#1988714) 2021-08-09 11:14:43 +01:00
Nick Clifton
0394c1d928 Annocheck: Reverse AArch64 PAC+BTI check, ie fail if they are enabled.
Resolves: #1984995
2021-07-23 13:36:44 +01:00
Fedora Release Engineering
8155573258 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-21 17:34:53 +00:00
Fedora Release Engineering
dd22b2eaf4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-21 12:39:14 +00:00
Martin Cermak
80ffabd2a3 Test cover bz1973981 2021-07-20 11:28:05 +00:00
Nick Clifton
8adc17e68b Annocheck: Add another test exceptions. 2021-07-13 17:15:00 +01:00
Nick Clifton
5bbd4f5f31 Annocheck: Add some more test exceptions. 2021-07-13 15:39:21 +01:00
Nick Clifton
a978ea49fa Tests: Skip glibc-notes test if the assembler does not support --generate-missing-build-notes.
Resolves: #1978573
2021-07-05 12:49:37 +01:00
Nick Clifton
dfddf61cdd Annocheck: Fix spelling mistake in -,stack-realign failure message. (#1977349) 2021-06-29 16:06:16 +01:00
Nick Clifton
76947e83c2 gcc-plugin: Do not record global versions of stack protection settings in LTO mode, if not set. (#1958954) 2021-06-22 16:05:21 +01:00
Nick Clifton
14c8067c11 annocheck: Remove limit on number of input files. 2021-06-21 16:16:26 +01:00
Martin Cermak
a9360e73d9 CI testing: Add test covering rhbz1969584 2021-06-18 16:53:30 +00:00
Nick Clifton
f1a1007e43 clang/llvm plugins: Build with correct security options. 2021-06-15 14:48:49 +01:00
Nick Clifton
96f1a8a19f Annocheck: Better detection of GO compiler version. 2021-06-15 12:10:19 +01:00
Nick Clifton
55304ea386 Annocheck: Better support for symbolic links. In verbose mode, report the reason for skipping specific tests.
Resolves: #1969584
2021-06-09 16:49:05 +01:00
Tom Stellard
524ebdae25 Rebuild for LLVM 12.0.1 2021-06-04 01:39:25 +00:00
Nick Clifton
993873ad36 Obsolete all previous versions of annobin.
Resolves: #1967339
2021-06-03 11:41:16 +01:00
Nick Clifton
1c617b1ec0 annocheck: Improve detection of shared libraries.
Resolves: #1958954
2021-05-25 14:54:34 +01:00
Nick Clifton
45b479d2d6 Tidy up spec file 2021-05-19 12:05:01 +01:00
Nick Clifton
81adad3f31 annocheck: Accept 0 as a valid number for gcc minor versions and release numbers.
gcc-plugin: Add support for ARM and RISCV targets.
2021-05-13 12:41:45 +01:00
Martin Cermak
a9f3f30da4 Log package versions in CI tests 2021-05-13 13:01:56 +02:00
Nick Clifton
394bd0083f timing: do not initialise the clock if the timing tool is disabled. 2021-05-04 15:15:25 +01:00
Nick Clifton
689a7f6f54 gcc-plugin: Replace ICE messsages with verbose messages. 2021-04-30 09:50:06 +01:00
Nick Clifton
e5cf20e0a3 Fix the testsuite so that it can be run in parallel. 2021-04-22 14:15:51 +01:00
Nick Clifton
9e62aa8ed8 Annocheck: WARN if the annobin plugin was built for a newer version of the compiler than the one on which it was run.
Related: #1950657
2021-04-21 12:56:16 +01:00
Petr Písař
99c1127a11 Obsolete annobin < 9.66-1
We want to support an upgrade from a distribution prior an introduction
of annobin-docs.
2021-04-20 13:53:58 +02:00
Nick Clifton
1622358fc1 Annocheck: Improve detection of missing GNU-stack support. 2021-04-20 12:35:20 +01:00
Petr Písař
60b4b4fa76 Bump a release
annobin-9.66-3.fc35 was already used in FEDORA-2021-91bdf0b234 update
which went to stable and then untagged. We cannot detach a build from
a finished update.
2021-04-19 09:51:01 +02:00
Martin Cermak
604b1841b5 Avoid mixing STI and FMF tests
Related: https://pagure.io/fedora-ci/general/issue/206

Also, drop unneeded legacy Makefile's and PURPOSE files,
and explicitly require gcc.rpm, which is not installed
on the CI workers by default any more it seems.
2021-04-16 19:13:27 +02:00
Petr Písař
7d1af348fb Build-requiring perl-interpreter is enough 2021-04-16 13:26:58 +02:00
Petr Písař
62f4dedb91 Correct a package rename
annobin-9.65 which only contained documentation was renamed to
annobin-docs in in 9.66. The Provide is kept for compatibility
(redhat-rpm-config).

The docs subpackage must be required by all the other ones because it
packages a license.
2021-04-16 13:22:35 +02:00
Martin Cermak
985cb77f4c Fix bz1949570 - file conflicts after separating docs to a noarch subrpm 2021-04-16 09:16:09 +02:00
Nick Clifton
1d6e1bf892 Add new sources 2021-04-09 14:58:04 +01:00
Nick Clifton
296c2a76fb - Fix anomolies reported by covscan.
- Move documentation into a sub-package.
2021-04-09 14:51:58 +01:00
Tom Stellard
90e03be330 Add gating test to check annobin works with Fedora compiler flags 2021-04-06 19:32:59 +00:00
Nick Clifton
d57da4f976 NVR bump to allow rebuilding against GCC 11.0.1 2021-04-06 12:44:50 +01:00
Jakub Jelinek
c910f2212a 9.65-2 2021-03-20 11:05:06 +01:00
Nick Clifton
4a7311622e gcc-plugin: Use a fixed filename when running in LTO mode. 2021-03-09 13:38:59 +00:00
Nick Clifton
60c8169066 Annocheck: Fix detection of special function names.
Resolves: #1934189
2021-03-03 10:10:12 +00:00
Nick Clifton
1720e01afe Annocheck: FAIL the deliberate use of -fno-stack-protector, but add some exceptions for glibc.
Resolves: #1923439
2021-02-26 10:09:08 +00:00
Nick Clifton
891fad1c0c Annocheck: Add colour to some messages. Skip the deliberate use of -fno-stack-protector.
Resolves: #1923439
2021-02-25 11:22:54 +00:00
Nick Clifton
a35ca900df Annocheck: Fix some problems with tests for missing notes. 2021-02-22 13:02:23 +00:00
Tom Stellard
92c8279fc3 Split plugins into separate sub-packages
Since annobin is required by redhat-rpm-config, having the clang and llvm plugins
as part of the default package means that llvm-libs is always installed into
the buildroot, which is unnecessary for most packages.

Also, having an llvm depenency in the buildroot makes upgrading llvm more difficult.

This patch attempts to resolve these issues by spliting up the various plugins
into their own sub-packages, so that redhat-rpm-config can have finer-grained
dependencies on only the plugins that it needs.
2021-02-10 22:17:14 +00:00
Nick Clifton
2cfdfdf4f4 Add some GO tests to annocheck. 2021-02-05 11:21:57 +00:00
Martin Cermak
ebf96c4e2b Introduce kernel rebuild CI test
Introduce baseos-qe.koji-build.scratch-build.validation as a new
gating test for annobin. The test makes sure that the annobin
update under test doesn't break the kernel build process. The
testing kernel build happens in koji in a side-tag buildroot
containing the annobin build under test.

The source code of this new testcase lives here:
https://github.com/fedora-ci/scratch-build-test

In case of a failure that is considered a false positive, the test
result can be waived using Bodhi this way:
https://docs.fedoraproject.org/en-US/ci/gating/#_waive
2021-02-02 12:21:12 +01:00
Fedora Release Engineering
7c61286322 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-26 00:07:03 +00:00
Nick Clifton
3a4181e531 Add a future fail for the presence of RPATH in the dynamic tags. 2021-01-20 11:15:10 +00:00
Nick Clifton
df15f450f0 Add the ability to disable the warning message about -D_FORTIFY_SOURCE being missing. 2021-01-18 18:09:39 +00:00
Nick Clifton
1874eab6f1 Workaround for elflint problems with PPC compiled files.
Resolves: #1880634
2021-01-14 10:37:21 +00:00
Nick Clifton
8b182011da Fix bogus AArch64 test failures. 2021-01-13 10:30:18 +00:00
Nick Clifton
d119c7a74a Improved testing by annocheck. Add fixed format message mode. 2021-01-12 17:19:21 +00:00
Nick Clifton
3bac683d82 Add support for -D_FORTIFY_SOURCE=3. 2021-01-04 16:18:52 +00:00
Tom Stellard
f470483cbf Add BuildRequires: make
https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot
2020-12-16 23:29:24 +00:00
Nick Clifton
5509907436 NVR bump in order to allow the new gating tests to be run. 2020-12-11 17:04:35 +00:00
Nicholas Clifton
1032ac3725 Merge #3 Introduce CI gating 2020-12-11 17:00:47 +00:00
Nick Clifton
4a3a6f104e annocheck: When a binary is produced both by GAS and GCC, select GAS as the real producer. (#1906171) 2020-12-11 14:53:32 +00:00
Martin Cermak
8e0683cc13 Introduce CI gating 2020-12-10 17:51:10 +01:00
Nick Clifton
409120aa01 annocheck: Improve test for LTO compiled binaries that do not have -Wall annotations. (#1906171) 2020-12-10 11:48:06 +00:00
Nick Clifton
d7a90f1991 annocheck: Mark a missining -D_FORTIFY_SOURCE as a FAIL. 2020-12-09 17:15:19 +00:00
Nick Clifton
46640ca3dc 9.49: annocheck: Fix the note analyzer's handling of empty PowerPC64 notes. 2020-12-08 12:58:44 +00:00
Jakub Jelinek
e1bd496eeb Undo bcond_with plugin_rebuild 2020-12-07 15:26:36 +01:00
Jakub Jelinek
dc5d2731d4 9.48-5 2020-12-07 15:08:29 +01:00
Jakub Jelinek
ec71c316e1 9.48-5 2020-12-07 14:50:08 +01:00
Jakub Jelinek
44aadc55ff 9.48-4 2020-12-06 12:17:38 +01:00
Jakub Jelinek
841b371c4b 9.48-3 2020-12-06 12:01:09 +01:00
Jakub Jelinek
252b28fa8e 9.48-3 2020-12-06 11:56:05 +01:00
Jakub Jelinek
2662d34233 9.48-3 2020-12-06 11:49:53 +01:00
Jakub Jelinek
432e8594c3 9.48-3 2020-12-06 11:47:18 +01:00
Jakub Jelinek
a057c0a359 9.48-3 2020-12-06 11:30:03 +01:00
Jakub Jelinek
ebfb417770 9.48-2 2020-12-06 11:18:53 +01:00
Nick Clifton
62931e922e 9.48: gcc plugin: Tweak generation of end symbols for PPC64 when LTO is active. (#1898075) 2020-12-02 12:12:12 +00:00
Nick Clifton
24fe187a8d 9.47: gcc plugin: Add support for GCC 11's cl_vars array. 2020-12-01 13:39:47 +00:00
Jakub Jelinek
3e0594350d Revert plugin_rebuild back. 2020-11-27 11:09:43 +01:00
Jakub Jelinek
3ed514a41c NVR bump for another ELN sidetag rebuild. 2020-11-27 11:04:11 +01:00
Nick Clifton
ea02dafc1f Annocheck: Support enabling/disable future fail tests. 2020-11-24 10:39:50 +00:00
Nick Clifton
b333964fd5 GCC plugin: Always record global notes for the .text.startup, .text.exit, .text.hot and .text.cold sections. 2020-11-23 12:12:25 +00:00
Nick Clifton
62e7074ffd Clang plugin: Add -lLLVM to the build command line. 2020-11-17 16:30:19 +00:00
Nick Clifton
5b0e474e77 Annocheck: Improve reporting of missing -D_FORTIFY_SOURCE option. (#1898075) 2020-11-16 14:26:06 +00:00
Nick Clifton
3cff478cb4 Annocheck: Improve reporting of missing LTO option. 2020-11-16 11:40:56 +00:00
Nick Clifton
33cfa7d0eb annocheck: Add handling of gimple compiled files 2020-11-10 16:41:31 +00:00
Nick Clifton
c0eabbb63f Add --without-gcc-plugin option. 2020-11-09 13:55:03 +00:00
Nick Clifton
e6e8317766 Annocheck: Fix bug parsing DW_AT_producer. 2020-11-06 12:30:46 +00:00
Nick Clifton
34a622f99e Add reporting of GNU Property notes for PowerPC.
Add test of objcopy's note merging abilities.
2020-11-04 14:17:42 +00:00
Jakub Jelinek
5b5750dca2 Revert back to defaults. 2020-10-30 01:24:55 +01:00
Jakub Jelinek
2b20a13c51 9.36-2 2020-10-30 01:10:33 +01:00
Jakub Jelinek
a87d8021be 9.36-2 2020-10-30 00:17:46 +01:00
Nick Clifton
a707c7d43e 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++.
2020-10-21 15:18:44 +01:00
Nick Clifton
440266bff3 NVR bump and disable plugin use 2020-10-21 11:35:20 +01:00
Nick Clifton
70bb1086ca turn off hard gcc reqauirement (temporary) 2020-10-21 11:12:51 +01:00
Nick Clifton
b2d7c66572 NVR bump and disable plugin use 2020-10-21 10:24:44 +01:00
Nick Clifton
d69789a4b8 NVR bump 2020-10-21 10:23:00 +01:00
Nick Clifton
5515ddd6c9 Correct the directory chosen for 32-bit LLVM and Clang plugins.
Resolves: #1884951
2020-10-05 12:40:13 +01:00
Nick Clifton
d94f0f89ce gcc-plugin: Allow the use of the SHF_LINK_ORDER section flag to discard unused notes. (Experimental). 2020-10-02 13:29:31 +01:00
Nick Clifton
ad2a3b8d06 Enable the Clang and LLVM plugins by default. (Experimental). 2020-09-28 11:41:09 +01:00
Nick Clifton
5a05a4d64e gcc-plugin: Fix test for empty PowerPC sections.
Resolves: #1880634
2020-09-21 13:13:34 +01:00
Nick Clifton
a305baad65 NVR bump to allow rebuild 2020-09-17 13:55:20 +01:00
Nick Clifton
087486d90e annocheck: Add tests for the AArch64 BTI and PAC security features.
Resolves: #1862478
2020-09-16 07:47:41 +01:00
Nick Clifton
353a681587 gcc plugin: Use a 4 byte offset for PowerPC start symbols, so that they do not break disassemblies. 2020-09-10 13:42:30 +01:00
Nick Clifton
397174a269 gcc plugin: Correct the detection of 32-bit x86 builds.
Resolves: #1876197
2020-09-10 11:06:24 +01:00
Nick Clifton
d9c1db450f gcc plugin: Detect any attempt to access the global_options array. 2020-08-17 10:51:27 +01: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
8 changed files with 1447 additions and 186 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

108
.gitignore vendored
View File

@ -1,106 +1,2 @@
/annobin-2.0.tar.xz /annobin-*.tar.xz
/annobin-2.1.tar.xz /annobin-9.51-1.fc34.src.rpm
/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

View File

@ -0,0 +1,40 @@
From fdc6708a31f3569547daffbc4196c1c25fa2e1da Mon Sep 17 00:00:00 2001
From: David Abdurachmanov <davidlt@rivosinc.com>
Date: Fri, 28 Apr 2023 15:37:28 +0000
Subject: [PATCH] Remove -flto from Clang & LLVM plugins
This requres LLVMgold.so, which is not supported right now.
Signed-off-by: David Abdurachmanov <davidlt@rivosinc.com>
---
clang-plugin/Makefile.in | 1 -
llvm-plugin/Makefile.in | 1 -
2 files changed, 2 deletions(-)
diff --git a/clang-plugin/Makefile.in b/clang-plugin/Makefile.in
index 5e4dc24..26cd5d9 100644
--- a/clang-plugin/Makefile.in
+++ b/clang-plugin/Makefile.in
@@ -14,7 +14,6 @@ PLUGIN_OPTIONS = \
-fPIC \
-Wall \
-O2 \
- -flto \
-g -grecord-gcc-switches \
-Wl,--build-id=md5 \
-Wl,-z,now
diff --git a/llvm-plugin/Makefile.in b/llvm-plugin/Makefile.in
index 36d7c41..5009a39 100644
--- a/llvm-plugin/Makefile.in
+++ b/llvm-plugin/Makefile.in
@@ -14,7 +14,6 @@ PLUGIN_OPTIONS = \
-fPIC \
-Wall \
-O2 \
- -flto \
-g -grecord-gcc-switches \
-Wl,--build-id=md5 \
-Wl,-z,now
--
2.40.0

View File

@ -0,0 +1,11 @@
--- annobin.orig/gcc-plugin/annobin.cc 2023-05-05 11:03:18.395959180 +0100
+++ annobin-12.10/gcc-plugin/annobin.cc 2023-05-05 11:04:03.241964885 +0100
@@ -80,7 +80,7 @@ unsigned long annobin_max_stack_size =
bool annobin_is_64bit = false;
/* Where to put notes. */
-note_type annobin_note_format = note;
+note_type annobin_note_format = string;
/* Default to using section groups as the link-order
method needs a linker from binutils 2.36 or later. */

File diff suppressed because it is too large Load Diff

20
gating.yaml Normal file
View File

@ -0,0 +1,20 @@
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_stable
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
- !PassingTestCaseRule {test_case_name: baseos-qe.koji-build.scratch-build.validation}
--- !Policy
product_versions:
- rhel-8
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}

6
plans/ci.fmf Normal file
View File

@ -0,0 +1,6 @@
summary: CI Gating Plan
discover:
how: fmf
url: https://src.fedoraproject.org/tests/annobin.git
execute:
how: tmt

View File

@ -1 +1 @@
SHA512 (annobin-8.77.tar.xz) = d9d393aa359ab58a24d295dd4108b0255e39cf9210ec99125ce3f3589adff795aba50234817b38134964caa2fc92cf04d6c6e2945ae6cc2e1145033383cc58cb SHA512 (annobin-12.24.tar.xz) = 1f095d6fa2f53fecf25c4c9c0bc9fad35da5c6050c567fa6e5c8cdb42e9948f38f43d8f8136a6eb44bd8e9d1d42e1c26e396895ecec22550a5069f995f376139