summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Seifert <soap@gentoo.org>2020-08-08 18:53:27 +0200
committerDavid Seifert <soap@gentoo.org>2020-08-08 18:53:27 +0200
commitce04ab9734ce79dc4d360450a91ed6c6a15b4ba1 (patch)
tree26b4d0a0aceeeff25aa89d0cfe1730353f76099e /media-sound/cdstatus
parentmedia-sound/wavegain: Fix building under -fno-common (diff)
downloadgentoo-ce04ab9734ce79dc4d360450a91ed6c6a15b4ba1.tar.gz
gentoo-ce04ab9734ce79dc4d360450a91ed6c6a15b4ba1.tar.bz2
gentoo-ce04ab9734ce79dc4d360450a91ed6c6a15b4ba1.zip
media-sound/cdstatus: Fix building under -fno-common
Closes: https://bugs.gentoo.org/706718 Package-Manager: Portage-3.0.1, Repoman-2.3.23 Signed-off-by: David Seifert <soap@gentoo.org>
Diffstat (limited to 'media-sound/cdstatus')
-rw-r--r--media-sound/cdstatus/cdstatus-0.97.03.ebuild8
-rw-r--r--media-sound/cdstatus/files/cdstatus-0.97.03-fno-common.patch73
-rw-r--r--media-sound/cdstatus/files/cdstatus-0.97.03-respect-user-CFLAGS.patch11
3 files changed, 90 insertions, 2 deletions
diff --git a/media-sound/cdstatus/cdstatus-0.97.03.ebuild b/media-sound/cdstatus/cdstatus-0.97.03.ebuild
index e4ae820f71f7..5d7d361d54a8 100644
--- a/media-sound/cdstatus/cdstatus-0.97.03.ebuild
+++ b/media-sound/cdstatus/cdstatus-0.97.03.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -10,7 +10,11 @@ SRC_URI="mirror://sourceforge/cdstatus/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~ppc ppc64 x86"
-IUSE=""
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.97.03-respect-user-CFLAGS.patch
+ "${FILESDIR}"/${PN}-0.97.03-fno-common.patch
+)
pkg_postinst() {
elog "Copy cdstatus.cfg from /usr/share/cdstatus.cfg"
diff --git a/media-sound/cdstatus/files/cdstatus-0.97.03-fno-common.patch b/media-sound/cdstatus/files/cdstatus-0.97.03-fno-common.patch
new file mode 100644
index 000000000000..588a0e333848
--- /dev/null
+++ b/media-sound/cdstatus/files/cdstatus-0.97.03-fno-common.patch
@@ -0,0 +1,73 @@
+--- a/src/cdstatus_cddb.c
++++ b/src/cdstatus_cddb.c
+@@ -31,6 +31,12 @@
+ #define DIE_CLEAN if(buffer) { free(buffer); } if(scratchbuffer) { free(scratchbuffer); } exit(EXIT_FAILURE);
+ #endif
+
++char album_name[256];
++int album_year;
++char artist_name[256];
++char album_genre[128];
++track_listing trackinfo[100];
++unsigned int cddb_tracks;
+
+ /** The system-provided error return code for system calls */
+ extern int errno;
+--- a/src/cdstatus_cddb.h
++++ b/src/cdstatus_cddb.h
+@@ -24,21 +24,21 @@
+
+ /* Exported Globals (I hate globals, need to find another way to do this... */
+ /** Holds album name for cd */
+-char album_name[256];
++extern char album_name[256];
+
+ /** Holds album year for cd */
+-int album_year;
++extern int album_year;
+
+ /** Holds artist name for cd */
+-char artist_name[256];
++extern char artist_name[256];
+
+ /** Holds album genre for cd */
+-char album_genre[128];
++extern char album_genre[128];
+
+ /** Holds cddb info for each track */
+-track_listing trackinfo[100];
++extern track_listing trackinfo[100];
+
+ /** Number of tracks for which we have info */
+-unsigned int cddb_tracks;
++extern unsigned int cddb_tracks;
+
+ #endif
+--- a/src/cdstatus_output.c
++++ b/src/cdstatus_output.c
+@@ -4,6 +4,10 @@
+
+ #include "cdstatus_output.h"
+
++enum OUTPUT_PRIORITY current_priority;
++
++char output_buffer[OUTPUT_BUFFSIZE];
++
+ void conditional_puts(enum OUTPUT_PRIORITY pri, const char * message)
+ {
+ if(pri >= current_priority)
+--- a/src/cdstatus_output.h
++++ b/src/cdstatus_output.h
+@@ -3,10 +3,10 @@
+ #define CDSTATUS_OUTPUT_H
+
+ enum OUTPUT_PRIORITY { VERBOSE_DEBUG, DEBUG, NORMAL, WARNING, CRITICAL };
+-enum OUTPUT_PRIORITY current_priority;
++extern enum OUTPUT_PRIORITY current_priority;
+
+ #define OUTPUT_BUFFSIZE 512
+-char output_buffer[OUTPUT_BUFFSIZE];
++extern char output_buffer[OUTPUT_BUFFSIZE];
+
+ void conditional_puts(enum OUTPUT_PRIORITY, const char *);
+ void conditional_perror(enum OUTPUT_PRIORITY, const char *);
diff --git a/media-sound/cdstatus/files/cdstatus-0.97.03-respect-user-CFLAGS.patch b/media-sound/cdstatus/files/cdstatus-0.97.03-respect-user-CFLAGS.patch
new file mode 100644
index 000000000000..d8fdb62d479f
--- /dev/null
+++ b/media-sound/cdstatus/files/cdstatus-0.97.03-respect-user-CFLAGS.patch
@@ -0,0 +1,11 @@
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -154,7 +154,7 @@
+ top_build_prefix = @top_build_prefix@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
+-AM_CFLAGS = -O2 -funroll-loops -finline-functions
++AM_CFLAGS =
+ cdstatus_SOURCES = \
+ args.h \
+ basic_info.c \