aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Mike Frysinger <vapier@gentoo.org>2007-11-18 06:17:52 +0000
committerGravatar Mike Frysinger <vapier@gentoo.org>2007-11-18 06:17:52 +0000
commite13bd362e3dc3eafe0503d842335b0290e32646a (patch)
tree1fdc134334414cf1775d42285618cf450539b078
parentdbd18f639c0c7761937aa38af7a4299842960492 (diff)
downloadbusybox-e13bd362e3dc3eafe0503d842335b0290e32646a.tar.gz
busybox-e13bd362e3dc3eafe0503d842335b0290e32646a.tar.bz2
merge from upstream for systems that dont integrate libintl into their C library:
commit aa1e5ef5c1d95e7ebf0821d9ba27debe43a87a22 Author: Sam Ravnborg <sam@ravnborg.org> Date: Sun Aug 12 23:15:44 2007 +0200 kbuild: check if we can link gettext not just compile cygwin provides the header file but the lib file needs to be added manually. A generic fix is to check if we can compile and link a program that uses gettext() and if it fails fall back to NO_NLS. International users of cygwin may have to specify HOST_LOADLIBES := "-lintl" on the make command line. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
-rw-r--r--scripts/kconfig/Makefile10
-rwxr-xr-xscripts/kconfig/check.sh14
2 files changed, 16 insertions, 8 deletions
diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
index a28414de8..f56863f7c 100644
--- a/scripts/kconfig/Makefile
+++ b/scripts/kconfig/Makefile
@@ -117,14 +117,8 @@ clean-files := lkc_defs.h qconf.moc .tmp_qtcheck \
.tmp_gtkcheck zconf.tab.c lex.zconf.c zconf.hash.c
subdir- += lxdialog
-# Needed for systems without gettext
-KBUILD_HAVE_NLS := $(shell \
- if echo "\#include <libintl.h>" | $(HOSTCC) $(HOSTCFLAGS) -E - > /dev/null 2>&1 ; \
- then echo yes ; \
- else echo no ; fi)
-ifeq ($(KBUILD_HAVE_NLS),no)
-HOSTCFLAGS += -DKBUILD_NO_NLS
-endif
+# Add environment specific flags
+HOST_EXTRACFLAGS += $(shell $(CONFIG_SHELL) $(srctree)/$(src)/check.sh $(HOSTCC) $(HOSTCFLAGS))
# generated files seem to need this to find local include files
HOSTCFLAGS_lex.zconf.o := -I$(src)
diff --git a/scripts/kconfig/check.sh b/scripts/kconfig/check.sh
new file mode 100755
index 000000000..fa59cbf9d
--- /dev/null
+++ b/scripts/kconfig/check.sh
@@ -0,0 +1,14 @@
+#!/bin/sh
+# Needed for systems without gettext
+$* -xc -o /dev/null - > /dev/null 2>&1 << EOF
+#include <libintl.h>
+int main()
+{
+ gettext("");
+ return 0;
+}
+EOF
+if [ ! "$?" -eq "0" ]; then
+ echo -DKBUILD_NO_NLS;
+fi
+