9da9df8af2
Use a compiler specs file to avoid issues with escaping and quoting when a package is built using autotools. Generate the osCpe string at build time for now, as it's not set as an env var by rpm yet.
33 lines
1.6 KiB
Plaintext
33 lines
1.6 KiB
Plaintext
# This file is part of the package-notes package.
|
|
#
|
|
# Add an ELF note with information about the package the code was compiled for.
|
|
# See https://fedoraproject.org/wiki/Changes/Package_information_on_ELF_objects
|
|
# for details.
|
|
#
|
|
# To opt out of the use of this feature completely, include this in
|
|
# the spec file:
|
|
#
|
|
# %undefine _package_note_flags
|
|
#
|
|
# Which linker will be used? This should be either "bfd", "gold", or
|
|
# "mold". Unfortunately "lld" does not support the --package-metadata flag so
|
|
# the note insertion is disabled when using it.
|
|
#
|
|
# (The default linker for clang on armv7hl is lld.)
|
|
%_package_note_linker %["%_target_cpu" == "armv7hl" && "%{toolchain}" == "clang" ? "lld" : "bfd"]
|
|
|
|
# These are defined for backwards compatibility. Do not use.
|
|
%_package_note_file 1
|
|
%_generate_package_note_file %{nil}
|
|
|
|
# Overall status: 1 if looks like we can insert the note, 0 otherwise
|
|
%_package_note_status %[0%{?_package_note_file:1} && 0%{?name:1} && "%_target_cpu" != "noarch" && "%_package_note_linker" != "lld" ? 1 : 0]
|
|
|
|
# The linker flags to be passed to the compiler to insert the notes section will be created by the spec file,
|
|
# to avoid issues with quoting and escaping across different build systems and shells.
|
|
%_package_note_flags %[%_package_note_status?"-specs=/usr/lib/rpm/redhat/redhat-package-notes":""]
|
|
|
|
# Passing linker flags inline via -Xlinker causes autotools failures, as libtool eats the escaped quotes
|
|
#%_package_note_json %(%{_rpmconfigdir}/generate-rpm-note.sh %name %version %_arch)
|
|
#%_package_note_flags %[%_package_note_status?"%_package_note_json":""]
|