From patchwork Mon Sep 3 22:02:55 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Yann E. MORIN" X-Patchwork-Id: 181426 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from hemlock.osuosl.org (hemlock.osuosl.org [140.211.166.133]) by ozlabs.org (Postfix) with ESMTP id 4C13F2C008F for ; Tue, 4 Sep 2012 08:04:21 +1000 (EST) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id 9D987A02B1; Mon, 3 Sep 2012 22:04:20 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id w3P-RZ+1HZee; Mon, 3 Sep 2012 22:04:05 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by hemlock.osuosl.org (Postfix) with ESMTP id DD8CEA02C6; Mon, 3 Sep 2012 22:03:24 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (whitealder.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id BED828F753 for ; Mon, 3 Sep 2012 22:03:13 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 117858A2E0 for ; Mon, 3 Sep 2012 22:03:13 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 8O0-A7BS3Po1 for ; Mon, 3 Sep 2012 22:03:10 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from smtp.smtpout.orange.fr (smtp04.smtpout.orange.fr [80.12.242.126]) by whitealder.osuosl.org (Postfix) with ESMTP id 536148A396 for ; Mon, 3 Sep 2012 22:03:09 +0000 (UTC) Received: from treguer.bzh.lan ([90.32.144.8]) by mwinf5d08 with ME id um341j0060B56Sa03m38We; Tue, 04 Sep 2012 00:03:08 +0200 From: "Yann E. MORIN" To: buildroot@busybox.net Date: Tue, 4 Sep 2012 00:02:55 +0200 Message-Id: <1346709781-18158-6-git-send-email-yann.morin.1998@free.fr> X-Mailer: git-send-email 1.7.2.5 In-Reply-To: <1346709781-18158-1-git-send-email-yann.morin.1998@free.fr> References: <1346709781-18158-1-git-send-email-yann.morin.1998@free.fr> Cc: Thomas Petazzoni , Maxime Ripard , "Yann E. MORIN" Subject: [Buildroot] [PATCH 05/11] gettext: convert to autotools-package X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.14 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: buildroot-bounces@busybox.net From: Maxime Ripard Signed-off-by: Maxime Ripard Signed-off-by: Thomas Petazzoni Tested-by: "Yann E. MORIN" [yann.morin.1998@free.fr: add license info] Signed-off-by: "Yann E. MORIN" Tested-by: Arnout Vandecappelle (Essensium/Mind) Acked-by: Arnout Vandecappelle (Essensium/Mind) CC: Samuel Martin --- package/gettext/Config.in | 10 +++- package/gettext/gettext.mk | 165 ++++++------------------------------------- 2 files changed, 32 insertions(+), 143 deletions(-) diff --git a/package/gettext/Config.in b/package/gettext/Config.in index de19410..ee7d8cb 100644 --- a/package/gettext/Config.in +++ b/package/gettext/Config.in @@ -7,11 +7,19 @@ config BR2_PACKAGE_GETTEXT framework to help other GNU packages produce multi-lingual messages. - Only the gettext libraries will be installed in the + Only the libintl library will be installed in the target. The full gettext suite, including tools, will be installed in the staging directory. http://www.gnu.org/software/gettext/ +config BR2_PACKAGE_GETTEXT_TOOLS + bool "Install gettext tools" + depends on BR2_PACKAGE_GETTEXT + help + This option allows to install the complete gettext suite in + the target filesystem. This is typically not useful for + correct operation of programs. + comment "gettext requires a toolchain with WCHAR support" depends on BR2_NEEDS_GETTEXT && !BR2_USE_WCHAR diff --git a/package/gettext/gettext.mk b/package/gettext/gettext.mk index 4dff941..1de8c3b 100644 --- a/package/gettext/gettext.mk +++ b/package/gettext/gettext.mk @@ -3,147 +3,28 @@ # gettext # ############################################################# -GETTEXT_VERSION:=0.16.1 -GETTEXT_SOURCE:=gettext-$(GETTEXT_VERSION).tar.gz -GETTEXT_SITE:=$(BR2_GNU_MIRROR)/gettext -GETTEXT_DIR:=$(BUILD_DIR)/gettext-$(GETTEXT_VERSION) -GETTEXT_CAT:=$(ZCAT) -GETTEXT_BINARY:=gettext-runtime/src/gettext -GETTEXT_TARGET_BINARY:=usr/bin/gettext - -LIBINTL_TARGET_BINARY:=usr/lib/libintl.so - -$(DL_DIR)/$(GETTEXT_SOURCE): - $(call DOWNLOAD,$(GETTEXT_SITE)/$(GETTEXT_SOURCE)) - -gettext-source: $(DL_DIR)/$(GETTEXT_SOURCE) - -$(GETTEXT_DIR)/.unpacked: $(DL_DIR)/$(GETTEXT_SOURCE) - $(GETTEXT_CAT) $(DL_DIR)/$(GETTEXT_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - - support/scripts/apply-patches.sh $(GETTEXT_DIR) package/gettext/ gettext\*.patch - $(call CONFIG_UPDATE,$(@D)) - touch $@ - -ifneq ($(BR2_TOOLCHAIN_BUILDROOT),y) -IGNORE_EXTERNAL_GETTEXT:=--with-included-gettext +GETTEXT_VERSION = 0.16.1 +GETTEXT_SITE = $(BR2_GNU_MIRROR)/gettext +GETTEXT_INSTALL_STAGING = YES +GETTEXT_LICENSE = GPLv2+ +GETTEXT_LICENSE_FILES = COPYING + +GETTEXT_CONF_OPT += \ + --disable-libasprintf \ + --disable-openmp \ + --disable-rpath \ + --disable-java \ + --disable-native-java \ + --disable-csharp \ + --disable-relocatable \ + --without-emacs + +# When the gettext tools are not enabled in the configuration, we only +# install libintl to the target. +ifeq ($(BR2_PACKAGE_GETTEXT_TOOLS),) +define GETTEXT_INSTALL_TARGET_CMDS + cp -dpf $(STAGING_DIR)/usr/lib/libintl*.so* $(TARGET_DIR)/usr/lib/ +endef endif -$(GETTEXT_DIR)/.configured: $(GETTEXT_DIR)/.unpacked - (cd $(GETTEXT_DIR); rm -rf config.cache; \ - $(TARGET_CONFIGURE_OPTS) \ - $(TARGET_CONFIGURE_ARGS) \ - ac_cv_func_strtod=yes \ - ac_fsusage_space=yes \ - fu_cv_sys_stat_statfs2_bsize=yes \ - ac_cv_func_closedir_void=no \ - ac_cv_func_getloadavg=no \ - ac_cv_lib_util_getloadavg=no \ - ac_cv_lib_getloadavg_getloadavg=no \ - ac_cv_func_getgroups=yes \ - ac_cv_func_getgroups_works=yes \ - ac_cv_func_chown_works=yes \ - ac_cv_have_decl_euidaccess=no \ - ac_cv_func_euidaccess=no \ - ac_cv_have_decl_strnlen=yes \ - ac_cv_func_strnlen_working=yes \ - ac_cv_func_lstat_dereferences_slashed_symlink=yes \ - ac_cv_func_lstat_empty_string_bug=no \ - ac_cv_func_stat_empty_string_bug=no \ - vb_cv_func_rename_trailing_slash_bug=no \ - ac_cv_have_decl_nanosleep=yes \ - jm_cv_func_nanosleep_works=yes \ - gl_cv_func_working_utimes=yes \ - ac_cv_func_utime_null=yes \ - ac_cv_have_decl_strerror_r=yes \ - ac_cv_func_strerror_r_char_p=no \ - jm_cv_func_svid_putenv=yes \ - ac_cv_func_getcwd_null=yes \ - ac_cv_func_getdelim=yes \ - ac_cv_func_mkstemp=yes \ - utils_cv_func_mkstemp_limitations=no \ - utils_cv_func_mkdir_trailing_slash_bug=no \ - jm_cv_func_gettimeofday_clobber=no \ - gl_cv_func_working_readdir=yes \ - jm_ac_cv_func_link_follows_symlink=no \ - utils_cv_localtime_cache=no \ - ac_cv_struct_st_mtim_nsec=no \ - gl_cv_func_tzset_clobber=no \ - gl_cv_func_getcwd_null=yes \ - gl_cv_func_getcwd_path_max=yes \ - ac_cv_func_fnmatch_gnu=yes \ - am_getline_needs_run_time_check=no \ - am_cv_func_working_getline=yes \ - gl_cv_func_mkdir_trailing_slash_bug=no \ - gl_cv_func_mkstemp_limitations=no \ - ac_cv_func_working_mktime=yes \ - jm_cv_func_working_re_compile_pattern=yes \ - ac_use_included_regex=no \ - gl_cv_c_restrict=no \ - ./configure $(QUIET) \ - --target=$(GNU_TARGET_NAME) \ - --host=$(GNU_TARGET_NAME) \ - --build=$(GNU_HOST_NAME) \ - --prefix=/usr \ - --exec-prefix=/usr \ - --disable-libasprintf \ - --enable-shared \ - $(IGNORE_EXTERNAL_GETTEXT) \ - --disable-openmp \ - ) - touch $@ - -$(GETTEXT_DIR)/$(GETTEXT_BINARY): $(GETTEXT_DIR)/.configured - $(MAKE) -C $(GETTEXT_DIR) - touch -c $(GETTEXT_DIR)/$(GETTEXT_BINARY) - -$(STAGING_DIR)/$(GETTEXT_TARGET_BINARY): $(GETTEXT_DIR)/$(GETTEXT_BINARY) - $(MAKE) DESTDIR=$(STAGING_DIR) -C $(GETTEXT_DIR) install - $(SED) 's,/lib/,$(STAGING_DIR)/usr/lib/,g' $(STAGING_DIR)/usr/lib/libgettextlib.la - $(SED) 's,/lib/,$(STAGING_DIR)/usr/lib/,g' $(STAGING_DIR)/usr/lib/libgettextpo.la - $(SED) 's,/lib/,$(STAGING_DIR)/usr/lib/,g' $(STAGING_DIR)/usr/lib/libgettextsrc.la - $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/usr/lib\',g" $(STAGING_DIR)/usr/lib/libgettextlib.la - $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/usr/lib\',g" $(STAGING_DIR)/usr/lib/libgettextpo.la - $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/usr/lib\',g" $(STAGING_DIR)/usr/lib/libgettextsrc.la - $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/usr/lib\',g" $(STAGING_DIR)/usr/lib/libintl.la - rm -f $(addprefix $(STAGING_DIR)/usr/bin/, \ - autopoint envsubst gettext.sh gettextize msg* ?gettext) - touch -c $@ - -gettext-legal-info: - @$(call legal-warning-pkg,gettext,legal-info not yet implemented) - -gettext: host-pkg-config $(if $(BR2_PACKAGE_LIBICONV),libiconv) $(STAGING_DIR)/$(GETTEXT_TARGET_BINARY) $(TARGET_DIR)/$(LIBINTL_TARGET_BINARY) - -gettext-unpacked: $(GETTEXT_DIR)/.unpacked - -gettext-clean: - -$(MAKE) DESTDIR=$(STAGING_DIR) CC="$(TARGET_CC)" -C $(GETTEXT_DIR) uninstall - -$(MAKE) DESTDIR=$(TARGET_DIR) CC="$(TARGET_CC)" -C $(GETTEXT_DIR) uninstall - -$(MAKE) -C $(GETTEXT_DIR) clean - -gettext-dirclean: - rm -rf $(GETTEXT_DIR) - -############################################################# -# -# gettext on the target -# -############################################################# - -$(TARGET_DIR)/usr/lib/libintl.so: $(STAGING_DIR)/$(GETTEXT_TARGET_BINARY) - cp -dpf $(STAGING_DIR)/usr/lib/libgettext*.so* \ - $(STAGING_DIR)/usr/lib/libintl*.so* $(TARGET_DIR)/usr/lib/ - $(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/usr/lib/libgettext*.so* - $(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/usr/lib/libintl*.so* - rm -f $(addprefix $(TARGET_DIR)/usr/lib/, \ - libgettext*.so*.la libintl*.so*.la) - touch -c $@ - -############################################################# -# -# Toplevel Makefile options -# -############################################################# -ifeq ($(BR2_PACKAGE_GETTEXT),y) -TARGETS+=gettext -endif +$(eval $(autotools-package))