From 6e59da37a3a08934020bc35ad2fc6ebae83101fb8730f87084c1b3684dc1c41d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Chv=C3=A1tal?= Date: Sat, 4 Nov 2017 21:22:31 +0000 Subject: [PATCH] Accepting request 539026 from home:AndreasSchwab:f - 0001-Fix-symbol-versioning-for-exported-symbols.patch: Remove broken patch - 0001-Savannah-Bug-49907.patch: Fix symbol versioning for real OBS-URL: https://build.opensuse.org/request/show/539026 OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libcdio?expand=0&rev=51 --- ...mbol-versioning-for-exported-symbols.patch | 48 -------- 0001-Savannah-Bug-49907.patch | 103 ++++++++++++++++++ libcdio.changes | 7 ++ libcdio.spec | 4 +- 4 files changed, 112 insertions(+), 50 deletions(-) delete mode 100644 0001-Fix-symbol-versioning-for-exported-symbols.patch create mode 100644 0001-Savannah-Bug-49907.patch diff --git a/0001-Fix-symbol-versioning-for-exported-symbols.patch b/0001-Fix-symbol-versioning-for-exported-symbols.patch deleted file mode 100644 index 492c1d0..0000000 --- a/0001-Fix-symbol-versioning-for-exported-symbols.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 967d2af5df3b0caea09fdfbfc2c97047168cd746 Mon Sep 17 00:00:00 2001 -From: Stefan Bruens -Date: Thu, 5 Oct 2017 05:48:28 +0200 -Subject: [PATCH] Fix symbol versioning for exported symbols -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -libcdio 0.94 moved some sources into a subdirectory and no longer -picked up these files when creating the list of exported symbols. - -Upstream bug: https://savannah.gnu.org/bugs/index.php?49907 - -Signed-off: Stefan BrĂ¼ns ---- - lib/driver/Makefile.am | 2 +- - lib/driver/Makefile.in | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/lib/driver/Makefile.am b/lib/driver/Makefile.am -index f853d0f..d379a30 100644 ---- a/lib/driver/Makefile.am -+++ b/lib/driver/Makefile.am -@@ -178,7 +178,7 @@ libcdio_la_DEPENDENCIES = libcdio.la.ver - - libcdio.la.ver: $(libcdio_la_OBJECTS) $(srcdir)/libcdio.sym - @echo 'CDIO_$(libcdio_la_MAJOR) { ' > $@ -- @objs=`for obj in $(libcdio_la_OBJECTS); do sed -ne "s/^pic_object='\(.*\)'$$/\1/p" $$obj; done`; \ -+ @objs=`for obj in $(libcdio_la_OBJECTS); do echo -n "$(dirname $obj)/"; sed -ne "s/^pic_object='\(.*\)'$$/\1/p" $$obj; done`; \ - if test -n "$${objs}" ; then \ - nm $${objs} | sed -n -e 's/^.*[ ][ABCDGIRSTW][ABCDGIRSTW]*[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$$/\1/p' | sort -u | { first=true; while read symbol; do if grep -q "^$${symbol}\$$" $(srcdir)/libcdio.sym; then if test $$first = true; then echo " global:"; first=false; fi; echo " $${symbol};"; fi; done; } >> $@; \ - nm $${objs} | sed -n -e 's/^.*[ ][ABCDGIRSTW][ABCDGIRSTW]*[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$$/\1/p' | sort -u | { first=true; while read symbol; do if grep -q "^$${symbol}\$$" $(srcdir)/libcdio.sym; then :; else if test $$first = true; then echo " local:"; first=false; fi; echo " $${symbol};"; fi; done; } >> $@; \ -diff --git a/lib/driver/Makefile.in b/lib/driver/Makefile.in -index 2f5af82..ea1406e 100644 ---- a/lib/driver/Makefile.in -+++ b/lib/driver/Makefile.in -@@ -983,7 +983,7 @@ uninstall-am: uninstall-libLTLIBRARIES - - @BUILD_VERSIONED_LIBS_TRUE@libcdio.la.ver: $(libcdio_la_OBJECTS) $(srcdir)/libcdio.sym - @BUILD_VERSIONED_LIBS_TRUE@ @echo 'CDIO_$(libcdio_la_MAJOR) { ' > $@ --@BUILD_VERSIONED_LIBS_TRUE@ @objs=`for obj in $(libcdio_la_OBJECTS); do sed -ne "s/^pic_object='\(.*\)'$$/\1/p" $$obj; done`; \ -+@BUILD_VERSIONED_LIBS_TRUE@ @objs=`for obj in $(libcdio_la_OBJECTS); echo -n "$(dirname $obj)/"; do sed -ne "s/^pic_object='\(.*\)'$$/\1/p" $$obj; done`; \ - @BUILD_VERSIONED_LIBS_TRUE@ if test -n "$${objs}" ; then \ - @BUILD_VERSIONED_LIBS_TRUE@ nm $${objs} | sed -n -e 's/^.*[ ][ABCDGIRSTW][ABCDGIRSTW]*[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$$/\1/p' | sort -u | { first=true; while read symbol; do if grep -q "^$${symbol}\$$" $(srcdir)/libcdio.sym; then if test $$first = true; then echo " global:"; first=false; fi; echo " $${symbol};"; fi; done; } >> $@; \ - @BUILD_VERSIONED_LIBS_TRUE@ nm $${objs} | sed -n -e 's/^.*[ ][ABCDGIRSTW][ABCDGIRSTW]*[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$$/\1/p' | sort -u | { first=true; while read symbol; do if grep -q "^$${symbol}\$$" $(srcdir)/libcdio.sym; then :; else if test $$first = true; then echo " local:"; first=false; fi; echo " $${symbol};"; fi; done; } >> $@; \ --- -2.14.1 - diff --git a/0001-Savannah-Bug-49907.patch b/0001-Savannah-Bug-49907.patch new file mode 100644 index 0000000..d194f46 --- /dev/null +++ b/0001-Savannah-Bug-49907.patch @@ -0,0 +1,103 @@ +From ddd984854b09c1a8203867534c087c0d83ff8622 Mon Sep 17 00:00:00 2001 +From: "R. Bernstein" +Date: Mon, 9 Oct 2017 12:35:54 -0400 +Subject: [PATCH] Savannah Bug #49907 + +subdir-objects breaks symbol versioning. See https://savannah.gnu.org/bugs/?49907 +--- + lib/driver/Makefile.am | 11 +++++------ + lib/iso9660/Makefile.am | 11 +++++------ + 2 files changed, 10 insertions(+), 12 deletions(-) + +Index: libcdio-0.94/lib/driver/Makefile.am +=================================================================== +--- libcdio-0.94.orig/lib/driver/Makefile.am ++++ libcdio-0.94/lib/driver/Makefile.am +@@ -176,13 +176,12 @@ if BUILD_VERSIONED_LIBS + libcdio_la_LDFLAGS = $(libcdio_la_ldflags) -Wl,--version-script=libcdio.la.ver + libcdio_la_DEPENDENCIES = libcdio.la.ver + +-libcdio.la.ver: $(libcdio_la_OBJECTS) $(srcdir)/libcdio.sym ++libcdio.la.ver: $(srcdir)/libcdio.sym + @echo 'CDIO_$(libcdio_la_MAJOR) { ' > $@ +- @objs=`for obj in $(libcdio_la_OBJECTS); do sed -ne "s/^pic_object='\(.*\)'$$/\1/p" $$obj; done`; \ +- if test -n "$${objs}" ; then \ +- nm $${objs} | sed -n -e 's/^.*[ ][ABCDGIRSTW][ABCDGIRSTW]*[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$$/\1/p' | sort -u | { first=true; while read symbol; do if grep -q "^$${symbol}\$$" $(srcdir)/libcdio.sym; then if test $$first = true; then echo " global:"; first=false; fi; echo " $${symbol};"; fi; done; } >> $@; \ +- nm $${objs} | sed -n -e 's/^.*[ ][ABCDGIRSTW][ABCDGIRSTW]*[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$$/\1/p' | sort -u | { first=true; while read symbol; do if grep -q "^$${symbol}\$$" $(srcdir)/libcdio.sym; then :; else if test $$first = true; then echo " local:"; first=false; fi; echo " $${symbol};"; fi; done; } >> $@; \ +- fi ++ @echo ' global:' >> $@ ++ @sed 's/^/ /;s/$$/;/' $< >> $@ ++ @echo ' local:' >> $@ ++ @echo ' *;' >> $@ + @echo '};' >> $@ + else + libcdio_la_LDFLAGS = $(libcdio_la_ldflags) +Index: libcdio-0.94/lib/driver/Makefile.in +=================================================================== +--- libcdio-0.94.orig/lib/driver/Makefile.in ++++ libcdio-0.94/lib/driver/Makefile.in +@@ -981,13 +981,12 @@ uninstall-am: uninstall-libLTLIBRARIES + .PRECIOUS: Makefile + + +-@BUILD_VERSIONED_LIBS_TRUE@libcdio.la.ver: $(libcdio_la_OBJECTS) $(srcdir)/libcdio.sym ++@BUILD_VERSIONED_LIBS_TRUE@libcdio.la.ver: $(srcdir)/libcdio.sym + @BUILD_VERSIONED_LIBS_TRUE@ @echo 'CDIO_$(libcdio_la_MAJOR) { ' > $@ +-@BUILD_VERSIONED_LIBS_TRUE@ @objs=`for obj in $(libcdio_la_OBJECTS); do sed -ne "s/^pic_object='\(.*\)'$$/\1/p" $$obj; done`; \ +-@BUILD_VERSIONED_LIBS_TRUE@ if test -n "$${objs}" ; then \ +-@BUILD_VERSIONED_LIBS_TRUE@ nm $${objs} | sed -n -e 's/^.*[ ][ABCDGIRSTW][ABCDGIRSTW]*[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$$/\1/p' | sort -u | { first=true; while read symbol; do if grep -q "^$${symbol}\$$" $(srcdir)/libcdio.sym; then if test $$first = true; then echo " global:"; first=false; fi; echo " $${symbol};"; fi; done; } >> $@; \ +-@BUILD_VERSIONED_LIBS_TRUE@ nm $${objs} | sed -n -e 's/^.*[ ][ABCDGIRSTW][ABCDGIRSTW]*[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$$/\1/p' | sort -u | { first=true; while read symbol; do if grep -q "^$${symbol}\$$" $(srcdir)/libcdio.sym; then :; else if test $$first = true; then echo " local:"; first=false; fi; echo " $${symbol};"; fi; done; } >> $@; \ +-@BUILD_VERSIONED_LIBS_TRUE@ fi ++@BUILD_VERSIONED_LIBS_TRUE@ @echo ' global:' >> $@ ++@BUILD_VERSIONED_LIBS_TRUE@ @sed 's/^/ /;s/$$/;/' $< >> $@ ++@BUILD_VERSIONED_LIBS_TRUE@ @echo ' local:' >> $@ ++@BUILD_VERSIONED_LIBS_TRUE@ @echo ' *;' >> $@ + @BUILD_VERSIONED_LIBS_TRUE@ @echo '};' >> $@ + + # Tell versions [3.59,3.63) of GNU make to not export all variables. +Index: libcdio-0.94/lib/iso9660/Makefile.am +=================================================================== +--- libcdio-0.94.orig/lib/iso9660/Makefile.am ++++ libcdio-0.94/lib/iso9660/Makefile.am +@@ -132,13 +132,12 @@ if BUILD_VERSIONED_LIBS + libiso9660_la_LDFLAGS = $(libiso9660_la_ldflags) -Wl,--version-script=libiso9660.la.ver + libiso9660_la_DEPENDENCIES = $(libcdio9660_la_dependencies) libiso9660.la.ver + +-libiso9660.la.ver: $(libiso9660_la_OBJECTS) $(srcdir)/libiso9660.sym ++libiso9660.la.ver: $(srcdir)/libiso9660.sym + @echo 'ISO9660_$(libiso9660_la_MAJOR) {' > $@ +- @objs=`for obj in $(libiso9660_la_OBJECTS); do sed -ne "s/^pic_object='\(.*\)'$$/\1/p" $$obj; done`; \ +- if test -n "$$objs" ; then \ +- nm $${objs} | sed -n -e 's/^.*[ ][ABCDGIRSTW][ABCDGIRSTW]*[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$$/\1/p' | sort -u | { first=true; while read symbol; do if grep -q "^$${symbol}\$$" $(srcdir)/libiso9660.sym; then if test $$first = true; then echo " global:"; first=false; fi; echo " $${symbol};"; fi; done; } >> $@; \ +- nm $${objs} | sed -n -e 's/^.*[ ][ABCDGIRSTW][ABCDGIRSTW]*[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$$/\1/p' | sort -u | { first=true; while read symbol; do if grep -q "^$${symbol}\$$" $(srcdir)/libiso9660.sym; then :; else if test $$first = true; then echo " local:"; first=false; fi; echo " $${symbol};"; fi; done; } >> $@; \ +- fi ++ @echo ' global:' >> $@ ++ @sed 's/^/ /;s/$$/;/' $< >> $@ ++ @echo ' local:' >> $@ ++ @echo ' *;' >> $@ + @echo '};' >> $@ + + MOSTLYCLEANFILES = libiso9660.la.ver +Index: libcdio-0.94/lib/iso9660/Makefile.in +=================================================================== +--- libcdio-0.94.orig/lib/iso9660/Makefile.in ++++ libcdio-0.94/lib/iso9660/Makefile.in +@@ -824,13 +824,12 @@ uninstall-am: uninstall-libLTLIBRARIES + .PRECIOUS: Makefile + + +-@BUILD_VERSIONED_LIBS_TRUE@libiso9660.la.ver: $(libiso9660_la_OBJECTS) $(srcdir)/libiso9660.sym ++@BUILD_VERSIONED_LIBS_TRUE@libiso9660.la.ver: $(srcdir)/libiso9660.sym + @BUILD_VERSIONED_LIBS_TRUE@ @echo 'ISO9660_$(libiso9660_la_MAJOR) {' > $@ +-@BUILD_VERSIONED_LIBS_TRUE@ @objs=`for obj in $(libiso9660_la_OBJECTS); do sed -ne "s/^pic_object='\(.*\)'$$/\1/p" $$obj; done`; \ +-@BUILD_VERSIONED_LIBS_TRUE@ if test -n "$$objs" ; then \ +-@BUILD_VERSIONED_LIBS_TRUE@ nm $${objs} | sed -n -e 's/^.*[ ][ABCDGIRSTW][ABCDGIRSTW]*[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$$/\1/p' | sort -u | { first=true; while read symbol; do if grep -q "^$${symbol}\$$" $(srcdir)/libiso9660.sym; then if test $$first = true; then echo " global:"; first=false; fi; echo " $${symbol};"; fi; done; } >> $@; \ +-@BUILD_VERSIONED_LIBS_TRUE@ nm $${objs} | sed -n -e 's/^.*[ ][ABCDGIRSTW][ABCDGIRSTW]*[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$$/\1/p' | sort -u | { first=true; while read symbol; do if grep -q "^$${symbol}\$$" $(srcdir)/libiso9660.sym; then :; else if test $$first = true; then echo " local:"; first=false; fi; echo " $${symbol};"; fi; done; } >> $@; \ +-@BUILD_VERSIONED_LIBS_TRUE@ fi ++@BUILD_VERSIONED_LIBS_TRUE@ @echo ' global:' >> $@ ++@BUILD_VERSIONED_LIBS_TRUE@ @sed 's/^/ /;s/$$/;/' $< >> $@ ++@BUILD_VERSIONED_LIBS_TRUE@ @echo ' local:' >> $@ ++@BUILD_VERSIONED_LIBS_TRUE@ @echo ' *;' >> $@ + @BUILD_VERSIONED_LIBS_TRUE@ @echo '};' >> $@ + + # Tell versions [3.59,3.63) of GNU make to not export all variables. diff --git a/libcdio.changes b/libcdio.changes index 78e9545..3fe0207 100644 --- a/libcdio.changes +++ b/libcdio.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Sat Nov 4 20:38:28 UTC 2017 - schwab@linux-m68k.org + +- 0001-Fix-symbol-versioning-for-exported-symbols.patch: Remove broken + patch +- 0001-Savannah-Bug-49907.patch: Fix symbol versioning for real + ------------------------------------------------------------------- Thu Oct 5 03:52:34 UTC 2017 - stefan.bruens@rwth-aachen.de diff --git a/libcdio.spec b/libcdio.spec index 54a5d58..250c4c6 100644 --- a/libcdio.spec +++ b/libcdio.spec @@ -29,8 +29,8 @@ Source0: https://ftp.gnu.org/gnu/libcdio/%{name}-%{version}.tar.gz Source1: https://ftp.gnu.org/gnu/libcdio/%{name}-%{version}.tar.gz.sig Source2: %{name}.keyring Source3: baselibs.conf -# PATCH-FIX-OPENSUSE 0001-Fix-symbol-versioning-for-exported-symbols.patch https://savannah.gnu.org/bugs/index.php?49907 -Patch0: 0001-Fix-symbol-versioning-for-exported-symbols.patch +# PATCH-FIX-UPSTREAM 0001-Savannah-Bug-49907.patch https://savannah.gnu.org/bugs/index.php?49907 +Patch0: 0001-Savannah-Bug-49907.patch BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: help2man