Re: [PATCH v3 1/2] tools: mkeficapsule: use pkg-config to get -luuid and -lgnutls

AKASHI Takahiro
2022-07-20T10:55:30Z

On Wed, Jul 20, 2022 at 12:31:33PM +0200, Heiko Thiery wrote:
> Instead of hardcoding -luuid -lgnutls as the flags needed to build
> mkeficapsule, use pkg-config when available.
>
> We gracefully fallback on the previous behavior of hardcoding -luuid
> -lgnutls if pkg-config is not available or fails with an error.
>
> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
> Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
> ---
> v3:
> - added reviewed-by
>
> v2:
> - also add cflags detection via pkg-config (Thanks Pali)
>
> tools/Makefile | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/tools/Makefile b/tools/Makefile
> index 9f2339666a..aab06aec93 100644
> --- a/tools/Makefile
> +++ b/tools/Makefile
> @@ -242,7 +242,10 @@ hostprogs-$(CONFIG_MIPS) += mips-relocs
> hostprogs-$(CONFIG_ASN1_COMPILER) += asn1_compiler
> HOSTCFLAGS_asn1_compiler.o = -idirafter $(srctree)/include
>
> -HOSTLDLIBS_mkeficapsule += -lgnutls -luuid
> +HOSTCFLAGS_mkeficapsule.o += \
> + $(shell pkg-config --cflags gnutls uuid 2> /dev/null || echo "")
> +HOSTLDLIBS_mkeficapsule += \
> + $(shell pkg-config --libs gnutls uuid 2> /dev/null || echo "-lgnutls -luuid")

It would be logically better to call pkg-config for each library, that is,

HOSTLDLIBS_mkeficapsule += \
$(shell pkg-config --libs gnutls 2> /dev/null || echo " -lgnutls")
HOSTLDLIBS_mkeficapsule += \
$(shell pkg-config --libs uuid 2> /dev/null || echo " -luuid")

Thanks,
-Takahiro Akashi

> hostprogs-$(CONFIG_TOOLS_MKEFICAPSULE) += mkeficapsule
>
> # We build some files with extra pedantic flags to try to minimize things
> --
> 2.30.2
>