Re: V2 [PATCH] PKG_CHECK_MODULES: Check if $pkg_cv_[]$1[]_LIBS works

Simon Marchi
2020-07-28T15:13:41Z

On 2020-07-28 11:05 a.m., H.J. Lu via Gdb-patches wrote:
>> Can you clarify how this magic works, is this standard autoconf? Because I am trying this
>> on Fedora, so pretty much the same setup as you, and I don't see this behavior:
>>
>> $ /home/simark/src/binutils-gdb/configure CC="gcc -m32" CXX="g++ -m32"
>> checking build system type... x86_64-pc-linux-gnu
>> checking host system type... x86_64-pc-linux-gnu
>> checking target system type... x86_64-pc-linux-gnu
>> ...
>>
>
> I checked it again. I also passed i686-linux, not --host=, to configure.

Ok I see, the configure line you pasted was wrapped by your email client so was not very readable.

Doing `./configure <triplet>` looks like a deprecated way to set all build/host/target, as the
warning message it shows implies:

configure: WARNING: you should use --build, --host, --target

Anyway, my point still stands: the problem is you not using a pkg-config configured properly for
the cross compilation you are attempting, not pkg.m4.

>>
>> And even if it worked, why would it set "build" to i686, it doesn't make sense. The gcc you
>> compile with, and its environment, is still x86_64, not i686.
>>
>> So *if* it works, it would be a shortcut for setting --host=i686-something, maybe. So
>> regardless of how that above works, that doesn't remove the need to configure pkg-config
>> correctly for the host system.
>>
>> If you don't want to learn about with pkg-config and deal with it, then please say "I think
>> we should not use pkg-config", and ideally give supporting points. Please don't unilaterally
>> push patches just to paper over your own problems. You just make it so that somebody will
>> need to untangle more mess later.
>
> I am OK to remove pkg.m4.

Well I am not. I find it quite handy to avoid having to hardcode necessary CFLAGS and LDFLAGS
required to build against a library, so I think it's better to use pkg-config if the libraries
we want to use provide a .pc file.

I propose that we revert the patch for now to go back to the pristing pkg.m4 version.

Simon