From: Jason Wessel <jason.wessel@windriver.com>
Date: Sun, 3 Mar 2013 12:31:40 -0600
Subject: [PATCH] menuconfig,check-lxdiaglog.sh: Allow specification of ncurses location

Upstream-Status: Submitted

[ based on: https://lkml.org/lkml/2013/3/3/103 ]

This patch syncs up with the way the menuconfig ncurses / curses
is detected and the HOST_EXTRACFLAGS works in the Linux kernel
and it allows the menuconfig to work with a sysroot version
of the curses libraries.

---

In some cross build environments such as the Yocto Project build
environment it provides an ncurses library that is compiled
differently than the host's version.  This causes display corruption
problems when the host's curses includes are used instead of the
includes from the provided compiler are overridden.  There is a second
case where there is no curses libraries at all on the host system and
menuconfig will just fail entirely.

The solution is simply to allow an override variable in
check-lxdialog.sh for environments such as the Yocto Project.  Adding
a CROSS_CURSES_LIB and CROSS_CURSES_INC solves the issue and allowing
compiling and linking against the right headers and libraries.

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
cc: Michal Marek <mmarek@suse.cz>
cc: linux-kbuild@vger.kernel.org
---
 scripts/kconfig/lxdialog/Makefile          |    2 +-
 scripts/kconfig/lxdialog/check-lxdialog.sh |    8 ++++++++
 2 files changed, 9 insertions(+), 1 deletion(-)
 
--- a/scripts/kconfig/lxdialog/check-lxdialog.sh
+++ b/scripts/kconfig/lxdialog/check-lxdialog.sh
@@ -4,6 +4,10 @@
 # What library to link
 ldflags()
 {
+	if [ x"$CROSS_CURSES_LIB" != x ]; then
+		echo "$CROSS_CURSES_LIB"
+		exit
+	fi
 	pkg-config --libs ncursesw 2>/dev/null && exit
 	pkg-config --libs ncurses 2>/dev/null && exit
 	for ext in so a dll.a dylib ; do
@@ -21,6 +25,10 @@
 # Where is ncurses.h?
 ccflags()
 {
+	if [ x"$CROSS_CURSES_INC" != x ]; then
+		echo "$CROSS_CURSES_INC"
+		exit
+	fi
 	if pkg-config --cflags ncursesw 2>/dev/null; then
 		echo '-DCURSES_LOC="<ncurses.h>" -DNCURSES_WIDECHAR=1'
 	elif pkg-config --cflags ncurses 2>/dev/null; then
--- a/scripts/kconfig/lxdialog/Makefile
+++ b/scripts/kconfig/lxdialog/Makefile
@@ -5,7 +5,7 @@
 
 # Use reursively expanded variables so we do not call gcc unless
 # we really need to do so. (Do not call gcc as part of make mrproper)
-HOST_EXTRACFLAGS = $(shell $(CONFIG_SHELL) $(check-lxdialog) -ccflags)
+HOST_EXTRACFLAGS += $(shell $(CONFIG_SHELL) $(check-lxdialog) -ccflags)
 HOST_LOADLIBES   = $(shell $(CONFIG_SHELL) $(check-lxdialog) -ldflags $(HOSTCC))
 
 HOST_EXTRACFLAGS += -DLOCALE
