diff options
author | Sam Ravnborg <sam@ravnborg.org> | 2007-08-12 17:15:44 -0400 |
---|---|---|
committer | Sam Ravnborg <sam@neptun.(none)> | 2007-10-12 15:13:50 -0400 |
commit | aa1e5ef5c1d95e7ebf0821d9ba27debe43a87a22 (patch) | |
tree | 900a9fa8d090ab5323a4276e55b8108fa0d40568 | |
parent | 4f4c4ee1b79b9102db19ff39f7cb11abddaa43e1 (diff) |
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/Makefile | 10 | ||||
-rwxr-xr-x | scripts/kconfig/check.sh | 14 |
2 files changed, 16 insertions, 8 deletions
diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile index 8986a48c8c49..bb08069b04af 100644 --- a/scripts/kconfig/Makefile +++ b/scripts/kconfig/Makefile | |||
@@ -143,14 +143,8 @@ clean-files := lkc_defs.h qconf.moc .tmp_qtcheck \ | |||
143 | .tmp_gtkcheck zconf.tab.c lex.zconf.c zconf.hash.c | 143 | .tmp_gtkcheck zconf.tab.c lex.zconf.c zconf.hash.c |
144 | clean-files += mconf qconf gconf | 144 | clean-files += mconf qconf gconf |
145 | 145 | ||
146 | # Needed for systems without gettext | 146 | # Add environment specific flags |
147 | KBUILD_HAVE_NLS := $(shell \ | 147 | HOST_EXTRACFLAGS += $(shell $(CONFIG_SHELL) $(srctree)/$(src)/check.sh $(HOSTCC) $(HOSTCFLAGS)) |
148 | if echo "\#include <libintl.h>" | $(HOSTCC) $(HOSTCFLAGS) -E - > /dev/null 2>&1 ; \ | ||
149 | then echo yes ; \ | ||
150 | else echo no ; fi) | ||
151 | ifeq ($(KBUILD_HAVE_NLS),no) | ||
152 | HOSTCFLAGS += -DKBUILD_NO_NLS | ||
153 | endif | ||
154 | 148 | ||
155 | # generated files seem to need this to find local include files | 149 | # generated files seem to need this to find local include files |
156 | HOSTCFLAGS_lex.zconf.o := -I$(src) | 150 | HOSTCFLAGS_lex.zconf.o := -I$(src) |
diff --git a/scripts/kconfig/check.sh b/scripts/kconfig/check.sh new file mode 100755 index 000000000000..fa59cbf9d62c --- /dev/null +++ b/scripts/kconfig/check.sh | |||
@@ -0,0 +1,14 @@ | |||
1 | #!/bin/sh | ||
2 | # Needed for systems without gettext | ||
3 | $* -xc -o /dev/null - > /dev/null 2>&1 << EOF | ||
4 | #include <libintl.h> | ||
5 | int main() | ||
6 | { | ||
7 | gettext(""); | ||
8 | return 0; | ||
9 | } | ||
10 | EOF | ||
11 | if [ ! "$?" -eq "0" ]; then | ||
12 | echo -DKBUILD_NO_NLS; | ||
13 | fi | ||
14 | |||