Am 15.02.2021 um 12:34 hat Peter Lieven geschrieben:
> Am 15.02.21 um 11:19 schrieb Daniel P. Berrangé:
> > On Mon, Feb 15, 2021 at 11:11:23AM +0100, Kevin Wolf wrote:
> > > Am 26.01.2021 um 12:25 hat Peter Lieven geschrieben:
> > > > even luminous (version 12.2) is unmaintained for over 3 years now.
> > > > Bump the requirement to get rid of the ifdef'ry in the code.
> > > > 
> > > > Signed-off-by: Peter Lieven <p...@kamp.de>
> > > > diff --git a/meson.build b/meson.build
> > > > index 5943aa8a51..02d263ad33 100644
> > > > --- a/meson.build
> > > > +++ b/meson.build
> > > > @@ -691,19 +691,24 @@ if not get_option('rbd').auto() or have_block
> > > >                              required: get_option('rbd'),
> > > >                              kwargs: static_kwargs)
> > > >     if librados.found() and librbd.found()
> > > > -    if cc.links('''
> > > > +    result = cc.run('''
> > > Doesn't running compiled binaries break cross compilation?
> > > 
> > > >         #include <stdio.h>
> > > >         #include <rbd/librbd.h>
> > > >         int main(void) {
> > > >           rados_t cluster;
> > > >           rados_create(&cluster, NULL);
> > > > +        rados_shutdown(cluster);
> > > > +        #if LIBRBD_VERSION_CODE < LIBRBD_VERSION(1, 12, 0)
> > > > +        return 1;
> > > > +        #endif
> > > >           return 0;
> > > Would #error achieve what you want without running the binary?
> > > 
> > > But most, if not all, other version checks use pkg-config instead of
> > > trying to compile code, so that's probably what we should be doing here,
> > > too.
> > Yep, for something that is merely a version number check there's no
> > need to compile anything. pkg-config can just validate the version
> > straightup.
> 
> 
> I would have loved to, but at least the Ubuntu/Debian packages do not
> contain pkg-config files.

Oh. That's a shame.

> I can switch to #error, of course. My initial version of the patch
> distinguished between can't compile and version is too old. With
> #error we just can say doesn't compile, but I think this would be ok.

Yes, I think #error and a less specific message is better than breaking
cross compilation.

Maybe also add a comment as to why we can't use pkg-config so that
others won't take it as an example where pkg-config would work.

Kevin


Reply via email to