Re: Patch that allows >=2.6.12 kernel to build on nls free systems

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 10/26/05, Yuri Vasilevski <[email protected]> wrote:
> Hi all,
>
> I made a patch that detects if libintl.h (needed for nls) is present on
> the host system and if it's not, it nls support is disabled by
> providing dummies for the used nls functions.
>
> This way if there is nls support on the host system the *config targets
> will build according to Arnaldo Carvalho de Melo's i18n modifications,
> else it just uses the original English messages.
>
> I have also made a bug report at kernel's bugzilla:
> http://bugzilla.kernel.org/show_bug.cgi?id=5501
> And there is a discussion about this problem in Gentoo's bugzilla:
> http://bugs.gentoo.org/show_bug.cgi?id=99810
>
> diff -Naur linux-2.6.14_rc2.orig/scripts/kconfig/Makefile linux-2.6.14_rc2/scripts/kconfig/Makefile
> --- linux-2.6.14_rc2.orig/scripts/kconfig/Makefile      2005-11-06 04:13:01 +0000
> +++ linux-2.6.14_rc2/scripts/kconfig/Makefile   2005-11-18 03:52:03 +0000
> @@ -116,6 +116,15 @@
>  clean-files    := lkc_defs.h qconf.moc .tmp_qtcheck \
>                    .tmp_gtkcheck zconf.tab.c zconf.tab.h lex.zconf.c
>
> +# Needed for systems without gettext
> +KBUILD_HAVE_NLS := $(shell \
> +     if echo "\#include <libint.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
> +
>  # generated files seem to need this to find local include files
>  HOSTCFLAGS_lex.zconf.o := -I$(src)
>  HOSTCFLAGS_zconf.tab.o := -I$(src)
> diff -Naur linux-2.6.14_rc2.orig/scripts/kconfig/lkc.h linux-2.6.14_rc2/scripts/kconfig/lkc.h
> --- linux-2.6.14_rc2.orig/scripts/kconfig/lkc.h 2005-11-06 04:13:01 +0000
> +++ linux-2.6.14_rc2/scripts/kconfig/lkc.h      2005-11-18 02:23:07 +0000
> @@ -8,7 +8,13 @@
>
>  #include "expr.h"
>
> -#include <libintl.h>
> +#ifndef KBUILD_NO_NLS
> +# include <libintl.h>
> +#else
> +# define gettext(Msgid) ((const char *) (Msgid))
> +# define textdomain(Domainname) ((const char *) (Domainname))
> +# define bindtextdomain(Domainname, Dirname) ((const char *) (Dirname))
> +#endif
>
>  #ifdef __cplusplus
>  extern "C" {
>

Looks like this patch was merged:

http://www.kernel.org/git/gitweb.cgi?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=70a6a0cb92f24fd6bbe2e75299168909f735676a

I noticed with builds of -git3/-git4, I get the following complaints
from oldconfig:

scripts/kconfig/mconf.c: In function `main':
scripts/kconfig/mconf.c:1048: warning: statement with no effect
scripts/kconfig/mconf.c:1049: warning: statement with no effect

Not a big deal, just more complaints to have to see during the build
process (with CONFIG_NLS=y) :)

Thanks,
Nish
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux