On Wed, Aug 05, 2020 at 01:47:21PM +0200, Andrea Bolognani wrote:
On Wed, 2020-08-05 at 13:27 +0200, Pavel Hrdina wrote:
> Gross hack in our CI vs gross hack in spec file. I vote for CI to have
> the hack.
>
> In addition the macros are provided by meson and there are changes in
> the macro file, for example the latest macro file uses `meson compile`
> instead of `ninja build` which was introduced in 0.54.0 so we would have
> to have some older copy of the macros.
Not really, since the version of Meson that we use for building would
still be the one installed from PyPi, eg. 0.54.0 or newer. What about
the other way around? Would the old macros work fine with the newer
Meson?
Good point, we would use the PyPi version anyway so using the content of
macros.meson from that version would not be an issue. I guess they have
the same 'do not break users' so it should work with newer meson, but it
will not be used anyway if the new meson is available from system
packages.
> We could probably come up with some replacement for the macro
that would
> work on all OSes that lack the correct meson version but I don't think
> it's better then having it solved in our CI.
Note that this doesn't only affect our CI but also anyone who wants
to build the RPM on CentOS. Telling those users "install Meson from
PyPi" sounds more reasonable than "install Meson from PyPi and also
from RPM".
I know that it affects users as well, but it would not be that
complicated to install both.
Once we (hopefully) move remaining projects to meson and some of the
projects would require newer meson we would have to introduce the ugly
hack into these spec files as well (if there are any).
After checking what is in the macro file the only drawback is that the
build-in `%meson` macro has the path to meson defined by `%__meson` so
my suggestion would not work.
I wanted to suggest to use rpmbuild --nodeps --load /path/to/marcos.meson
but PyPi meson doesn't ship that file :/.
We probably doesn't have any other option than adding the ugly macro
content into the spec file which I don't like at all.
Pavel