diff options
Diffstat (limited to 'package/libs/gettext-full')
10 files changed, 255 insertions, 0 deletions
diff --git a/package/libs/gettext-full/Makefile b/package/libs/gettext-full/Makefile new file mode 100644 index 000000000..2ae8cd382 --- /dev/null +++ b/package/libs/gettext-full/Makefile @@ -0,0 +1,69 @@ +# +# Copyright (C) 2006-2012 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=gettext-full +PKG_VERSION:=0.18.1.1 +PKG_RELEASE:=2 + +PKG_SOURCE:=gettext-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=@GNU/gettext +PKG_MD5SUM:=3dd55b952826d2b32f51308f2f91aa89 +PKG_BUILD_DIR:=$(BUILD_DIR)/gettext-$(PKG_VERSION) +HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/gettext-$(PKG_VERSION) + +PKG_MAINTAINER:=Jo-Philipp Wich <jow@openwrt.org> + +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 +PKG_BUILD_PARALLEL:=0 +PKG_BUILD_DEPENDS:=gettext-full/host + +include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/host-build.mk + +define Package/libintl-full +  SECTION:=libs +  CATEGORY:=Libraries +  TITLE:=GNU Internationalization library +  URL:=http://www.gnu.org/software/gettext/ +endef + +TARGET_CFLAGS += $(FPIC) + +CONFIGURE_ARGS += \ +	--enable-shared \ +	--enable-static \ +	--disable-rpath \ +	--enable-nls \ +	--disable-java \ +	--disable-native-java \ +	--disable-openmp \ +	--with-included-gettext \ +	--without-libintl-prefix \ +	--without-libexpat-prefix \ +	--without-emacs + +define Build/InstallDev +	$(INSTALL_DIR) $(1)/usr/lib/libintl-full/include +	$(CP) $(PKG_INSTALL_DIR)/usr/include/libintl.h $(1)/usr/lib/libintl-full/include/ + +	$(INSTALL_DIR) $(1)/usr/lib/libintl-full/lib +	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libintl.{a,so*} $(1)/usr/lib/libintl-full/lib/ + +	$(INSTALL_DIR) $(1)/usr/share/aclocal +	$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/aclocal/* $(1)/usr/share/aclocal/ +endef + +define Package/libintl-full/install +	$(INSTALL_DIR) $(1)/usr/lib +	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libintl.so* $(1)/usr/lib/ +endef + +$(eval $(call HostBuild)) +$(eval $(call BuildPackage,libintl-full)) diff --git a/package/libs/gettext-full/patches/001-autotools.patch b/package/libs/gettext-full/patches/001-autotools.patch new file mode 100644 index 000000000..bf44fcbf8 --- /dev/null +++ b/package/libs/gettext-full/patches/001-autotools.patch @@ -0,0 +1,35 @@ +--- a/gettext-runtime/man/Makefile.am ++++ b/gettext-runtime/man/Makefile.am +@@ -159,8 +159,7 @@ bind_textdomain_codeset.3.html: bind_tex + 	$(MAN2HTML) $(srcdir)/bind_textdomain_codeset.3.in | sed -e '/CreationDate:/d' > t-$@ + 	mv t-$@ $@ +  +-install-html-local: +-	$(mkdir_p) $(DESTDIR)$(htmldir) ++install-html: installdirs-html + 	for file in $(man_HTML); do \ + 	  if test -f $$file; then dir=.; else dir=$(srcdir); fi; \ + 	  $(INSTALL_DATA) $$dir/$$file $(DESTDIR)$(htmldir)/$$file; \ +--- a/gettext-tools/man/Makefile.am ++++ b/gettext-tools/man/Makefile.am +@@ -186,8 +186,7 @@ autopoint.1.html: autopoint.1 + 	$(MAN2HTML) `if test -f autopoint.1; then echo .; else echo $(srcdir); fi`/autopoint.1 | sed -e '/CreationDate:/d' > t-$@ + 	mv t-$@ $@ +  +-install-html-local: +-	$(mkdir_p) $(DESTDIR)$(htmldir) ++install-html: installdirs-html + 	for file in $(man_HTML); do \ + 	  if test -f $$file; then dir=.; else dir=$(srcdir); fi; \ + 	  $(INSTALL_DATA) $$dir/$$file $(DESTDIR)$(htmldir)/$$file; \ +--- a/gettext-runtime/intl/Makefile.in ++++ b/gettext-runtime/intl/Makefile.in +@@ -19,7 +19,7 @@ + PACKAGE = @PACKAGE@ + VERSION = @VERSION@ +  +-SHELL = /bin/sh ++SHELL = @SHELL@ +  + srcdir = @srcdir@ + top_srcdir = @top_srcdir@ diff --git a/package/libs/gettext-full/patches/001-no_examples_and_tests.patch b/package/libs/gettext-full/patches/001-no_examples_and_tests.patch new file mode 100644 index 000000000..7cdb389fc --- /dev/null +++ b/package/libs/gettext-full/patches/001-no_examples_and_tests.patch @@ -0,0 +1,22 @@ +--- a/gettext-runtime/Makefile.in ++++ b/gettext-runtime/Makefile.in +@@ -208,7 +208,7 @@ AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGE + ETAGS = etags + CTAGS = ctags + DIST_SUBDIRS = doc intl intl-java intl-csharp gnulib-lib libasprintf \ +-	src po man m4 tests ++	src po man m4 + DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) + distdir = $(PACKAGE)-$(VERSION) + top_distdir = $(distdir) +--- a/gettext-tools/Makefile.in ++++ b/gettext-tools/Makefile.in +@@ -1248,7 +1248,7 @@ top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + AUTOMAKE_OPTIONS = 1.5 gnu no-dependencies + ACLOCAL_AMFLAGS = -I m4 -I ../gettext-runtime/m4 -I ../m4 -I gnulib-m4 -I libgrep/gnulib-m4 -I libgettextpo/gnulib-m4 +-SUBDIRS = doc intl gnulib-lib libgrep src libgettextpo po projects styles misc man m4 tests gnulib-tests examples ++SUBDIRS = doc intl gnulib-lib libgrep src libgettextpo po projects styles misc man m4 +  + # Allow users to use "gnulib-tool --update". +  diff --git a/package/libs/gettext-full/patches/003-gettext-error_print_progname.patch b/package/libs/gettext-full/patches/003-gettext-error_print_progname.patch new file mode 100644 index 000000000..9e84551a9 --- /dev/null +++ b/package/libs/gettext-full/patches/003-gettext-error_print_progname.patch @@ -0,0 +1,11 @@ +--- a/gettext-tools/libgettextpo/error.h ++++ b/gettext-tools/libgettextpo/error.h +@@ -49,7 +49,7 @@ extern void error_at_line (int __status, + /* If NULL, error will flush stdout, then print on stderr the program +    name, a colon and a space.  Otherwise, error will call this +    function without parameters instead.  */ +-extern DLL_VARIABLE void (*error_print_progname) (void); ++void (*error_print_progname) (void); +  + /* This variable is incremented each time `error' is called.  */ + extern DLL_VARIABLE unsigned int error_message_count; diff --git a/package/libs/gettext-full/patches/004-gnulib-uclibc-sched_param-def.patch b/package/libs/gettext-full/patches/004-gnulib-uclibc-sched_param-def.patch new file mode 100644 index 000000000..051c3747f --- /dev/null +++ b/package/libs/gettext-full/patches/004-gnulib-uclibc-sched_param-def.patch @@ -0,0 +1,17 @@ +uclibc defines __GLIBC__ but it does not expose struct shed_param as much as glibc +and is not needed too per standard. gnulib attempts to use it but we have to account +for it because in this case uclibc does not behave like glibc. + +-Khem + +--- a/gettext-tools/gnulib-lib/spawn.in.h ++++ b/gettext-tools/gnulib-lib/spawn.in.h +@@ -31,7 +31,7 @@ +  + /* Get definitions of 'struct sched_param' and 'sigset_t'. +    But avoid namespace pollution on glibc systems.  */ +-#ifndef __GLIBC__ ++#if !defined __GLIBC__ || defined __UCLIBC__ + # include <sched.h> + # include <signal.h> + #endif diff --git a/package/libs/gettext-full/patches/005-uclibc-0.9.30-compat.patch b/package/libs/gettext-full/patches/005-uclibc-0.9.30-compat.patch new file mode 100644 index 000000000..dafa79c46 --- /dev/null +++ b/package/libs/gettext-full/patches/005-uclibc-0.9.30-compat.patch @@ -0,0 +1,22 @@ +--- a/gettext-runtime/intl/localename.c ++++ b/gettext-runtime/intl/localename.c +@@ -2607,7 +2607,7 @@ gl_locale_name_thread_unsafe (int catego +     locale_t thread_locale = uselocale (NULL); +     if (thread_locale != LC_GLOBAL_LOCALE) +       { +-#  if __GLIBC__ >= 2 ++#  if __GLIBC__ >= 2 && !defined __UCLIBC__ +         /* Work around an incorrect definition of the _NL_LOCALE_NAME macro in +            glibc < 2.12. +            See <http://sourceware.org/bugzilla/show_bug.cgi?id=10968>.  */ +--- a/gettext-tools/gnulib-lib/localename.c ++++ b/gettext-tools/gnulib-lib/localename.c +@@ -2607,7 +2607,7 @@ gl_locale_name_thread_unsafe (int catego +     locale_t thread_locale = uselocale (NULL); +     if (thread_locale != LC_GLOBAL_LOCALE) +       { +-#  if __GLIBC__ >= 2 ++#  if __GLIBC__ >= 2 && !defined __UCLIBC__ +         /* Work around an incorrect definition of the _NL_LOCALE_NAME macro in +            glibc < 2.12. +            See <http://sourceware.org/bugzilla/show_bug.cgi?id=10968>.  */ diff --git a/package/libs/gettext-full/patches/100-error_progname.patch b/package/libs/gettext-full/patches/100-error_progname.patch new file mode 100644 index 000000000..f414703d9 --- /dev/null +++ b/package/libs/gettext-full/patches/100-error_progname.patch @@ -0,0 +1,10 @@ +--- a/gettext-runtime/intl/intl-compat.c ++++ b/gettext-runtime/intl/intl-compat.c +@@ -131,3 +131,7 @@ bind_textdomain_codeset (const char *dom + { +   return libintl_bind_textdomain_codeset (domainname, codeset); + } ++ ++#ifdef __UCLIBC__ ++DLL_EXPORTED void (*error_print_progname)(void) = NULL; ++#endif diff --git a/package/libs/gettext-full/patches/120-uclibc-nolocale.patch b/package/libs/gettext-full/patches/120-uclibc-nolocale.patch new file mode 100644 index 000000000..3e409eb7e --- /dev/null +++ b/package/libs/gettext-full/patches/120-uclibc-nolocale.patch @@ -0,0 +1,11 @@ +--- a/gettext-runtime/intl/localename.c ++++ b/gettext-runtime/intl/localename.c +@@ -2780,7 +2780,7 @@ gl_locale_name_posix (int category, cons + { +   /* Use the POSIX methods of looking to 'LC_ALL', 'LC_xxx', and 'LANG'. +      On some systems this can be done by the 'setlocale' function itself.  */ +-#if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES && defined HAVE_LOCALE_NULL ++#if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES && defined HAVE_LOCALE_NULL && (!defined __UCLIBC__ || defined __UCLIBC_HAS_LOCALE__) +   return setlocale (category, NULL); + #else +   /* On other systems we ignore what setlocale reports and instead look at the diff --git a/package/libs/gettext-full/patches/150-disable_libxml_iconv.patch b/package/libs/gettext-full/patches/150-disable_libxml_iconv.patch new file mode 100644 index 000000000..a8f5a5cee --- /dev/null +++ b/package/libs/gettext-full/patches/150-disable_libxml_iconv.patch @@ -0,0 +1,22 @@ +--- a/gettext-tools/gnulib-lib/libxml/xmlversion.in.h ++++ b/gettext-tools/gnulib-lib/libxml/xmlversion.in.h +@@ -263,7 +263,7 @@ XMLPUBFUN void XMLCALL xmlCheckVersion(i +  * +  * Whether iconv support is available +  */ +-#if 1 ++#if 0 + #define LIBXML_ICONV_ENABLED + #endif +  +--- a/gnulib-local/lib/libxml/xmlversion.in.h ++++ b/gnulib-local/lib/libxml/xmlversion.in.h +@@ -263,7 +263,7 @@ XMLPUBFUN void XMLCALL xmlCheckVersion(i +  * +  * Whether iconv support is available +  */ +-#if 1 ++#if 0 + #define LIBXML_ICONV_ENABLED + #endif +  diff --git a/package/libs/gettext-full/patches/160-eglibc_stdio.patch b/package/libs/gettext-full/patches/160-eglibc_stdio.patch new file mode 100644 index 000000000..a4c4f926d --- /dev/null +++ b/package/libs/gettext-full/patches/160-eglibc_stdio.patch @@ -0,0 +1,36 @@ +--- a/gettext-runtime/gnulib-lib/stdio.in.h ++++ b/gettext-runtime/gnulib-lib/stdio.in.h +@@ -141,7 +141,9 @@ _GL_WARN_ON_USE (fflush, "fflush is not +    so any use of gets warrants an unconditional warning.  Assume it is +    always declared, since it is required by C89.  */ + #undef gets ++#if HAVE_RAW_DECL_GETS + _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); ++#endif +  + #if @GNULIB_FOPEN@ + # if @REPLACE_FOPEN@ +--- a/gettext-tools/gnulib-lib/stdio.in.h ++++ b/gettext-tools/gnulib-lib/stdio.in.h +@@ -141,7 +141,9 @@ _GL_WARN_ON_USE (fflush, "fflush is not +    so any use of gets warrants an unconditional warning.  Assume it is +    always declared, since it is required by C89.  */ + #undef gets ++#if HAVE_RAW_DECL_GETS + _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); ++#endif +  + #if @GNULIB_FOPEN@ + # if @REPLACE_FOPEN@ +--- a/gettext-tools/libgettextpo/stdio.in.h ++++ b/gettext-tools/libgettextpo/stdio.in.h +@@ -141,7 +141,9 @@ _GL_WARN_ON_USE (fflush, "fflush is not +    so any use of gets warrants an unconditional warning.  Assume it is +    always declared, since it is required by C89.  */ + #undef gets ++#if HAVE_RAW_DECL_GETS + _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); ++#endif +  + #if @GNULIB_FOPEN@ + # if @REPLACE_FOPEN@  | 
