Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [git commit] package/gettext: turn into virtual package
@ 2019-03-31 12:04 Thomas Petazzoni
  2019-04-07 21:33 ` Romain Naour
  2019-04-07 21:43 ` Romain Naour
  0 siblings, 2 replies; 7+ messages in thread
From: Thomas Petazzoni @ 2019-03-31 12:04 UTC (permalink / raw)
  To: buildroot

commit: https://git.buildroot.net/buildroot/commit/?id=ea1e7ee6068265d3f8ade97a387d77c77335b38e
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master

Re-work gettext to be a virtual package which may allow to use
different gettext's providers, and rename the original one into
gettext-gnu package.

Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
---
 package/Config.in                                  |  1 +
 .../0001-error_print_progname.patch                |  0
 .../0002-Update-after-gnulib-changed.patch         |  0
 package/{gettext => gettext-gnu}/Config.in         | 17 ++--
 .../gettext.hash => gettext-gnu/gettext-gnu.hash}  |  0
 .../gettext.mk => gettext-gnu/gettext-gnu.mk}      | 61 +++++++-------
 package/gettext/Config.in                          | 24 +++---
 package/gettext/gettext.mk                         | 96 +---------------------
 8 files changed, 53 insertions(+), 146 deletions(-)

diff --git a/package/Config.in b/package/Config.in
index 22a1fcb8a2..24b205a3ea 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -153,6 +153,7 @@ menu "Development tools"
 	source "package/flex/Config.in"
 	source "package/gawk/Config.in"
 	source "package/gettext/Config.in"
+	source "package/gettext-gnu/Config.in"
 	source "package/git/Config.in"
 	source "package/git-crypt/Config.in"
 	source "package/gperf/Config.in"
diff --git a/package/gettext/0001-error_print_progname.patch b/package/gettext-gnu/0001-error_print_progname.patch
similarity index 100%
rename from package/gettext/0001-error_print_progname.patch
rename to package/gettext-gnu/0001-error_print_progname.patch
diff --git a/package/gettext/0002-Update-after-gnulib-changed.patch b/package/gettext-gnu/0002-Update-after-gnulib-changed.patch
similarity index 100%
rename from package/gettext/0002-Update-after-gnulib-changed.patch
rename to package/gettext-gnu/0002-Update-after-gnulib-changed.patch
diff --git a/package/gettext/Config.in b/package/gettext-gnu/Config.in
similarity index 59%
copy from package/gettext/Config.in
copy to package/gettext-gnu/Config.in
index e55663b1d7..af5feed14b 100644
--- a/package/gettext/Config.in
+++ b/package/gettext-gnu/Config.in
@@ -1,6 +1,7 @@
-config BR2_PACKAGE_GETTEXT
-	bool "gettext"
+config BR2_PACKAGE_GETTEXT_GNU
+	bool
 	depends on BR2_USE_WCHAR
+	select BR2_PACKAGE_HAS_GETTEXT
 	help
 	  The GNU `gettext' utilities are a set of tools that provide a
 	  framework to help other GNU packages produce multi-lingual
@@ -12,14 +13,12 @@ config BR2_PACKAGE_GETTEXT
 
 	  http://www.gnu.org/software/gettext/
 
-if BR2_PACKAGE_GETTEXT
+if BR2_PACKAGE_GETTEXT_GNU
 
-config BR2_PACKAGE_GETTEXT_PROVIDES_LIBINTL
-	bool
-	default y if BR2_SYSTEM_ENABLE_NLS
-	depends on !BR2_TOOLCHAIN_HAS_FULL_GETTEXT
+config BR2_PACKAGE_PROVIDES_GETTEXT
+	default "gettext-gnu"
 
 endif
 
-comment "gettext needs a toolchain w/ wchar"
-	depends on !BR2_USE_WCHAR
+config BR2_PACKAGE_PROVIDES_HOST_GETTEXT
+	default "host-gettext-gnu"
diff --git a/package/gettext/gettext.hash b/package/gettext-gnu/gettext-gnu.hash
similarity index 100%
rename from package/gettext/gettext.hash
rename to package/gettext-gnu/gettext-gnu.hash
diff --git a/package/gettext/gettext.mk b/package/gettext-gnu/gettext-gnu.mk
similarity index 57%
copy from package/gettext/gettext.mk
copy to package/gettext-gnu/gettext-gnu.mk
index ec9588f8ad..61adf72738 100644
--- a/package/gettext/gettext.mk
+++ b/package/gettext-gnu/gettext-gnu.mk
@@ -1,23 +1,24 @@
 ################################################################################
 #
-# gettext
+# gettext-gnu
 #
 ################################################################################
 
-GETTEXT_VERSION = 0.19.8.1
-GETTEXT_SITE = $(BR2_GNU_MIRROR)/gettext
-GETTEXT_SOURCE = gettext-$(GETTEXT_VERSION).tar.xz
-GETTEXT_INSTALL_STAGING = YES
-GETTEXT_LICENSE = LGPL-2.1+ (libintl), GPL-3.0+ (the rest)
-GETTEXT_LICENSE_FILES = COPYING gettext-runtime/intl/COPYING.LIB
+GETTEXT_GNU_VERSION = 0.19.8.1
+GETTEXT_GNU_SITE = $(BR2_GNU_MIRROR)/gettext
+GETTEXT_GNU_SOURCE = gettext-$(GETTEXT_GNU_VERSION).tar.xz
+GETTEXT_GNU_INSTALL_STAGING = YES
+GETTEXT_GNU_LICENSE = LGPL-2.1+ (libintl), GPL-3.0+ (the rest)
+GETTEXT_GNU_LICENSE_FILES = COPYING gettext-runtime/intl/COPYING.LIB
 # 0002-Update-after-gnulib-changed.patch
-GETTEXT_AUTORECONF = YES
-GETTEXT_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv)
+GETTEXT_GNU_AUTORECONF = YES
+GETTEXT_GNU_PROVIDES = gettext
+GETTEXT_GNU_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv)
 
 # Avoid using the bundled subset of libxml2
-HOST_GETTEXT_DEPENDENCIES = host-libxml2
+HOST_GETTEXT_GNU_DEPENDENCIES = host-libxml2
 
-GETTEXT_CONF_OPTS += \
+GETTEXT_GNU_CONF_OPTS += \
 	--disable-libasprintf \
 	--disable-acl \
 	--disable-openmp \
@@ -28,7 +29,7 @@ GETTEXT_CONF_OPTS += \
 	--disable-relocatable \
 	--without-emacs
 
-HOST_GETTEXT_CONF_OPTS = \
+HOST_GETTEXT_GNU_CONF_OPTS = \
 	--disable-libasprintf \
 	--disable-acl \
 	--disable-openmp \
@@ -41,60 +42,62 @@ HOST_GETTEXT_CONF_OPTS = \
 
 # Force the build of libintl, even if the C library provides a stub
 # gettext implementation
-ifeq ($(BR2_PACKAGE_GETTEXT_PROVIDES_LIBINTL),y)
-GETTEXT_CONF_OPTS += --with-included-gettext
+ifeq ($(BR2_PACKAGE_GETTEXT_GNU_PROVIDES_LIBINTL),y)
+GETTEXT_GNU_CONF_OPTS += --with-included-gettext
 else
-GETTEXT_CONF_OPTS += --without-included-gettext
+GETTEXT_GNU_CONF_OPTS += --without-included-gettext
 endif
 
 # 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
+GETTEXT_GNU_SUBDIR = gettext-runtime
+HOST_GETTEXT_GNU_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
+define HOST_GETTEXT_GNU_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
+GETTEXT_GNU_POST_PATCH_HOOKS += HOST_GETTEXT_GNU_DISABLE_UNNEEDED
+HOST_GETTEXT_GNU_POST_PATCH_HOOKS += HOST_GETTEXT_GNU_DISABLE_UNNEEDED
 
-define GETTEXT_REMOVE_UNNEEDED
+define GETTEXT_GNU_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
+GETTEXT_GNU_POST_INSTALL_TARGET_HOOKS += GETTEXT_GNU_REMOVE_UNNEEDED
 
 # 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
+# instead select BR2_PACKAGE_GETTEXT_GNU. Those packages need to be
 # fixed before we can remove the following 3 lines... :-(
 ifeq ($(BR2_ENABLE_LOCALE),)
-GETTEXT_CONF_OPTS += --enable-nls
+GETTEXT_GNU_CONF_OPTS += --enable-nls
 endif
 
 # Disable interactive confirmation in host gettextize for package fixups
-define HOST_GETTEXT_GETTEXTIZE_CONFIRMATION
+define HOST_GETTEXT_GNU_GETTEXTIZE_CONFIRMATION
 	$(SED) '/read dummy/d' $(HOST_DIR)/bin/gettextize
 endef
-HOST_GETTEXT_POST_INSTALL_HOOKS += HOST_GETTEXT_GETTEXTIZE_CONFIRMATION
+HOST_GETTEXT_GNU_POST_INSTALL_HOOKS += HOST_GETTEXT_GNU_GETTEXTIZE_CONFIRMATION
 
 # autoreconf expects gettextize to install ABOUT-NLS, but it only gets
 # installed by gettext-runtime which we don't build/install for the
 # host, so do it manually
-define HOST_GETTEXT_ADD_ABOUT_NLS
-	$(INSTALL) -m 0644 $(@D)/$(HOST_GETTEXT_SUBDIR)/ABOUT-NLS \
+define HOST_GETTEXT_GNU_ADD_ABOUT_NLS
+	$(INSTALL) -m 0644 $(@D)/$(HOST_GETTEXT_GNU_SUBDIR)/ABOUT-NLS \
 		$(HOST_DIR)/share/gettext/ABOUT-NLS
 endef
 
-HOST_GETTEXT_POST_INSTALL_HOOKS += HOST_GETTEXT_ADD_ABOUT_NLS
+HOST_GETTEXT_GNU_POST_INSTALL_HOOKS += HOST_GETTEXT_GNU_ADD_ABOUT_NLS
 
+ifeq ($(BR2_PACKAGE_GETTEXT_GNU),y)
 GETTEXTIZE = $(HOST_CONFIGURE_OPTS) AUTOM4TE=$(HOST_DIR)/bin/autom4te $(HOST_DIR)/bin/gettextize -f
+endif
 
 $(eval $(autotools-package))
 $(eval $(host-autotools-package))
diff --git a/package/gettext/Config.in b/package/gettext/Config.in
index e55663b1d7..ba12d816ee 100644
--- a/package/gettext/Config.in
+++ b/package/gettext/Config.in
@@ -1,25 +1,21 @@
 config BR2_PACKAGE_GETTEXT
 	bool "gettext"
 	depends on BR2_USE_WCHAR
-	help
-	  The GNU `gettext' utilities are a set of tools that provide a
-	  framework to help other GNU packages produce multi-lingual
-	  messages.
+	select BR2_PACKAGE_GETTEXT_GNU
 
-	  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/
-
-if BR2_PACKAGE_GETTEXT
+comment "gettext needs a toolchain w/ wchar"
+	depends on !BR2_USE_WCHAR
 
 config BR2_PACKAGE_GETTEXT_PROVIDES_LIBINTL
 	bool
 	default y if BR2_SYSTEM_ENABLE_NLS
 	depends on !BR2_TOOLCHAIN_HAS_FULL_GETTEXT
 
-endif
+config BR2_PACKAGE_HAS_GETTEXT
+	bool
 
-comment "gettext needs a toolchain w/ wchar"
-	depends on !BR2_USE_WCHAR
+config BR2_PACKAGE_PROVIDES_GETTEXT
+	string
+
+config BR2_PACKAGE_PROVIDES_HOST_GETTEXT
+	string
diff --git a/package/gettext/gettext.mk b/package/gettext/gettext.mk
index ec9588f8ad..a86e26f69e 100644
--- a/package/gettext/gettext.mk
+++ b/package/gettext/gettext.mk
@@ -4,97 +4,5 @@
 #
 ################################################################################
 
-GETTEXT_VERSION = 0.19.8.1
-GETTEXT_SITE = $(BR2_GNU_MIRROR)/gettext
-GETTEXT_SOURCE = gettext-$(GETTEXT_VERSION).tar.xz
-GETTEXT_INSTALL_STAGING = YES
-GETTEXT_LICENSE = LGPL-2.1+ (libintl), GPL-3.0+ (the rest)
-GETTEXT_LICENSE_FILES = COPYING gettext-runtime/intl/COPYING.LIB
-# 0002-Update-after-gnulib-changed.patch
-GETTEXT_AUTORECONF = YES
-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
-
-# Force the build of libintl, even if the C library provides a stub
-# gettext implementation
-ifeq ($(BR2_PACKAGE_GETTEXT_PROVIDES_LIBINTL),y)
-GETTEXT_CONF_OPTS += --with-included-gettext
-else
-GETTEXT_CONF_OPTS += --without-included-gettext
-endif
-
-# 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
-
-# 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)/bin/gettextize
-endef
-HOST_GETTEXT_POST_INSTALL_HOOKS += HOST_GETTEXT_GETTEXTIZE_CONFIRMATION
-
-# autoreconf expects gettextize to install ABOUT-NLS, but it only gets
-# installed by gettext-runtime which we don't build/install for the
-# host, so do it manually
-define HOST_GETTEXT_ADD_ABOUT_NLS
-	$(INSTALL) -m 0644 $(@D)/$(HOST_GETTEXT_SUBDIR)/ABOUT-NLS \
-		$(HOST_DIR)/share/gettext/ABOUT-NLS
-endef
-
-HOST_GETTEXT_POST_INSTALL_HOOKS += HOST_GETTEXT_ADD_ABOUT_NLS
-
-GETTEXTIZE = $(HOST_CONFIGURE_OPTS) AUTOM4TE=$(HOST_DIR)/bin/autom4te $(HOST_DIR)/bin/gettextize -f
-
-$(eval $(autotools-package))
-$(eval $(host-autotools-package))
+$(eval $(virtual-package))
+$(eval $(host-virtual-package))

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [Buildroot] [git commit] package/gettext: turn into virtual package
  2019-03-31 12:04 [Buildroot] [git commit] package/gettext: turn into virtual package Thomas Petazzoni
@ 2019-04-07 21:33 ` Romain Naour
  2019-04-07 23:04   ` Vadim Kochan
  2019-04-07 21:43 ` Romain Naour
  1 sibling, 1 reply; 7+ messages in thread
From: Romain Naour @ 2019-04-07 21:33 UTC (permalink / raw)
  To: buildroot

Hi All,

Le 31/03/2019 ? 14:04, Thomas Petazzoni a ?crit?:
> commit: https://git.buildroot.net/buildroot/commit/?id=ea1e7ee6068265d3f8ade97a387d77c77335b38e
> branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master
> 
> Re-work gettext to be a virtual package which may allow to use
> different gettext's providers, and rename the original one into
> gettext-gnu package.
> 
> Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> ---

[...]

>  
> -config BR2_PACKAGE_GETTEXT_PROVIDES_LIBINTL
> -	bool
> -	default y if BR2_SYSTEM_ENABLE_NLS
> -	depends on !BR2_TOOLCHAIN_HAS_FULL_GETTEXT
> +config BR2_PACKAGE_PROVIDES_GETTEXT
> +	default "gettext-gnu"
>  
>  endif
>  

[...]

> diff --git a/package/gettext/gettext.mk b/package/gettext-gnu/gettext-gnu.mk
> similarity index 57%
> copy from package/gettext/gettext.mk
> copy to package/gettext-gnu/gettext-gnu.mk
> index ec9588f8ad..61adf72738 100644
> --- a/package/gettext/gettext.mk
> +++ b/package/gettext-gnu/gettext-gnu.mk
> @@ -1,23 +1,24 @@
>  ################################################################################
>  #
> -# gettext
> +# gettext-gnu
>  #
>  ################################################################################
>  
> -GETTEXT_VERSION = 0.19.8.1
> -GETTEXT_SITE = $(BR2_GNU_MIRROR)/gettext
> -GETTEXT_SOURCE = gettext-$(GETTEXT_VERSION).tar.xz
> -GETTEXT_INSTALL_STAGING = YES
> -GETTEXT_LICENSE = LGPL-2.1+ (libintl), GPL-3.0+ (the rest)
> -GETTEXT_LICENSE_FILES = COPYING gettext-runtime/intl/COPYING.LIB
> +GETTEXT_GNU_VERSION = 0.19.8.1
> +GETTEXT_GNU_SITE = $(BR2_GNU_MIRROR)/gettext
> +GETTEXT_GNU_SOURCE = gettext-$(GETTEXT_GNU_VERSION).tar.xz
> +GETTEXT_GNU_INSTALL_STAGING = YES
> +GETTEXT_GNU_LICENSE = LGPL-2.1+ (libintl), GPL-3.0+ (the rest)
> +GETTEXT_GNU_LICENSE_FILES = COPYING gettext-runtime/intl/COPYING.LIB
>  # 0002-Update-after-gnulib-changed.patch
> -GETTEXT_AUTORECONF = YES
> -GETTEXT_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv)
> +GETTEXT_GNU_AUTORECONF = YES
> +GETTEXT_GNU_PROVIDES = gettext
> +GETTEXT_GNU_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv)
>  

[...]

>  
>  # Force the build of libintl, even if the C library provides a stub
>  # gettext implementation
> -ifeq ($(BR2_PACKAGE_GETTEXT_PROVIDES_LIBINTL),y)
> -GETTEXT_CONF_OPTS += --with-included-gettext
> +ifeq ($(BR2_PACKAGE_GETTEXT_GNU_PROVIDES_LIBINTL),y)

It seems this patch introduced a typo here, There is no
BR2_PACKAGE_GETTEXT_GNU_PROVIDES_LIBINTL option but
BR2_PACKAGE_GETTEXT_PROVIDES_LIBINTL.

Even with this patch my host-flex build is broken.

Best regards,
Romain

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [git commit] package/gettext: turn into virtual package
  2019-03-31 12:04 [Buildroot] [git commit] package/gettext: turn into virtual package Thomas Petazzoni
  2019-04-07 21:33 ` Romain Naour
@ 2019-04-07 21:43 ` Romain Naour
  2019-04-07 23:01   ` Vadim Kochan
  1 sibling, 1 reply; 7+ messages in thread
From: Romain Naour @ 2019-04-07 21:43 UTC (permalink / raw)
  To: buildroot

Hi, All

Le 31/03/2019 ? 14:04, Thomas Petazzoni a ?crit?:
> commit: https://git.buildroot.net/buildroot/commit/?id=ea1e7ee6068265d3f8ade97a387d77c77335b38e
> branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master
> 
> Re-work gettext to be a virtual package which may allow to use
> different gettext's providers, and rename the original one into
> gettext-gnu package.
> 
> Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> ---

> +ifeq ($(BR2_PACKAGE_GETTEXT_GNU),y)
>  GETTEXTIZE = $(HOST_CONFIGURE_OPTS) AUTOM4TE=$(HOST_DIR)/bin/autom4te $(HOST_DIR)/bin/gettextize -f
> +endif

Why adding a if BR2_PACKAGE_GETTEXT_GNU here ?
We need to define GETTEXTIZE for gettextized packages (like host-flex).

Currently the build is broken with:

>>> host-flex 2.6.4 Gettextizing
cd [...]/build/host-flex-2.6.4/ &&
/bin/sh: -c: ligne 1: erreur de syntaxe : fin de fichier pr?matur?e
make[1]: *** [package/pkg-generic.mk:230:
[...]/build/host-flex-2.6.4/.stamp_configured] Error 1

Best regards,
Romain

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [git commit] package/gettext: turn into virtual package
  2019-04-07 21:43 ` Romain Naour
@ 2019-04-07 23:01   ` Vadim Kochan
  0 siblings, 0 replies; 7+ messages in thread
From: Vadim Kochan @ 2019-04-07 23:01 UTC (permalink / raw)
  To: buildroot

Hi Romain, All

On Mon, Apr 8, 2019 at 12:43 AM Romain Naour <romain.naour@gmail.com> wrote:
>
> Hi, All
>
> Le 31/03/2019 ? 14:04, Thomas Petazzoni a ?crit :
> > commit: https://git.buildroot.net/buildroot/commit/?id=ea1e7ee6068265d3f8ade97a387d77c77335b38e
> > branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master
> >
> > Re-work gettext to be a virtual package which may allow to use
> > different gettext's providers, and rename the original one into
> > gettext-gnu package.
> >
> > Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
> > Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> > ---
>
> > +ifeq ($(BR2_PACKAGE_GETTEXT_GNU),y)
> >  GETTEXTIZE = $(HOST_CONFIGURE_OPTS) AUTOM4TE=$(HOST_DIR)/bin/autom4te $(HOST_DIR)/bin/gettextize -f
> > +endif
>
> Why adding a if BR2_PACKAGE_GETTEXT_GNU here ?
> We need to define GETTEXTIZE for gettextized packages (like host-flex).
>
> Currently the build is broken with:
>
> >>> host-flex 2.6.4 Gettextizing
> cd [...]/build/host-flex-2.6.4/ &&
> /bin/sh: -c: ligne 1: erreur de syntaxe : fin de fichier pr?matur?e
> make[1]: *** [package/pkg-generic.mk:230:
> [...]/build/host-flex-2.6.4/.stamp_configured] Error 1
>

gettextizing is enabled depending on which provider is choosen
gettext-gnu or gettext-tiny, they
both provides GETTEXTIZE variable. The issue is caused on toolchains
which provides
BR2_TOOLCHAIN_HAS_FULL_GETTEXT=y, in that case gettext is not selected
by NLS config
and GETTEXTIZE is not defined. I will try to fix it ASAP.

Thanks for your findings!

Regards,
Vadim Kochan

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [git commit] package/gettext: turn into virtual package
  2019-04-07 21:33 ` Romain Naour
@ 2019-04-07 23:04   ` Vadim Kochan
  2019-04-08  0:33     ` Vadim Kochan
  0 siblings, 1 reply; 7+ messages in thread
From: Vadim Kochan @ 2019-04-07 23:04 UTC (permalink / raw)
  To: buildroot

Hi Romain, All

On Mon, Apr 8, 2019 at 12:33 AM Romain Naour <romain.naour@gmail.com> wrote:
>
> Hi All,
>
> Le 31/03/2019 ? 14:04, Thomas Petazzoni a ?crit :
> > commit: https://git.buildroot.net/buildroot/commit/?id=ea1e7ee6068265d3f8ade97a387d77c77335b38e
> > branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master
> >
> > Re-work gettext to be a virtual package which may allow to use
> > different gettext's providers, and rename the original one into
> > gettext-gnu package.
> >
> > Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
> > Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> > ---
>
> [...]
>
> >
> > -config BR2_PACKAGE_GETTEXT_PROVIDES_LIBINTL
> > -     bool
> > -     default y if BR2_SYSTEM_ENABLE_NLS
> > -     depends on !BR2_TOOLCHAIN_HAS_FULL_GETTEXT
> > +config BR2_PACKAGE_PROVIDES_GETTEXT
> > +     default "gettext-gnu"
> >
> >  endif
> >
>
> [...]
>
> > diff --git a/package/gettext/gettext.mk b/package/gettext-gnu/gettext-gnu.mk
> > similarity index 57%
> > copy from package/gettext/gettext.mk
> > copy to package/gettext-gnu/gettext-gnu.mk
> > index ec9588f8ad..61adf72738 100644
> > --- a/package/gettext/gettext.mk
> > +++ b/package/gettext-gnu/gettext-gnu.mk
> > @@ -1,23 +1,24 @@
> >  ################################################################################
> >  #
> > -# gettext
> > +# gettext-gnu
> >  #
> >  ################################################################################
> >
> > -GETTEXT_VERSION = 0.19.8.1
> > -GETTEXT_SITE = $(BR2_GNU_MIRROR)/gettext
> > -GETTEXT_SOURCE = gettext-$(GETTEXT_VERSION).tar.xz
> > -GETTEXT_INSTALL_STAGING = YES
> > -GETTEXT_LICENSE = LGPL-2.1+ (libintl), GPL-3.0+ (the rest)
> > -GETTEXT_LICENSE_FILES = COPYING gettext-runtime/intl/COPYING.LIB
> > +GETTEXT_GNU_VERSION = 0.19.8.1
> > +GETTEXT_GNU_SITE = $(BR2_GNU_MIRROR)/gettext
> > +GETTEXT_GNU_SOURCE = gettext-$(GETTEXT_GNU_VERSION).tar.xz
> > +GETTEXT_GNU_INSTALL_STAGING = YES
> > +GETTEXT_GNU_LICENSE = LGPL-2.1+ (libintl), GPL-3.0+ (the rest)
> > +GETTEXT_GNU_LICENSE_FILES = COPYING gettext-runtime/intl/COPYING.LIB
> >  # 0002-Update-after-gnulib-changed.patch
> > -GETTEXT_AUTORECONF = YES
> > -GETTEXT_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv)
> > +GETTEXT_GNU_AUTORECONF = YES
> > +GETTEXT_GNU_PROVIDES = gettext
> > +GETTEXT_GNU_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv)
> >
>
> [...]
>
> >
> >  # Force the build of libintl, even if the C library provides a stub
> >  # gettext implementation
> > -ifeq ($(BR2_PACKAGE_GETTEXT_PROVIDES_LIBINTL),y)
> > -GETTEXT_CONF_OPTS += --with-included-gettext
> > +ifeq ($(BR2_PACKAGE_GETTEXT_GNU_PROVIDES_LIBINTL),y)
>
> It seems this patch introduced a typo here, There is no
> BR2_PACKAGE_GETTEXT_GNU_PROVIDES_LIBINTL option but
> BR2_PACKAGE_GETTEXT_PROVIDES_LIBINTL.
>
> Even with this patch my host-flex build is broken.
>

Yeah, this is a really typo  but anyway gettext/Config.in (which is a
virtual package now) uses
the right config option.

Thanks Romain!

Regards,
Vadim Kochan

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [git commit] package/gettext: turn into virtual package
  2019-04-07 23:04   ` Vadim Kochan
@ 2019-04-08  0:33     ` Vadim Kochan
  2019-04-08  7:04       ` Romain Naour
  0 siblings, 1 reply; 7+ messages in thread
From: Vadim Kochan @ 2019-04-08  0:33 UTC (permalink / raw)
  To: buildroot

On Mon, Apr 8, 2019 at 2:04 AM Vadim Kochan <vadim4j@gmail.com> wrote:
>
> Hi Romain, All
>
> On Mon, Apr 8, 2019 at 12:33 AM Romain Naour <romain.naour@gmail.com> wrote:
> >
> > Hi All,
> >
> > Le 31/03/2019 ? 14:04, Thomas Petazzoni a ?crit :
> > > commit: https://git.buildroot.net/buildroot/commit/?id=ea1e7ee6068265d3f8ade97a387d77c77335b38e
> > > branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master

[..]

> >
> > [...]
> >
> > >
> > > -config BR2_PACKAGE_GETTEXT_PROVIDES_LIBINTL
> > > -     bool
> > > -     default y if BR2_SYSTEM_ENABLE_NLS
> > > -     depends on !BR2_TOOLCHAIN_HAS_FULL_GETTEXT
> > > +config BR2_PACKAGE_PROVIDES_GETTEXT
> > > +     default "gettext-gnu"
> > >
> > >  endif
> > >
> >
> > [...]
> >
> > > diff --git a/package/gettext/gettext.mk b/package/gettext-gnu/gettext-gnu.mk
> > > similarity index 57%
> > > copy from package/gettext/gettext.mk
> > > copy to package/gettext-gnu/gettext-gnu.mk
> > > index ec9588f8ad..61adf72738 100644
> > > --- a/package/gettext/gettext.mk
> > > +++ b/package/gettext-gnu/gettext-gnu.mk
> > > @@ -1,23 +1,24 @@
> > >  ################################################################################
> > >  #
> > > -# gettext
> > > +# gettext-gnu
> > >  #
> > >  ################################################################################
> > >
> > > -GETTEXT_VERSION = 0.19.8.1
> > > -GETTEXT_SITE = $(BR2_GNU_MIRROR)/gettext
> > > -GETTEXT_SOURCE = gettext-$(GETTEXT_VERSION).tar.xz
> > > -GETTEXT_INSTALL_STAGING = YES
> > > -GETTEXT_LICENSE = LGPL-2.1+ (libintl), GPL-3.0+ (the rest)
> > > -GETTEXT_LICENSE_FILES = COPYING gettext-runtime/intl/COPYING.LIB
> > > +GETTEXT_GNU_VERSION = 0.19.8.1
> > > +GETTEXT_GNU_SITE = $(BR2_GNU_MIRROR)/gettext
> > > +GETTEXT_GNU_SOURCE = gettext-$(GETTEXT_GNU_VERSION).tar.xz
> > > +GETTEXT_GNU_INSTALL_STAGING = YES
> > > +GETTEXT_GNU_LICENSE = LGPL-2.1+ (libintl), GPL-3.0+ (the rest)
> > > +GETTEXT_GNU_LICENSE_FILES = COPYING gettext-runtime/intl/COPYING.LIB
> > >  # 0002-Update-after-gnulib-changed.patch
> > > -GETTEXT_AUTORECONF = YES
> > > -GETTEXT_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv)
> > > +GETTEXT_GNU_AUTORECONF = YES
> > > +GETTEXT_GNU_PROVIDES = gettext
> > > +GETTEXT_GNU_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv)
> > >
> >
> > [...]
> >
> > >
> > >  # Force the build of libintl, even if the C library provides a stub
> > >  # gettext implementation
> > > -ifeq ($(BR2_PACKAGE_GETTEXT_PROVIDES_LIBINTL),y)
> > > -GETTEXT_CONF_OPTS += --with-included-gettext
> > > +ifeq ($(BR2_PACKAGE_GETTEXT_GNU_PROVIDES_LIBINTL),y)
> >
> > It seems this patch introduced a typo here, There is no
> > BR2_PACKAGE_GETTEXT_GNU_PROVIDES_LIBINTL option but
> > BR2_PACKAGE_GETTEXT_PROVIDES_LIBINTL.
> >
> > Even with this patch my host-flex build is broken.
> >
>
> Yeah, this is a really typo  but anyway gettext/Config.in (which is a
> virtual package now) uses
> the right config option.
>

Sorry, I just realized that issue exists in gettext-gnu.mk not in Config.in,
I sent patch for this.

Sorry about all these issues with gettext-tiny :(

Regards,
Vadim Kochan

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [git commit] package/gettext: turn into virtual package
  2019-04-08  0:33     ` Vadim Kochan
@ 2019-04-08  7:04       ` Romain Naour
  0 siblings, 0 replies; 7+ messages in thread
From: Romain Naour @ 2019-04-08  7:04 UTC (permalink / raw)
  To: buildroot

Hi Vadim,

Le lun. 8 avr. 2019 ? 02:23, Vadim Kochan <vadim4j@gmail.com> a ?crit :

> On Mon, Apr 8, 2019 at 2:04 AM Vadim Kochan <vadim4j@gmail.com> wrote:
> >
> > Hi Romain, All
> >
> > On Mon, Apr 8, 2019 at 12:33 AM Romain Naour <romain.naour@gmail.com>
> wrote:
> > >
> > > Hi All,
> > >
> > > Le 31/03/2019 ? 14:04, Thomas Petazzoni a ?crit :
> > > > commit:
> https://git.buildroot.net/buildroot/commit/?id=ea1e7ee6068265d3f8ade97a387d77c77335b38e
> > > > branch:
> https://git.buildroot.net/buildroot/commit/?id=refs/heads/master
>
> [..]
>
> > >
> > > [...]
> > >
> > > >
> > > > -config BR2_PACKAGE_GETTEXT_PROVIDES_LIBINTL
> > > > -     bool
> > > > -     default y if BR2_SYSTEM_ENABLE_NLS
> > > > -     depends on !BR2_TOOLCHAIN_HAS_FULL_GETTEXT
> > > > +config BR2_PACKAGE_PROVIDES_GETTEXT
> > > > +     default "gettext-gnu"
> > > >
> > > >  endif
> > > >
> > >
> > > [...]
> > >
> > > > diff --git a/package/gettext/gettext.mk b/package/gettext-gnu/
> gettext-gnu.mk
> > > > similarity index 57%
> > > > copy from package/gettext/gettext.mk
> > > > copy to package/gettext-gnu/gettext-gnu.mk
> > > > index ec9588f8ad..61adf72738 100644
> > > > --- a/package/gettext/gettext.mk
> > > > +++ b/package/gettext-gnu/gettext-gnu.mk
> > > > @@ -1,23 +1,24 @@
> > > >
> ################################################################################
> > > >  #
> > > > -# gettext
> > > > +# gettext-gnu
> > > >  #
> > > >
> ################################################################################
> > > >
> > > > -GETTEXT_VERSION = 0.19.8.1
> > > > -GETTEXT_SITE = $(BR2_GNU_MIRROR)/gettext
> > > > -GETTEXT_SOURCE = gettext-$(GETTEXT_VERSION).tar.xz
> > > > -GETTEXT_INSTALL_STAGING = YES
> > > > -GETTEXT_LICENSE = LGPL-2.1+ (libintl), GPL-3.0+ (the rest)
> > > > -GETTEXT_LICENSE_FILES = COPYING gettext-runtime/intl/COPYING.LIB
> > > > +GETTEXT_GNU_VERSION = 0.19.8.1
> > > > +GETTEXT_GNU_SITE = $(BR2_GNU_MIRROR)/gettext
> > > > +GETTEXT_GNU_SOURCE = gettext-$(GETTEXT_GNU_VERSION).tar.xz
> > > > +GETTEXT_GNU_INSTALL_STAGING = YES
> > > > +GETTEXT_GNU_LICENSE = LGPL-2.1+ (libintl), GPL-3.0+ (the rest)
> > > > +GETTEXT_GNU_LICENSE_FILES = COPYING gettext-runtime/intl/COPYING.LIB
> > > >  # 0002-Update-after-gnulib-changed.patch
> > > > -GETTEXT_AUTORECONF = YES
> > > > -GETTEXT_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv)
> > > > +GETTEXT_GNU_AUTORECONF = YES
> > > > +GETTEXT_GNU_PROVIDES = gettext
> > > > +GETTEXT_GNU_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv)
> > > >
> > >
> > > [...]
> > >
> > > >
> > > >  # Force the build of libintl, even if the C library provides a stub
> > > >  # gettext implementation
> > > > -ifeq ($(BR2_PACKAGE_GETTEXT_PROVIDES_LIBINTL),y)
> > > > -GETTEXT_CONF_OPTS += --with-included-gettext
> > > > +ifeq ($(BR2_PACKAGE_GETTEXT_GNU_PROVIDES_LIBINTL),y)
> > >
> > > It seems this patch introduced a typo here, There is no
> > > BR2_PACKAGE_GETTEXT_GNU_PROVIDES_LIBINTL option but
> > > BR2_PACKAGE_GETTEXT_PROVIDES_LIBINTL.
> > >
> > > Even with this patch my host-flex build is broken.
> > >
> >
> > Yeah, this is a really typo  but anyway gettext/Config.in (which is a
> > virtual package now) uses
> > the right config option.
> >
>
> Sorry, I just realized that issue exists in gettext-gnu.mk not in
> Config.in,
> I sent patch for this.
>
> Sorry about all these issues with gettext-tiny :(
>

No problem, you're welcome for providing patches :)

I have not followed the gettext-tiny series...

I'll take a look at your patches asap.

Best regards,
Romain


> Regards,
> Vadim Kochan
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20190408/728865a3/attachment.html>

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2019-04-08  7:04 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-03-31 12:04 [Buildroot] [git commit] package/gettext: turn into virtual package Thomas Petazzoni
2019-04-07 21:33 ` Romain Naour
2019-04-07 23:04   ` Vadim Kochan
2019-04-08  0:33     ` Vadim Kochan
2019-04-08  7:04       ` Romain Naour
2019-04-07 21:43 ` Romain Naour
2019-04-07 23:01   ` Vadim Kochan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox