Re: [PATCH] tools/thermal: tmon: Allow overriding pkg-config

From: Brian Norris
Date: Fri Aug 07 2015 - 19:13:22 EST


On Fri, Aug 07, 2015 at 03:58:02PM -0700, Florian Fainelli wrote:
> Some build systems might not ship with a proper pkg-config
> infrastructure, so picking up the host pkg-config might cause us to link
> with ncursesw which may not be present in the build environment.
>
> Allow an external build system to override the pkg-config value (e.g:
> set it to /bin/false if we do not have anything).

Is that really the best approach? I see other Makefiles that leave
PKG_CONFIG as a variable (which is fine), but not to allow full
override; they do something like:

PKG_CONFIG := $(CROSS_COMPILE)pkg-config

So, I suppose you could then alias your my-foo-cross-pkg-config to
/bin/false, or something like that.

Another alternative: supply empty $PKG_CONFIG_LIBDIR and
$PKG_CONFIG_PATH variables, so pkg-config finds nothing. (Bonus: no
patch needed here!)

Brian

> Fixes: 96a0d99c72cc ("tools/thermal: tmon: use pkg-config to determine library dependencies")
> Signed-off-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
> ---
> tools/thermal/tmon/Makefile | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/tools/thermal/tmon/Makefile b/tools/thermal/tmon/Makefile
> index 2e83dd3655a2..3777ab59d08c 100644
> --- a/tools/thermal/tmon/Makefile
> +++ b/tools/thermal/tmon/Makefile
> @@ -11,6 +11,7 @@ TARGET=tmon
>
> INSTALL_PROGRAM=install -m 755 -p
> DEL_FILE=rm -f
> +PKG_CONFIG?=pkg-config
>
> # Static builds might require -ltinfo, for instance
> ifneq ($(findstring -static, $(LDFLAGS)),)
> @@ -18,8 +19,8 @@ STATIC := --static
> endif
>
> TMON_LIBS=-lm -lpthread
> -TMON_LIBS += $(shell pkg-config --libs $(STATIC) panelw ncursesw 2> /dev/null || \
> - pkg-config --libs $(STATIC) panel ncurses 2> /dev/null || \
> +TMON_LIBS += $(shell $(PKG_CONFIG) --libs $(STATIC) panelw ncursesw 2> /dev/null || \
> + $(PKG_CONFIG) --libs $(STATIC) panel ncurses 2> /dev/null || \
> echo -lpanel -lncurses)
>
> OBJS = tmon.o tui.o sysfs.o pid.o
> --
> 2.1.0
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/