Correct the directory chosen for 32-bit LLVM and Clang plugins.

Resolves: #1884951
This commit is contained in:
Nick Clifton 2020-10-05 12:40:13 +01:00
parent d94f0f89ce
commit 5515ddd6c9

View File

@ -2,7 +2,7 @@
Name: annobin Name: annobin
Summary: Annotate and examine compiled binary files Summary: Annotate and examine compiled binary files
Version: 9.35 Version: 9.35
Release: 1%{?dist} Release: 2%{?dist}
License: GPLv3+ License: GPLv3+
# ProtocolURL: https://fedoraproject.org/wiki/Toolchain/Watermark # ProtocolURL: https://fedoraproject.org/wiki/Toolchain/Watermark
# Maintainer: nickc@redhat.com # Maintainer: nickc@redhat.com
@ -114,10 +114,10 @@ BuildRequires: gcc gcc-plugin-devel gcc-c++
# The documentation uses pod2man... # The documentation uses pod2man...
BuildRequires: perl perl-podlators BuildRequires: perl perl-podlators
%if %{with clangplugin} %if %{with clangplugin}
BuildRequires: clang clang-devel llvm llvm-devel compiler-rt BuildRequires: clang clang-devel llvm llvm-devel compiler-rt gawk
%endif %endif
%if %{with llvmplugin} %if %{with llvmplugin}
BuildRequires: clang clang-devel llvm llvm-devel compiler-rt BuildRequires: clang clang-devel llvm llvm-devel compiler-rt gawk
%endif %endif
%description %description
@ -169,14 +169,14 @@ hardening options.
%global ANNOBIN_GCC_PLUGIN_DIR %(gcc --print-file-name=plugin) %global ANNOBIN_GCC_PLUGIN_DIR %(gcc --print-file-name=plugin)
%if %{with clangplugin} %if %{with clangplugin} || %{with llvmplugin}
# FIXME: Clang does not appear to have an official plugin directory. # FIXME: We currently assume that the first directory listed in clang's
# Instead it just uses dlopen() with no pathname prefix. So we # search directory output is the one that we should use for plugins.
# construct a (hopefully good) path and rely upon users of annobin # This might not be correct.
# knowing about this location. # The gensub() below is because without it $2 would look like:
# FIXME2: Currently this same path is hardcoded into the Makefile.in # " =/usr/lib64/clang/8.0.0"
# files in the clang-plugin and llvm-plugin source directories... # Note - we install LLVM plugins into the same directory as Clang plugins.
%global ANNOBIN_CLANG_PLUGIN_DIR /usr/lib64/clang/%(llvm-config --version)/lib %global ANNOBIN_CLANG_PLUGIN_DIR %(clang --print-search-dirs | gawk -e'BEGIN { FS = ":" } /libraries/ { print gensub(" =","",1,$2) } END { }')
%endif %endif
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
@ -312,6 +312,9 @@ fi
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
%changelog %changelog
* Mon Oct 05 2020 Nick Clifton <nickc@redhat.com> - 9.35-2
- Correct the directory chosen for 32-bit LLVM and Clang plugins. (#1884951)
* Thu Oct 01 2020 Nick Clifton <nickc@redhat.com> - 9.35-1 * Thu Oct 01 2020 Nick Clifton <nickc@redhat.com> - 9.35-1
- Allow the use of the SHF_LINK_ORDER section flag to discard unused notes. (Experimental). - Allow the use of the SHF_LINK_ORDER section flag to discard unused notes. (Experimental).