a7fe2ce6f4
Of host-gettext, we only build the tools. however some of those tools have a --color option, which needs libxml2. If the libxml2 development files are missing on the host, a bundled subset of libxml2 is used, and all seems OK. But if they ar epresent, then the host libxml2 is used. On some distros, lbxml2 is linked with liblzma. And if we happend to _then_ build our host-liblzma, we may have a conflict later when trying to run any of the host-gettext tools. Always build host-gettext with our own host-libxml2 which is not linked with liblzma. Fixes https://bugs.busybox.net/show_bug.cgi?id=7886 Signed-off-by: Ignacy Gawędzki <ignacy.gawedzki@green-communications.fr> [nicolas: added extended commit message] Signed-off-by: Nicolas Cavallari <nicolas.cavallari@green-communications.fr> [yann.morin.1998@free.fr: rebase; add comment; enhance commit log] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
88 lines
2.8 KiB
Makefile
88 lines
2.8 KiB
Makefile
################################################################################
|
|
#
|
|
# gettext
|
|
#
|
|
################################################################################
|
|
|
|
GETTEXT_VERSION = 0.19.7
|
|
GETTEXT_SITE = $(BR2_GNU_MIRROR)/gettext
|
|
GETTEXT_SOURCE = gettext-$(GETTEXT_VERSION).tar.xz
|
|
GETTEXT_INSTALL_STAGING = YES
|
|
GETTEXT_LICENSE = LGPLv2.1+ (libintl), GPLv3+ (the rest)
|
|
GETTEXT_LICENSE_FILES = COPYING gettext-runtime/intl/COPYING.LIB
|
|
|
|
GETTEXT_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv)
|
|
|
|
# Avoid using the bundled subset of libxml2
|
|
HOST_GETTEXT_DEPENDENCIES = host-libxml2
|
|
|
|
GETTEXT_CONF_OPTS += \
|
|
--disable-libasprintf \
|
|
--disable-acl \
|
|
--disable-openmp \
|
|
--disable-rpath \
|
|
--disable-java \
|
|
--disable-native-java \
|
|
--disable-csharp \
|
|
--disable-relocatable \
|
|
--without-emacs
|
|
|
|
HOST_GETTEXT_CONF_OPTS = \
|
|
--disable-libasprintf \
|
|
--disable-acl \
|
|
--disable-openmp \
|
|
--disable-rpath \
|
|
--disable-java \
|
|
--disable-native-java \
|
|
--disable-csharp \
|
|
--disable-relocatable \
|
|
--without-emacs
|
|
|
|
# For the target version, we only need the runtime, and for the host
|
|
# version, we only need the tools.
|
|
GETTEXT_SUBDIR = gettext-runtime
|
|
HOST_GETTEXT_SUBDIR = gettext-tools
|
|
|
|
# Disable the build of documentation and examples of gettext-tools,
|
|
# and the build of documentation and tests of gettext-runtime.
|
|
define HOST_GETTEXT_DISABLE_UNNEEDED
|
|
$(SED) '/^SUBDIRS/s/ doc //;/^SUBDIRS/s/examples$$//' $(@D)/gettext-tools/Makefile.in
|
|
$(SED) '/^SUBDIRS/s/ doc //;/^SUBDIRS/s/tests$$//' $(@D)/gettext-runtime/Makefile.in
|
|
endef
|
|
|
|
GETTEXT_POST_PATCH_HOOKS += HOST_GETTEXT_DISABLE_UNNEEDED
|
|
HOST_GETTEXT_POST_PATCH_HOOKS += HOST_GETTEXT_DISABLE_UNNEEDED
|
|
|
|
define GETTEXT_REMOVE_UNNEEDED
|
|
$(RM) -rf $(TARGET_DIR)/usr/share/gettext/ABOUT-NLS
|
|
rmdir --ignore-fail-on-non-empty $(TARGET_DIR)/usr/share/gettext
|
|
endef
|
|
|
|
GETTEXT_POST_INSTALL_TARGET_HOOKS += GETTEXT_REMOVE_UNNEEDED
|
|
|
|
define GETTEXT_GETTEXTIZE_EYE_CANDY
|
|
$(SED) '/Press Return\|read dummy/d' $(HOST_DIR)/usr/bin/gettextize
|
|
endef
|
|
|
|
HOST_GETTEXT_POST_INSTALL_HOOKS += GETTEXT_GETTEXTIZE_EYE_CANDY
|
|
|
|
# Force build with NLS support, otherwise libintl is not built
|
|
# This is needed because some packages (eg. libglib2) requires
|
|
# locales, but do not properly depend on BR2_ENABLE_LOCALE, and
|
|
# instead select BR2_PACKAGE_GETTEXT. Those packages need to be
|
|
# fixed before we can remove the following 3 lines... :-(
|
|
ifeq ($(BR2_ENABLE_LOCALE),)
|
|
GETTEXT_CONF_OPTS += --enable-nls
|
|
endif
|
|
|
|
# Disable interactive confirmation in host gettextize for package fixups
|
|
define HOST_GETTEXT_GETTEXTIZE_CONFIRMATION
|
|
$(SED) '/read dummy/d' $(HOST_DIR)/usr/bin/gettextize
|
|
endef
|
|
HOST_GETTEXT_POST_INSTALL_HOOKS += HOST_GETTEXT_GETTEXTIZE_CONFIRMATION
|
|
|
|
GETTEXTIZE = $(HOST_CONFIGURE_OPTS) AUTOM4TE=$(HOST_DIR)/usr/bin/autom4te $(HOST_DIR)/usr/bin/gettextize -f
|
|
|
|
$(eval $(autotools-package))
|
|
$(eval $(host-autotools-package))
|