Commit Graph

8 Commits

Author SHA1 Message Date
Zbigniew Jędrzejewski-Szmek
e9d5c37bb3 Add %_package_note_linker and document everything (rhbz#2043178, rhbz#2043368) 2022-01-22 12:02:34 +01:00
Zbigniew Jędrzejewski-Szmek
87708e909b Allow unsetting %_package_note_readonly to drop the READONLY attribute
READONLY is supported in ld.bfd from binutils >= 2.38, though the
patch was backported in rawhide. It is also unsupported by ld.gold,
so let's make it easy to skip it, since things will also work without
it, just a tiny bit worse.
2022-01-22 11:20:25 +01:00
Zbigniew Jędrzejewski-Szmek
b7381d643d Use %{buildsubdir} in %_package_note_file if defined
Thanks to this the file is (in the common case) created in the unpacked
build directory, and not one level up. I.e.
/builddir/build/BUILD/lirc-0.10.0/.package_note-lirc-0.10.0-34.fc36.x86_64
instead of /builddir/build/BUILD/.package_note-lirc-0.10.0-34.fc36.x86_64.ld.
This is nicer esp. for 'fedpkg local' builds, where the dist-git directory is
used as the build dir.

When there are multiple %setup calls, the *last* extracted directory
becomes %{buildsubdir}. This might be confusing, but it shouldn't cause
problems for this use.

Suggested in https://bugzilla.redhat.com/show_bug.cgi?id=2043092#c21.
2022-01-21 17:01:16 +01:00
Zbigniew Jędrzejewski-Szmek
d32fe6caa2 Also voidify the macros if we're on a noarch build
IIUC, the normal %ifarch syntax cannot be used, because the definition
needs to be inline. The best I could find is %_target_cpu, which seems to be
set to "noarch" for noarch builds.
2022-01-21 17:01:16 +01:00
Zbigniew Jędrzejewski-Szmek
04c3c7d716 Use $RPM_PACKAGE_VERSION variable to refer to the package version
When subpackages are used, and have different Version fields, we end up with
the version of the last subpackage in %version. But RPM_PACKAGE_VERSION is
set early, and seems to have the right version.

Fixes rhbz#2043143.
2022-01-21 17:01:16 +01:00
Zbigniew Jędrzejewski-Szmek
1acac701a6 Make _generate_package_note_file always recreate the file
The idea was that we can avoid unnecessary work if the macro is called more than
once. But in hindsight this might be risky: let's instead minimize the number of
places where the macros is called, but always overwrite the file so that we
don't end up with a stale version from a previous build.
2022-01-21 17:01:16 +01:00
Zbigniew Jędrzejewski-Szmek
fb5900700e Conditionalize all macros on %_package_note_file being defined
This way %undefine _package_note_file is a good way to opt-out of the
feature. The other macros wouldn't work without %_package_note_file anyway.
2022-01-21 17:01:16 +01:00
Zbigniew Jędrzejewski-Szmek
070ec6f27f Rename srpm macros file 2022-01-14 19:17:33 +01:00