GCC Plugin: Disable active check for -Wimplicit-int for non-C sources. (#2275884)

This commit is contained in:
Nick Clifton 2024-04-18 15:16:34 +01:00
parent 581106ec06
commit df38c5938d
2 changed files with 22 additions and 12 deletions

View File

@ -1,7 +1,7 @@
Name: annobin Name: annobin
Summary: Annotate and examine compiled binary files Summary: Annotate and examine compiled binary files
Version: 12.46 Version: 12.49
Release: 1%{?dist} Release: 1%{?dist}
License: GPL-3.0-or-later AND LGPL-2.0-or-later AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (LGPL-2.0-or-later WITH GCC-exception-2.0) AND GFDL-1.3-or-later License: GPL-3.0-or-later AND LGPL-2.0-or-later AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (LGPL-2.0-or-later WITH GCC-exception-2.0) AND GFDL-1.3-or-later
URL: https://sourceware.org/annobin/ URL: https://sourceware.org/annobin/
@ -363,30 +363,29 @@ CONFIG_ARGS="$CONFIG_ARGS --without-tests"
%if %{without annocheck} %if %{without annocheck}
CONFIG_ARGS="$CONFIG_ARGS --without-annocheck" CONFIG_ARGS="$CONFIG_ARGS --without-annocheck"
%else %else
# Fedora supports AArch64's -mbranch-protection=bti, RHEL does not.
%if 0%{?fedora} != 0
export CFLAGS="$CFLAGS -DAARCH64_BRANCH_PROTECTION_SUPPORTED=1" export CFLAGS="$CFLAGS -DAARCH64_BRANCH_PROTECTION_SUPPORTED=1"
%endif %endif
%endif
%set_build_flags %set_build_flags
export CFLAGS="$CFLAGS $RPM_OPT_FLAGS %build_cflags" export CFLAGS="$CFLAGS $RPM_OPT_FLAGS %build_cflags"
export LDFLAGS="$LDFLAGS %build_ldflags" export LDFLAGS="$LDFLAGS %build_ldflags"
# Set target-specific security options to be used when building the # Set target-specific options to be used when building the Clang and LLVM plugins.
# Clang and LLVM plugins. FIXME: There should be a better way to do # FIXME: There should be a better way to do this.
# this.
%ifarch %{ix86} x86_64 %ifarch %{ix86} x86_64
export CLANG_TARGET_OPTIONS="-fcf-protection" export CLANG_TARGET_OPTIONS="-fcf-protection"
%endif %endif
%ifarch aarch64 %ifarch aarch64
%if 0%{?fedora} != 0
export CLANG_TARGET_OPTIONS="-mbranch-protection=standard" export CLANG_TARGET_OPTIONS="-mbranch-protection=standard"
%endif %endif
%ifnarch risv64
export CLANG_TARGET_OPTIONS="$CLANG_TARGET_OPTIONS -flto"
%endif %endif
# Override the default fortification level used by the Clang and LLVM plugins.
export PLUGIN_FORTIFY_OPTION="-D_FORTIFY_SOURCE=3"
CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" CXXFLAGS="$CFLAGS" %configure ${CONFIG_ARGS} || cat config.log CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" CXXFLAGS="$CFLAGS" %configure ${CONFIG_ARGS} || cat config.log
%make_build %make_build
@ -419,12 +418,14 @@ rm %{_tmppath}/tmp_annobin.so
%if %{with clangplugin} %if %{with clangplugin}
cp clang-plugin/annobin-for-clang.so %{_tmppath}/tmp_annobin.so cp clang-plugin/annobin-for-clang.so %{_tmppath}/tmp_annobin.so
make -C clang-plugin all CXXFLAGS="$OPTS $BUILD_FLAGS" # To enable verbose more in the plugin append the following: ANNOBIN="verbose"
make -C clang-plugin clean all CLANG_TARGET_OPTIONS="$CLANG_TARGET_OPTIONS $BUILD_FLAGS"
%endif %endif
%if %{with llvmplugin} %if %{with llvmplugin}
cp llvm-plugin/annobin-for-llvm.so %{_tmppath}/tmp_annobin.so cp llvm-plugin/annobin-for-llvm.so %{_tmppath}/tmp_annobin.so
make -C llvm-plugin all CXXFLAGS="$OPTS $BUILD_FLAGS" # To enable verbose more in the plugin append the following: ANNOBIN_VERBOSE="true"
make -C llvm-plugin clean all CLANG_TARGET_OPTIONS="$CLANG_TARGET_OPTIONS $BUILD_FLAGS"
%endif %endif
# endif for %%if {with_plugin_rebuild} # endif for %%if {with_plugin_rebuild}
@ -529,6 +530,15 @@ make check
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
%changelog %changelog
* Thu Apr 18 2024 Nick Clifton <nickc@redhat.com> - 12.49-1
- GCC Plugin: Disable active check for -Wimplicit-int for non-C sources. (#2275884)
- Annocheck: Ignore stack checks for AMD GPU binaries.
- Annocheck: Do not produce FAIL result for i686 binaries in the RHEL-10 profile.
- Annocheck: Test for __stack_chk_guard being writeable.
- Annocheck: Update heuristics for detecting glibc code in executables. (RHEL-30579)
- Clang & LLVM Plugins: Allow environment to override fortification level. (RHEL-30579)
- Spec File: Override fortification level and set it to 3.
* Mon Mar 25 2024 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 12.46-1 * Mon Mar 25 2024 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 12.46-1
- Annocheck: Improve detection of -mbranch-protection option. - Annocheck: Improve detection of -mbranch-protection option.
- Clang Plugin: Add global-file-syms option. - Clang Plugin: Add global-file-syms option.

View File

@ -1 +1 @@
SHA512 (annobin-12.46.tar.xz) = 6805298e1168dbdd287e706a5d58de0cf06d715b40254f33d757b356b5655f0d1ddc519c478b836c7b8ee89813982b35fc5bec6384a010e40e0d56888d6eb5b2 SHA512 (annobin-12.49.tar.xz) = 830e041b351a56be4c13a2962d358b59c174fc79448461e23e7e7b085bd0848cda0e36bbefb3ec83f4ed9041f776b20bf50bd7771a898ca6a78e2d3d91ad3b3c