From 1ada5138172deb2928250c9f7627afa043f55d74 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Wed, 2 Feb 2011 01:26:19 +0000 Subject: [PATCH] prepare support for libiconv, libintl stub/full switching SVN-Revision: 25302 --- Config.in | 7 +++++++ include/nls.mk | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 include/nls.mk diff --git a/Config.in b/Config.in index c9ef24a63d..cbca037449 100644 --- a/Config.in +++ b/Config.in @@ -140,6 +140,13 @@ menu "Global build settings" In case software provides optional support for patented functionality, this optional support will get disabled for this package. + config BUILD_NLS + default n + bool "Compile with full language support" + help + When this option is enabled, packages are built with the full versions of iconv and GNU gettext + instead of the default OpenWrt stubs. + config SHADOW_PASSWORDS bool prompt "Enable shadow password support" diff --git a/include/nls.mk b/include/nls.mk new file mode 100644 index 0000000000..7743da470a --- /dev/null +++ b/include/nls.mk @@ -0,0 +1,40 @@ +# +# Copyright (C) 2011 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +# iconv full +ifeq ($(CONFIG_BUILD_NLS),y) + ICONV_PREFIX:=$(STAGING_DIR)/usr/lib/libiconv-full + ICONV_FULL:=1 + + INTL_PREFIX:=$(STAGING_DIR)/usr/lib/libintl-full + INTL_FULL:=1 + +# iconv stub +else + ICONV_PREFIX:=$(STAGING_DIR)/usr/lib/libiconv-stub + ICONV_FULL:= + + INTL_PREFIX:=$(STAGING_DIR)/usr/lib/libintl-stub + INTL_FULL:= +endif + +PKG_CONFIG_DEPENDS += CONFIG_BUILD_NLS +PKG_BUILD_DEPENDS += !BUILD_NLS:libiconv !BUILD_NLS:gettext + +ICONV_DEPENDS:=+BUILD_NLS:libiconv-full +ICONV_CFLAGS:=-I$(ICONV_PREFIX)/include +ICONV_CPPFLAGS:=-I$(ICONV_PREFIX)/include +ICONV_LDFLAGS:=-L$(ICONV_PREFIX)/lib + +INTL_DEPENDS:=+BUILD_NLS:libintl-full +INTL_CFLAGS:=-I$(INTL_PREFIX)/include +INTL_CPPFLAGS:=-I$(INTL_PREFIX)/include +INTL_LDFLAGS:=-L$(INTL_PREFIX)/lib + +TARGET_CFLAGS += $(ICONV_CFLAGS) $(INTL_CFLAGS) +TARGET_CPPFLAGS += $(ICONV_CFLAGS) $(INTL_CPPFLAGS) +TARGET_LDFLAGS += $(ICONV_LDFLAGS) $(INTL_LDFLAGS)