package-notes/macros.package-notes-srpm
Luca Boccassi 9da9df8af2 Switch to --package-metadata
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.
2022-08-09 10:59:13 +01:00

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":""]