Commit Graph

249 Commits

Author SHA1 Message Date
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
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
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
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
Nick Clifton
4e1b84e3cd Fix merge problems. 2019-06-24 14:23:30 +01:00
Nick Clifton
03aecabbfb Another attempt at fixing the detection and reporting of missing -D_FORTIFY_SOURCE options. 2019-06-24 14:22:11 +01:00
Igor Gnatenko
b20fc42978
Rebuild for RPM 4.15
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2019-06-11 00:13:17 +02:00
Igor Gnatenko
2fca1e28f8
Rebuild for RPM 4.15
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2019-06-10 17:42:00 +02:00
Igor Gnatenko
16c7d0f3f2
Small and trivial spec cleanups
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2019-06-10 17:11:24 +02:00
Panu Matilainen
fcc5d2b097 Really enable annocheck sub-package
Commit 4656334c92 supposedly added
annocheck as a sub-package but is missing the corresponding %files
section, which causes the whole sub-package to be ignored and annocheck
ending up in the main annobin package. Which creates a nasty "bootstrap"
dependency issue for compilation when rpm soname changes.
2019-06-06 11:06:43 +03:00
Nick Clifton
94317b5194 Report a missing -D_FORTIFY_SOUCRE option if -D_GLIBCXX_ASSERTIONS was detected. Do not report problems with -fstack-protection if the binary was not built by gcc or clang.
Resolves: #1703788
Resolves: #1703499
Resolves: #1703500
2019-04-30 15:48:33 +01:00
Nick Clifton
64b0875430 Add tests of clang command line options recorded in the DW_AT_producer attribute. 2019-04-26 13:16:53 +01:00
Nick Clifton
eeb41d947f Fix test for an executable stack segment.
Resolves: #1700924
2019-04-24 12:27:15 +01:00
Nick Clifton
276edb1e4f Rebuild annobin with the latest rawhide gcc sources.
Resolves: #1700923
2019-04-18 12:15:30 +01:00
Nick Clifton
6e6ab3bb26 Annobin: Suppress more calls to free() which are triggering memory checker errors.
Resolves: #1684148
2019-02-28 15:51:40 +00:00
Nick Clifton
e7dabf64aa Add section flag matching ability to section size tool. 2019-02-01 15:23:41 +00:00
Fedora Release Engineering
cbc345947e - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-01-31 13:20:17 +00:00
Björn Esser
a406d384be
Use with for rich dependency on gcc. 2019-01-29 11:26:55 +01:00
Björn Esser
e0d9656b63
Fix build of srpm. 2019-01-29 11:20:37 +01:00
Björn Esser
5524770463
Really fix rhbz#1607430. 2019-01-29 11:06:30 +01:00
Björn Esser
9265fb5b34
Rebuilt with annotations enabled 2019-01-28 19:04:45 +01:00
Björn Esser
c199efec9c
Disable annotated build 2019-01-28 19:03:16 +01:00
Björn Esser
fbf6e93ffc
Fix rpm query for gcc version 2019-01-28 19:00:38 +01:00
Nick Clifton
dc77d4f997 Add BZ number to changelog. 2019-01-28 16:48:37 +00:00
Nick Clifton
a8a0b58356 Add an exact requirement on the major version of gcc.
Resolves:  #1607430
2019-01-28 16:47:39 +00:00
Nick Clifton
443440ae4a Annobin: Add support for .text.startup and .text.exit sections generated by gcc 9.
Annocheck: Add a note displaying tool.
2019-01-24 15:47:34 +00:00
Nick Clifton
16e73c5719 Annocheck: Skip checks for -D_FORTIFY_SOURCE and -D_GLIBCXX_ASSERTIONS if there is no compiler generated code in the binary. 2019-01-23 13:57:56 +00:00
Björn Esser
e1bf6de1fa
Rebuilt with annotations enabled 2019-01-21 12:04:50 +01:00
Björn Esser
aac7af99b5
Disable annotated build 2019-01-21 12:03:16 +01:00
Björn Esser
1e95c472c2
Rebuilt for GCC 9 2019-01-21 11:54:35 +01:00
Nick Clifton
c418230648 Annocheck: Only skip specific checks for specific symbols. Annobin: Record the setting of the -fomit-frame-pointer option.
Resolves: #1666823
2019-01-17 10:18:16 +00:00
Nick Clifton
61981bee0e Annocheck: Do not ignore -Og when checking to see if an optimization level has been set. (#1624162) 2019-01-02 13:54:48 +00:00
Nick Clifton
a4538d86c6 Annobin: Fix handling of multiple .text.unlikely sections. 2018-12-11 09:59:46 +00:00
Nick Clifton
60a01e9fa2 Annocheck: Skip gaps in PPC64 executables covered by start_bcax_ symbols. 2018-11-30 16:02:59 +00:00
Nick Clifton
dbdec1ad35 Annocheck: Disable ENDBR test for shared libraries. (#1652925) 2018-11-26 15:05:19 +00:00
Nick Clifton
1a9432d76e Annocheck: Add test for ENDBR instruction at entry address of x86/x86_64 executables. (#1652925) 2018-11-26 14:17:58 +00:00
Nick Clifton
d3a48b47e3 Fix building with gcc version 4. 2018-11-19 12:06:27 +00:00
Nick Clifton
eef6b3c65b Skip -Wl,-z,now and -Wl,-z,relro checks for non-gcc produced binaries. 2018-11-13 13:20:17 +00:00
Nick Clifton
819496e5f7 Ensure GNU Property notes are 8-byte aligned in x86_64 binaries.
Resolves: #1645817
2018-11-05 17:08:28 +00:00
Nick Clifton
9eeba2575d Skip PPC64 linker stubs created in the middle of text sections (again). (#1630640) 2018-10-18 15:29:57 +01:00
Nick Clifton
b6fefda299 Suppress free of invalid pointer. (#1638371) 2018-10-18 13:19:51 +01:00
Nick Clifton
a7bd5f0b0f Skip PPC64 linker stubs created in the middle of text sections. (#1630640) 2018-10-18 12:03:24 +01:00
Nick Clifton
107f5ddd12 Skip PPC64 linker stubs created in the middle of text sections.
Reset the (PPC64) section start symbol to 0 if its section is empty.  (#1638251)
2018-10-16 15:37:17 +01:00
Nick Clifton
31fd1dfa5c Also skip virtual thinks created by G++. (#1630619) 2018-10-11 16:11:08 +01:00
Nick Clifton
a4ffb9c75e Use uppercase for all fail/mayb/pass results. (#1637706) 2018-10-10 18:14:55 +01:00
Nick Clifton
28d895fe9d Generate notes for unlikely sections. (#1630620) 2018-10-10 16:50:29 +01:00
Nick Clifton
863cedb167 Fix edge case computing section names for end symbols. (#1637039) 2018-10-08 17:13:56 +01:00
Nick Clifton
66bc6309ff Skip dynamic checks for binaries without a dynamic segment. (#1636606) 2018-10-08 10:42:53 +01:00
Nick Clifton
1750e06470 - Delay generating attach_to_group directives until the end of the compilation. (#1636265)
- Fix bug introduced in previous delta which would trigger a seg-fault when scanning for gaps.
- Annobin:   Fix section name selection for startup sections.
- Annocheck: Improve gap skipping heuristics.   (#1630574)
2018-10-05 12:22:45 +01:00
Nick Clifton
5b660fd112 Fix function section support (again). (#1630574) 2018-10-03 09:37:55 +01:00
Nick Clifton
fa19a50b6c Skip compiler option checks for non-GNU producers. (#1633749)
Fix function section support (again).   (#1630574)
Ignore ppc64le notes where start = end + 2.  (#1632259)
2018-10-01 10:01:11 +01:00
Nick Clifton
50a4793ba2 Make annocheck ignore symbols suffixed with ".end". 2018-09-25 10:17:37 +01:00
Nick Clifton
740bbaa891 Tweak tests. 2018-09-21 21:34:13 +01:00