aboutsummaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorSam Ravnborg <sam@ravnborg.org>2007-12-09 14:11:15 -0500
committerSam Ravnborg <sam@ravnborg.org>2008-01-28 17:14:36 -0500
commit6e588f6dcfcffa24decf418b96b4184a907d2bf8 (patch)
tree73e1dc68d7a792668b68e597fde572061de2c6a2 /scripts
parent551559e13af1ccd19d0525cb2b0f308905170647 (diff)
kconfig: if ncurses-devel is missing then say so
With this patch when ncurses-devel (or whatever it is named) is missing trying to run menuconfig will result in this: $ make menuconfig HOSTCC scripts/kconfig/conf.o HOSTCC scripts/kconfig/kxgettext.o *** Unable to find the ncurses libraries or the *** required header files. *** 'make menuconfig' requires the ncurses libraries. *** *** Install ncurses (ncurses-devel) and try again. *** make[1]: *** [scripts/kconfig/dochecklxdialog] Error 1 make: *** [menuconfig] Error 2 Much better than before where we just listed some build errors. The other *config targets will work indepenednt on ncurses being present or not. Includes improvements suggested by: Frans Pop <elendil@planet.nl> Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Cc: Frans Pop <elendil@planet.nl>
Diffstat (limited to 'scripts')
-rw-r--r--scripts/kconfig/Makefile14
-rw-r--r--scripts/kconfig/lxdialog/check-lxdialog.sh16
2 files changed, 17 insertions, 13 deletions
diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
index 1ad6f7fc490a..80914358817e 100644
--- a/scripts/kconfig/Makefile
+++ b/scripts/kconfig/Makefile
@@ -93,12 +93,6 @@ HOST_LOADLIBES = $(shell $(CONFIG_SHELL) $(check-lxdialog) -ldflags $(HOSTCC))
93 93
94HOST_EXTRACFLAGS += -DLOCALE 94HOST_EXTRACFLAGS += -DLOCALE
95 95
96PHONY += $(obj)/dochecklxdialog
97$(obj)/dochecklxdialog:
98 $(Q)$(CONFIG_SHELL) $(check-lxdialog) -check $(HOSTCC) $(HOST_LOADLIBES)
99
100always := dochecklxdialog
101
102 96
103# =========================================================================== 97# ===========================================================================
104# Shared Makefile for the various kconfig executables: 98# Shared Makefile for the various kconfig executables:
@@ -145,6 +139,14 @@ clean-files := lkc_defs.h qconf.moc .tmp_qtcheck \
145 .tmp_gtkcheck zconf.tab.c lex.zconf.c zconf.hash.c 139 .tmp_gtkcheck zconf.tab.c lex.zconf.c zconf.hash.c
146clean-files += mconf qconf gconf 140clean-files += mconf qconf gconf
147 141
142# Check that we have the required ncurses stuff installed for lxdialog (menuconfig)
143PHONY += $(obj)/dochecklxdialog
144$(addprefix $(obj)/,$(lxdialog)): $(obj)/dochecklxdialog
145$(obj)/dochecklxdialog:
146 $(Q)$(CONFIG_SHELL) $(check-lxdialog) -check $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOST_LOADLIBES)
147
148always := dochecklxdialog
149
148# Add environment specific flags 150# Add environment specific flags
149HOST_EXTRACFLAGS += $(shell $(CONFIG_SHELL) $(srctree)/$(src)/check.sh $(HOSTCC) $(HOSTCFLAGS)) 151HOST_EXTRACFLAGS += $(shell $(CONFIG_SHELL) $(srctree)/$(src)/check.sh $(HOSTCC) $(HOSTCFLAGS))
150 152
diff --git a/scripts/kconfig/lxdialog/check-lxdialog.sh b/scripts/kconfig/lxdialog/check-lxdialog.sh
index 9681476b96e7..62e1e02126e6 100644
--- a/scripts/kconfig/lxdialog/check-lxdialog.sh
+++ b/scripts/kconfig/lxdialog/check-lxdialog.sh
@@ -36,14 +36,16 @@ trap "rm -f $tmp" 0 1 2 3 15
36 36
37# Check if we can link to ncurses 37# Check if we can link to ncurses
38check() { 38check() {
39 echo "main() {}" | $cc -xc - -o $tmp 2> /dev/null 39 echo -e " #include CURSES_LOC \n main() {}" |
40 $cc -xc - -o $tmp 2> /dev/null
40 if [ $? != 0 ]; then 41 if [ $? != 0 ]; then
41 echo " *** Unable to find the ncurses libraries." 1>&2 42 echo " *** Unable to find the ncurses libraries or the" 1>&2
42 echo " *** make menuconfig require the ncurses libraries" 1>&2 43 echo " *** required header files." 1>&2
43 echo " *** " 1>&2 44 echo " *** 'make menuconfig' requires the ncurses libraries." 1>&2
44 echo " *** Install ncurses (ncurses-devel) and try again" 1>&2 45 echo " *** " 1>&2
45 echo " *** " 1>&2 46 echo " *** Install ncurses (ncurses-devel) and try again." 1>&2
46 exit 1 47 echo " *** " 1>&2
48 exit 1
47 fi 49 fi
48} 50}
49 51