diff mbox

[2/2] kconfig: use config scripts to detect ncurses libs

Message ID 1362153044-23611-3-git-send-email-jlec@gentoo.org (mailing list archive)
State New, archived
Headers show

Commit Message

Justin March 1, 2013, 3:50 p.m. UTC
From: Justin Lecher <jlec@gentoo.org>

When building ncurses with --with-termlib several symbols get moved from
libncurses.so to libtinfo.so. Thus when linking with libncurses.so, one
additionally needs to link with libtinfo.so. Ncurses provides a config script
(ncurses5-config) or in very recent version even a pkg-config module to assist
finding ncurses.

This patch makes use of it to detect the necessary libs for linking of the
ncurses nconfig dialog

Signed-off-by: Justin Lecher <jlec@gentoo.org>
---
 scripts/kconfig/Makefile | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

Comments

Yann E. MORIN March 3, 2013, 8:38 p.m. UTC | #1
Justin, All,

On Friday 01 March 2013 jlec@gentoo.org wrote:
> When building ncurses with --with-termlib several symbols get moved from
> libncurses.so to libtinfo.so. Thus when linking with libncurses.so, one
> additionally needs to link with libtinfo.so. Ncurses provides a config script
> (ncurses5-config) or in very recent version even a pkg-config module to assist
> finding ncurses.
> 
> This patch makes use of it to detect the necessary libs for linking of the
> ncurses nconfig dialog
> 
> Signed-off-by: Justin Lecher <jlec@gentoo.org>
> ---
>  scripts/kconfig/Makefile | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
> index 231b475..cc81db5 100644
> --- a/scripts/kconfig/Makefile
> +++ b/scripts/kconfig/Makefile
> @@ -219,7 +219,11 @@ HOSTCFLAGS_gconf.o	= `pkg-config --cflags gtk+-2.0 gmodule-2.0 libglade-2.0` \
>  
>  HOSTLOADLIBES_mconf   = $(shell $(CONFIG_SHELL) $(check-lxdialog) -ldflags $(HOSTCC))
>  
> -HOSTLOADLIBES_nconf	= -lmenu -lpanel -lncurses
> +HOSTLOADLIBES_nconf	= -lmenu -lpanel
> +HOSTLOADLIBES_nconf	+= $(shell \
> +				pkg-config --libs ncurses 2>/dev/null \
> +				|| ncurses5-config --libs 2>/dev/null \
> +				|| ncurses6-config --libs 2>/dev/null  )

Ditto as for menuconfig: drop the ncurses*-config scripts, and:
  - try pkg-config;
  - fallback to -lncurses.

HOSTLOADLIBES_nconf	+= $(shell \
				pkg-config --libs ncurses 2>/dev/null \
				|| echo -lncurses )

Regards,
Yann E. MORIN.
diff mbox

Patch

diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
index 231b475..cc81db5 100644
--- a/scripts/kconfig/Makefile
+++ b/scripts/kconfig/Makefile
@@ -219,7 +219,11 @@  HOSTCFLAGS_gconf.o	= `pkg-config --cflags gtk+-2.0 gmodule-2.0 libglade-2.0` \
 
 HOSTLOADLIBES_mconf   = $(shell $(CONFIG_SHELL) $(check-lxdialog) -ldflags $(HOSTCC))
 
-HOSTLOADLIBES_nconf	= -lmenu -lpanel -lncurses
+HOSTLOADLIBES_nconf	= -lmenu -lpanel
+HOSTLOADLIBES_nconf	+= $(shell \
+				pkg-config --libs ncurses 2>/dev/null \
+				|| ncurses5-config --libs 2>/dev/null \
+				|| ncurses6-config --libs 2>/dev/null  )
 $(obj)/qconf.o: $(obj)/.tmp_qtcheck
 
 ifeq ($(qconf-target),1)