Initial commit
This commit is contained in:
101
package/libs/gettext-full/Makefile
Normal file
101
package/libs/gettext-full/Makefile
Normal file
@@ -0,0 +1,101 @@
|
||||
#
|
||||
# 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.8.1
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE:=gettext-$(PKG_VERSION).tar.xz
|
||||
PKG_SOURCE_URL:=@GNU/gettext
|
||||
PKG_HASH:=105556dbc5c3fbbc2aa0edb46d22d055748b6f5c7cd7a8d99f8e7eb84e938be4
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/gettext-$(PKG_VERSION)
|
||||
HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/gettext-$(PKG_VERSION)
|
||||
|
||||
PKG_MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
|
||||
PKG_LICENSE:=GPL-3.0+
|
||||
PKG_CPE_ID:=cpe:/a:gnu:gettext
|
||||
|
||||
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)
|
||||
ifneq ($(HOST_OS),Linux)
|
||||
TARGET_CFLAGS += -I$(STAGING_DIR_HOSTPKG)/include
|
||||
endif
|
||||
ifdef CONFIG_USE_MUSL
|
||||
TARGET_CFLAGS += -D__UCLIBC__
|
||||
endif
|
||||
|
||||
CONFIGURE_ARGS += \
|
||||
--enable-shared \
|
||||
--enable-static \
|
||||
--disable-libasprintf \
|
||||
--disable-rpath \
|
||||
--enable-nls \
|
||||
--disable-java \
|
||||
--disable-native-java \
|
||||
--disable-openmp \
|
||||
--disable-curses \
|
||||
--with-included-gettext \
|
||||
--without-libintl-prefix \
|
||||
--without-libexpat-prefix \
|
||||
--without-emacs
|
||||
|
||||
HOST_CONFIGURE_ARGS += \
|
||||
--disable-shared \
|
||||
--enable-static \
|
||||
--disable-libasprintf \
|
||||
--disable-rpath \
|
||||
--disable-java \
|
||||
--disable-native-java \
|
||||
--disable-openmp \
|
||||
--without-emacs \
|
||||
--without-libxml2-prefix
|
||||
|
||||
|
||||
HOST_CONFIGURE_VARS += \
|
||||
EMACS="no" \
|
||||
am_cv_lib_iconv=no \
|
||||
am_cv_func_iconv=no \
|
||||
ac_cv_header_iconv_h=no \
|
||||
|
||||
HOST_CFLAGS += $(HOST_FPIC)
|
||||
|
||||
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/
|
||||
|
||||
$(SED) '/read dummy/d' $(STAGING_DIR_HOSTPKG)/bin/gettextize
|
||||
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))
|
||||
30
package/libs/gettext-full/patches/000-relocatable.patch
Normal file
30
package/libs/gettext-full/patches/000-relocatable.patch
Normal file
@@ -0,0 +1,30 @@
|
||||
--- a/gettext-tools/misc/autopoint.in
|
||||
+++ b/gettext-tools/misc/autopoint.in
|
||||
@@ -27,7 +27,11 @@ archive_version=@ARCHIVE_VERSION@
|
||||
|
||||
# Set variables
|
||||
# - gettext_datadir directory where the data files are stored.
|
||||
-prefix="@prefix@"
|
||||
+if [ -n "$STAGING_DIR_HOSTPKG" ]; then
|
||||
+ prefix="$STAGING_DIR_HOSTPKG"
|
||||
+else
|
||||
+ prefix="@prefix@"
|
||||
+fi
|
||||
datarootdir="@datarootdir@"
|
||||
: ${gettext_datadir="@datadir@/gettext"}
|
||||
: ${AUTOM4TE=autom4te}
|
||||
--- a/gettext-tools/misc/gettextize.in
|
||||
+++ b/gettext-tools/misc/gettextize.in
|
||||
@@ -27,7 +27,11 @@ archive_version=@ARCHIVE_VERSION@
|
||||
|
||||
# Set variables
|
||||
# - gettext_datadir directory where the data files are stored.
|
||||
-prefix="@prefix@"
|
||||
+if [ -n "$STAGING_DIR_HOSTPKG" ]; then
|
||||
+ prefix="$STAGING_DIR_HOSTPKG"
|
||||
+else
|
||||
+ prefix="@prefix@"
|
||||
+fi
|
||||
datarootdir="@datarootdir@"
|
||||
: ${gettext_datadir="@datadir@/gettext"}
|
||||
: ${AUTOM4TE=autom4te}
|
||||
24
package/libs/gettext-full/patches/001-autotools.patch
Normal file
24
package/libs/gettext-full/patches/001-autotools.patch
Normal file
@@ -0,0 +1,24 @@
|
||||
--- a/gettext-runtime/man/Makefile.am
|
||||
+++ b/gettext-runtime/man/Makefile.am
|
||||
@@ -172,8 +172,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; \
|
||||
@@ -0,0 +1,22 @@
|
||||
--- a/gettext-runtime/Makefile.am
|
||||
+++ b/gettext-runtime/Makefile.am
|
||||
@@ -29,7 +29,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 its
|
||||
+SUBDIRS = intl gnulib-lib libgrep src libgettextpo po projects styles misc m4 its
|
||||
|
||||
EXTRA_DIST = misc/DISCLAIM
|
||||
MOSTLYCLEANFILES = core *.stackdump
|
||||
@@ -0,0 +1,11 @@
|
||||
--- a/gettext-tools/libgettextpo/error.h
|
||||
+++ b/gettext-tools/libgettextpo/error.h
|
||||
@@ -68,7 +68,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;
|
||||
10
package/libs/gettext-full/patches/100-error_progname.patch
Normal file
10
package/libs/gettext-full/patches/100-error_progname.patch
Normal file
@@ -0,0 +1,10 @@
|
||||
--- a/gettext-runtime/intl/intl-compat.c
|
||||
+++ b/gettext-runtime/intl/intl-compat.c
|
||||
@@ -130,3 +130,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
|
||||
@@ -0,0 +1,11 @@
|
||||
--- a/gettext-tools/libgettextpo/error.h
|
||||
+++ b/gettext-tools/libgettextpo/error.h
|
||||
@@ -68,7 +68,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;
|
||||
11
package/libs/gettext-full/patches/120-uclibc-nolocale.patch
Normal file
11
package/libs/gettext-full/patches/120-uclibc-nolocale.patch
Normal file
@@ -0,0 +1,11 @@
|
||||
--- a/gettext-runtime/intl/localename.c
|
||||
+++ b/gettext-runtime/intl/localename.c
|
||||
@@ -2790,7 +2790,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
|
||||
59
package/libs/gettext-full/patches/130-format-secuirty.patch
Normal file
59
package/libs/gettext-full/patches/130-format-secuirty.patch
Normal file
@@ -0,0 +1,59 @@
|
||||
From c7197cad42d6269739f379025c2bec9e474c8027 Mon Sep 17 00:00:00 2001
|
||||
From: Tobias Mueller <tobiasmue@gnome.org>
|
||||
Date: Sat, 29 Jan 2011 16:31:30 +0100
|
||||
Subject: Fixed format string issues by giving static literals, fixes bug
|
||||
640897
|
||||
|
||||
---
|
||||
src/cr-statement.c | 10 +++++-----
|
||||
tests/test2-main.c | 8 +++-----
|
||||
tests/test3-main.c | 8 +++-----
|
||||
3 files changed, 11 insertions(+), 15 deletions(-)
|
||||
|
||||
--- a/gettext-tools/gnulib-lib/libcroco/cr-statement.c
|
||||
+++ b/gettext-tools/gnulib-lib/libcroco/cr-statement.c
|
||||
@@ -2607,7 +2607,7 @@ cr_statement_dump_ruleset (CRStatement *
|
||||
g_return_if_fail (a_fp && a_this);
|
||||
str = cr_statement_ruleset_to_string (a_this, a_indent);
|
||||
if (str) {
|
||||
- fprintf (a_fp, str);
|
||||
+ fprintf (a_fp, "%s", str);
|
||||
g_free (str);
|
||||
str = NULL;
|
||||
}
|
||||
@@ -2658,7 +2658,7 @@ cr_statement_dump_charset (CRStatement *
|
||||
str = cr_statement_charset_to_string (a_this,
|
||||
a_indent) ;
|
||||
if (str) {
|
||||
- fprintf (a_fp, str) ;
|
||||
+ fprintf (a_fp, "%s", str) ;
|
||||
g_free (str) ;
|
||||
str = NULL ;
|
||||
}
|
||||
@@ -2685,7 +2685,7 @@ cr_statement_dump_page (CRStatement * a_
|
||||
|
||||
str = cr_statement_at_page_rule_to_string (a_this, a_indent) ;
|
||||
if (str) {
|
||||
- fprintf (a_fp, str);
|
||||
+ fprintf (a_fp, "%s", str);
|
||||
g_free (str) ;
|
||||
str = NULL ;
|
||||
}
|
||||
@@ -2711,7 +2711,7 @@ cr_statement_dump_media_rule (CRStatemen
|
||||
|
||||
str = cr_statement_media_rule_to_string (a_this, a_indent) ;
|
||||
if (str) {
|
||||
- fprintf (a_fp, str) ;
|
||||
+ fprintf (a_fp, "%s", str) ;
|
||||
g_free (str) ;
|
||||
str = NULL ;
|
||||
}
|
||||
@@ -2737,7 +2737,7 @@ cr_statement_dump_import_rule (CRStateme
|
||||
|
||||
str = cr_statement_import_rule_to_string (a_this, a_indent) ;
|
||||
if (str) {
|
||||
- fprintf (a_fp, str) ;
|
||||
+ fprintf (a_fp, "%s", str) ;
|
||||
g_free (str) ;
|
||||
str = NULL ;
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
--- a/gettext-tools/gnulib-lib/libxml/xmlversion.in.h
|
||||
+++ b/gettext-tools/gnulib-lib/libxml/xmlversion.in.h
|
||||
@@ -273,7 +273,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
|
||||
@@ -273,7 +273,7 @@ XMLPUBFUN void XMLCALL xmlCheckVersion(i
|
||||
*
|
||||
* Whether iconv support is available
|
||||
*/
|
||||
-#if 1
|
||||
+#if 0
|
||||
#define LIBXML_ICONV_ENABLED
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user