aboutsummaryrefslogtreecommitdiffstats
path: root/package/libs/gettext-full
diff options
context:
space:
mode:
Diffstat (limited to 'package/libs/gettext-full')
-rw-r--r--package/libs/gettext-full/Makefile80
-rw-r--r--package/libs/gettext-full/patches/001-autotools.patch24
-rw-r--r--package/libs/gettext-full/patches/001-no_examples_and_tests.patch22
-rw-r--r--package/libs/gettext-full/patches/003-gettext-error_print_progname.patch11
-rw-r--r--package/libs/gettext-full/patches/100-error_progname.patch10
-rw-r--r--package/libs/gettext-full/patches/110-error_progname_def.patch11
-rw-r--r--package/libs/gettext-full/patches/120-uclibc-nolocale.patch11
-rw-r--r--package/libs/gettext-full/patches/150-disable_libxml_iconv.patch22
8 files changed, 191 insertions, 0 deletions
diff --git a/package/libs/gettext-full/Makefile b/package/libs/gettext-full/Makefile
new file mode 100644
index 0000000..1f8c2c8
--- /dev/null
+++ b/package/libs/gettext-full/Makefile
@@ -0,0 +1,80 @@
+#
+# Copyright (C) 2006-2015 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.19.4
+PKG_RELEASE:=1
+
+PKG_SOURCE:=gettext-$(PKG_VERSION).tar.xz
+PKG_SOURCE_URL:=@GNU/gettext
+PKG_MD5SUM:=997c9070354eff5517115feaea6038f0
+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_LICENSE:=GPL-3.0+
+
+PKG_FIXUP:=autoreconf
+PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=0
+PKG_BUILD_DEPENDS:=gettext-full/host
+PKG_CHECK_FORMAT_SECURITY:=0
+
+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)
+ifneq ($(HOST_OS),Linux)
+ TARGET_CFLAGS += -I$(STAGING_DIR_HOST)/include
+endif
+ifdef CONFIG_USE_MUSL
+ TARGET_CFLAGS += -D__UCLIBC__
+endif
+
+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
+
+HOST_CONFIGURE_ARGS += \
+ --with-included-libxml --without-libxml2-prefix --with-included-libcroco
+
+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 0000000..ecbb030
--- /dev/null
+++ b/package/libs/gettext-full/patches/001-autotools.patch
@@ -0,0 +1,24 @@
+--- a/gettext-runtime/man/Makefile.am
++++ b/gettext-runtime/man/Makefile.am
+@@ -171,8 +171,7 @@ textdomain.3.html: textdomain.3.in
+ bindtextdomain.3.html: bindtextdomain.3.in
+ bind_textdomain_codeset.3.html: bind_textdomain_codeset.3.in
+
+-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
+@@ -153,8 +153,7 @@ recode-sr-latin.1.html: recode-sr-latin.
+ gettextize.1.html: gettextize.1
+ autopoint.1.html: autopoint.1
+
+-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; \
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 0000000..373b4a1
--- /dev/null
+++ b/package/libs/gettext-full/patches/001-no_examples_and_tests.patch
@@ -0,0 +1,22 @@
+--- a/gettext-runtime/Makefile.am
++++ b/gettext-runtime/Makefile.am
+@@ -28,7 +28,7 @@ SUBDIR_libasprintf = libasprintf
+ else
+ SUBDIR_libasprintf =
+ endif
+-SUBDIRS = doc intl intl-java intl-csharp gnulib-lib $(SUBDIR_libasprintf) src po man m4 tests
++SUBDIRS = intl intl-java intl-csharp gnulib-lib $(SUBDIR_libasprintf) src po m4
+
+ EXTRA_DIST = BUGS
+
+--- a/gettext-tools/Makefile.am
++++ b/gettext-tools/Makefile.am
+@@ -19,7 +19,7 @@
+ 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 = intl gnulib-lib libgrep src libgettextpo po projects styles misc m4
+
+ EXTRA_DIST = misc/DISCLAIM
+ MOSTLYCLEANFILES = core *.stackdump
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 0000000..72fdc55
--- /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
+@@ -58,7 +58,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/100-error_progname.patch b/package/libs/gettext-full/patches/100-error_progname.patch
new file mode 100644
index 0000000..74f5169
--- /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
+@@ -129,3 +129,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/110-error_progname_def.patch b/package/libs/gettext-full/patches/110-error_progname_def.patch
new file mode 100644
index 0000000..bf01d4b
--- /dev/null
+++ b/package/libs/gettext-full/patches/110-error_progname_def.patch
@@ -0,0 +1,11 @@
+--- a/gettext-tools/libgettextpo/error.h
++++ b/gettext-tools/libgettextpo/error.h
+@@ -58,7 +58,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. */
+-void (*error_print_progname) (void);
++extern 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/120-uclibc-nolocale.patch b/package/libs/gettext-full/patches/120-uclibc-nolocale.patch
new file mode 100644
index 0000000..51d523f
--- /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
+@@ -2779,7 +2779,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 0000000..a8f5a5c
--- /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
+