Optional %files support - (A or B or C)

Graham Leggett minfrin at sharp.fm
Wed Oct 20 14:51:36 UTC 2021


Hi all,

I am trying to package an Apache module in such a way that it can be built across distributions.

The BuildRequires and Requires both work fine as follows:

BuildRequires: gcc, pkgconfig(apr-1), pkgconfig(apr-util-1), (httpd-devel or apache-devel or apache2-devel)
Requires: (httpd or apache or apache2)

My next problem is the %files section. The modules will be installed in one of two locations:

(%{_libdir}/apache2/mod_mymodule.so or %{_libdir}/httpd/modules/mod_mymodule.so)

Is there a syntax like Requires that can specify a file at location A or B or C?

Obviously the workaround is using %if to target certain macros on certain distros, but I've just had one of these macros arbitrarily disappear on a platform, so this is brittle and painful.

Is there a better way to do this?

Regards,
Graham
—



More information about the Rpm-list mailing list