[packages/sharutils] fix build with gcc 10 (from fedora)

atler atler at pld-linux.org
Sat Feb 20 16:08:15 CET 2021


commit a7be5dc7c74cd21d5b89513a742872c7652e86a8
Author: Jan Palus <atler at pld-linux.org>
Date:   Sat Feb 20 16:06:24 2021 +0100

    fix build with gcc 10 (from fedora)

 sharutils-4.15.2-Fix-building-with-GCC-10.patch | 97 +++++++++++++++++++++++++
 sharutils.spec                                  |  2 +
 2 files changed, 99 insertions(+)
---
diff --git a/sharutils.spec b/sharutils.spec
index 3e9e273..f8036d6 100644
--- a/sharutils.spec
+++ b/sharutils.spec
@@ -20,6 +20,7 @@ Patch0:		%{name}-info.patch
 Patch1:		%{name}-pl.po-update.patch
 Patch2:		%{name}-format.patch
 Patch3:		glibc-2.28.patch
+Patch4:		%{name}-4.15.2-Fix-building-with-GCC-10.patch
 URL:		http://www.gnu.org/software/sharutils/
 BuildRequires:	gettext-tools >= 0.19.3
 BuildRequires:	tar >= 1:1.22
@@ -95,6 +96,7 @@ programlar üzerinden güvenli bir şekilde gönderilebilir.
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
+%patch4 -p1
 
 %{__rm} po/stamp-po
 
diff --git a/sharutils-4.15.2-Fix-building-with-GCC-10.patch b/sharutils-4.15.2-Fix-building-with-GCC-10.patch
new file mode 100644
index 0000000..c423fe1
--- /dev/null
+++ b/sharutils-4.15.2-Fix-building-with-GCC-10.patch
@@ -0,0 +1,97 @@
+From ec4ceb632abc0d54061269bc779459e13172f264 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar at redhat.com>
+Date: Thu, 23 Jan 2020 15:42:41 +0100
+Subject: [PATCH 1/2] Fix building with GCC 10
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+GCC 10 defaults to -fno-common that results into errors on multiple
+global variable definitions:
+
+/usr/lib64/gcc/x86_64-suse-linux/9/../../../../x86_64-suse-linux/bin/ld:
+shar-opts.o:(.data.rel.ro.local+0x0): multiple definition of
+`program_name'; shar.o:(.rodata+0x10): first defined here
+
+This patch fixes it by changing the definitions in header files into extern
+declarations.
+
+<https://lists.gnu.org/archive/html/bug-gnu-utils/2020-01/msg00001.html>
+
+Signed-off-by: Petr Písař <ppisar at redhat.com>
+---
+ src/shar-opts.h     | 2 +-
+ src/shar-std.def    | 2 +-
+ src/unshar-opts.h   | 2 +-
+ src/uudecode-opts.h | 2 +-
+ src/uuencode-opts.h | 2 +-
+ 5 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/src/shar-opts.h b/src/shar-opts.h
+index 75dcae2..5055d1c 100644
+--- a/src/shar-opts.h
++++ b/src/shar-opts.h
+@@ -352,7 +352,7 @@ extern "C" {
+  *  global exported definitions
+  */
+ #include "local.h"
+-char const * const program_name;
++extern char const * const program_name;
+ 
+ extern bool initialization_done;
+ extern int optidx;
+diff --git a/src/shar-std.def b/src/shar-std.def
+index ed06b77..a28f61c 100644
+--- a/src/shar-std.def
++++ b/src/shar-std.def
+@@ -41,7 +41,7 @@ no-misuse-usage;
+ usage-message;
+ die-code;
+ 
+-export  = '#include "local.h"'"\nchar const * const program_name;";
++export  = '#include "local.h"'"\nextern char const * const program_name;";
+ 
+ #shell
+ echo "include = 'char const * const program_name = \"${progname}\";';"
+diff --git a/src/unshar-opts.h b/src/unshar-opts.h
+index 2c3febe..9ebe2fc 100644
+--- a/src/unshar-opts.h
++++ b/src/unshar-opts.h
+@@ -192,7 +192,7 @@ extern "C" {
+ extern size_t       separator_str_len;
+ 
+ #include "local.h"
+-char const * const program_name;
++extern char const * const program_name;
+ 
+ 
+ /* * * * * *
+diff --git a/src/uudecode-opts.h b/src/uudecode-opts.h
+index 29b3b5c..5494289 100644
+--- a/src/uudecode-opts.h
++++ b/src/uudecode-opts.h
+@@ -170,7 +170,7 @@ extern "C" {
+  *  global exported definitions
+  */
+ #include "local.h"
+-char const * const program_name;
++extern char const * const program_name;
+ 
+ 
+ /* * * * * *
+diff --git a/src/uuencode-opts.h b/src/uuencode-opts.h
+index e71c9b8..d6ec03e 100644
+--- a/src/uuencode-opts.h
++++ b/src/uuencode-opts.h
+@@ -166,7 +166,7 @@ extern "C" {
+  *  global exported definitions
+  */
+ #include "local.h"
+-char const * const program_name;
++extern char const * const program_name;
+ 
+ 
+ /* * * * * *
+-- 
+2.21.1
+
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/sharutils.git/commitdiff/1c1d1d8778516bb7fd3be3085d74dc3af1d3c992



More information about the pld-cvs-commit mailing list