libgpg-error: Fix compilation with GAWK 5.0 lede-17.01
authorRosen Penev <rosenp@gmail.com>
Tue, 2 Jul 2019 17:17:58 +0000 (10:17 -0700)
committerRafał Miłecki <rafal@milecki.pl>
Fri, 8 May 2020 09:05:32 +0000 (11:05 +0200)
Patch from Upstream.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
(cherry picked from commit 9afde0d39ae364c327063d36b188465058056a86)
[rmilecki: autoreconf + po fix]
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
libs/libgpg-error/Makefile
libs/libgpg-error/patches/020-gawk5-support.patch [new file with mode: 0644]
libs/libgpg-error/patches/025-Don-t-build-po.patch [new file with mode: 0644]

index 27e5e0954ec07e6da4753ca190a8f0ac6d772ca8..51817141b6d27509ea7c8550c5498424f9dc59d3 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=libgpg-error
 PKG_VERSION:=1.12
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=ftp://ftp.gnupg.org/gcrypt/libgpg-error
@@ -18,6 +18,8 @@ PKG_MD5SUM:=8f0eb41a344d19ac2aa9bd101dfb9ce6
 PKG_BUILD_PARALLEL:=1
 PKG_INSTALL:=1
 
+PKG_FIXUP:=autoreconf
+
 include $(INCLUDE_DIR)/package.mk
 
 define Package/libgpg-error
diff --git a/libs/libgpg-error/patches/020-gawk5-support.patch b/libs/libgpg-error/patches/020-gawk5-support.patch
new file mode 100644 (file)
index 0000000..17e8816
--- /dev/null
@@ -0,0 +1,158 @@
+From 7865041c77f4f7005282f10f9b6666b19072fbdf Mon Sep 17 00:00:00 2001
+From: NIIBE Yutaka <gniibe@fsij.org>
+Date: Mon, 15 Apr 2019 15:10:44 +0900
+Subject: [PATCH] awk: Prepare for Gawk 5.0.
+
+* src/Makefile.am: Use pkg_namespace (instead of namespace).
+* src/mkerrnos.awk: Likewise.
+* lang/cl/mkerrcodes.awk: Don't escape # in regexp.
+* src/mkerrcodes.awk, src/mkerrcodes1.awk, src/mkerrcodes2.awk: Ditto.
+
+--
+
+In Gawk 5.0, regexp routines are replaced by Gnulib implementation,
+which only allows escaping specific characters.
+
+GnuPG-bug-id: 4459
+Reported-by: Marius Schamschula
+Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
+---
+ lang/cl/mkerrcodes.awk |  2 +-
+ src/Makefile.am        |  2 +-
+ src/mkerrcodes.awk     |  2 +-
+ src/mkerrcodes1.awk    |  2 +-
+ src/mkerrcodes2.awk    |  2 +-
+ src/mkerrnos.awk       |  2 +-
+ src/mkstrtable.awk     | 10 +++++-----
+ 7 files changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/lang/cl/mkerrcodes.awk b/lang/cl/mkerrcodes.awk
+index ae29043..9a1fc18 100644
+--- a/lang/cl/mkerrcodes.awk
++++ b/lang/cl/mkerrcodes.awk
+@@ -122,7 +122,7 @@ header {
+ }
+ !header {
+-  sub (/\#.+/, "");
++  sub (/#.+/, "");
+   sub (/[     ]+$/, ""); # Strip trailing space and tab characters.
+   if (/^$/)
+diff --git a/src/Makefile.am b/src/Makefile.am
+index ce1b882..f2590cb 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -293,7 +293,7 @@ code-from-errno.h: mkerrcodes$(EXEEXT_FOR_BUILD) Makefile
+ errnos-sym.h: Makefile mkstrtable.awk errnos.in
+       $(AWK) -f $(srcdir)/mkstrtable.awk -v textidx=2 -v nogettext=1 \
+-              -v prefix=GPG_ERR_ -v namespace=errnos_ \
++              -v prefix=GPG_ERR_ -v pkg_namespace=errnos_ \
+               $(srcdir)/errnos.in >$@
+diff --git a/src/mkerrcodes.awk b/src/mkerrcodes.awk
+index 46d436c..e9c857c 100644
+--- a/src/mkerrcodes.awk
++++ b/src/mkerrcodes.awk
+@@ -85,7 +85,7 @@ header {
+ }
+ !header {
+-  sub (/\#.+/, "");
++  sub (/#.+/, "");
+   sub (/[     ]+$/, ""); # Strip trailing space and tab characters.
+   if (/^$/)
+diff --git a/src/mkerrcodes1.awk b/src/mkerrcodes1.awk
+index a771a73..4578e29 100644
+--- a/src/mkerrcodes1.awk
++++ b/src/mkerrcodes1.awk
+@@ -81,7 +81,7 @@ header {
+ }
+ !header {
+-  sub (/\#.+/, "");
++  sub (/#.+/, "");
+   sub (/[     ]+$/, ""); # Strip trailing space and tab characters.
+   if (/^$/)
+diff --git a/src/mkerrcodes2.awk b/src/mkerrcodes2.awk
+index ea58503..188f7a4 100644
+--- a/src/mkerrcodes2.awk
++++ b/src/mkerrcodes2.awk
+@@ -91,7 +91,7 @@ header {
+ }
+ !header {
+-  sub (/\#.+/, "");
++  sub (/#.+/, "");
+   sub (/[     ]+$/, ""); # Strip trailing space and tab characters.
+   if (/^$/)
+diff --git a/src/mkerrnos.awk b/src/mkerrnos.awk
+index f79df66..15b1aad 100644
+--- a/src/mkerrnos.awk
++++ b/src/mkerrnos.awk
+@@ -83,7 +83,7 @@ header {
+ }
+ !header {
+-  sub (/\#.+/, "");
++  sub (/#.+/, "");
+   sub (/[     ]+$/, ""); # Strip trailing space and tab characters.
+   if (/^$/)
+diff --git a/src/mkstrtable.awk b/src/mkstrtable.awk
+index c9de9c1..285e45f 100644
+--- a/src/mkstrtable.awk
++++ b/src/mkstrtable.awk
+@@ -77,7 +77,7 @@
+ #
+ # The variable prefix can be used to prepend a string to each message.
+ #
+-# The variable namespace can be used to prepend a string to each
++# The variable pkg_namespace can be used to prepend a string to each
+ # variable and macro name.
+ BEGIN {
+@@ -102,7 +102,7 @@ header {
+       print "/* The purpose of this complex string table is to produce";
+       print "   optimal code with a minimum of relocations.  */";
+       print "";
+-      print "static const char " namespace "msgstr[] = ";
++      print "static const char " pkg_namespace "msgstr[] = ";
+       header = 0;
+     }
+   else
+@@ -110,7 +110,7 @@ header {
+ }
+ !header {
+-  sub (/\#.+/, "");
++  sub (/#.+/, "");
+   sub (/[     ]+$/, ""); # Strip trailing space and tab characters.
+   if (/^$/)
+@@ -150,7 +150,7 @@ END {
+   else
+     print "  gettext_noop (\"" last_msgstr "\");";
+   print "";
+-  print "static const int " namespace "msgidx[] =";
++  print "static const int " pkg_namespace "msgidx[] =";
+   print "  {";
+   for (i = 0; i < coded_msgs; i++)
+     print "    " pos[i] ",";
+@@ -158,7 +158,7 @@ END {
+   print "  };";
+   print "";
+   print "static GPG_ERR_INLINE int";
+-  print namespace "msgidxof (int code)";
++  print pkg_namespace "msgidxof (int code)";
+   print "{";
+   print "  return (0 ? 0";
+-- 
+2.21.0
+
diff --git a/libs/libgpg-error/patches/025-Don-t-build-po.patch b/libs/libgpg-error/patches/025-Don-t-build-po.patch
new file mode 100644 (file)
index 0000000..73c5029
--- /dev/null
@@ -0,0 +1,29 @@
+From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
+Date: Wed, 6 May 2020 22:51:26 +0200
+Subject: [PATCH] Don't build po
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This is needed to fix:
+*** error: gettext infrastructure mismatch: using a Makefile.in.in from gettext version 0.17 but the autoconf macros are from gettext version 0.18
+
+Using PKG_FIXUP:=autoreconf doesn't regenrate Makefile.in.in so it
+results in GETTEXT_MACRO_VERSION mismatch. The same problem affected
+minidlna: 90d3ef2f7633 ("minidlna: exclude "po" directory to fix
+CONFIG_BUILD_NLS=y builds").
+
+Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
+---
+
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -33,7 +33,7 @@ else
+ lang_subdirs =
+ endif
+-SUBDIRS = m4 src tests po $(lang_subdirs)
++SUBDIRS = m4 src tests $(lang_subdirs)
+ dist-hook: gen-ChangeLog