diff options
author | Bernd Waibel <waebbl@gmail.com> | 2020-03-20 22:35:36 +0100 |
---|---|---|
committer | Andreas Sturmlechner <asturm@gentoo.org> | 2020-03-21 19:55:23 +0100 |
commit | a263403b279157c6b8e2e5b84904f66372bac05c (patch) | |
tree | 888dcdfc7c7ea8545b68421b45f11837346cf78f /media-sound/denemo | |
parent | toolchain.eclass: drop USE=sanitize support for <gcc-5 (diff) | |
download | gentoo-a263403b279157c6b8e2e5b84904f66372bac05c.tar.gz gentoo-a263403b279157c6b8e2e5b84904f66372bac05c.tar.bz2 gentoo-a263403b279157c6b8e2e5b84904f66372bac05c.zip |
media-sound/denemo: fix build for gcc-10
- add patches to work with gcc-10 -fno-common flag
- install appdata/metainfo into new recommended location
- remove support for gtk2
- make gtk3 non-optional
- remove static USE flag
Closes: https://bugs.gentoo.org/712926
Package-Manager: Portage-2.3.94, Repoman-2.3.21
Signed-off-by: Bernd Waibel <waebbl@gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/15029
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'media-sound/denemo')
-rw-r--r-- | media-sound/denemo/denemo-2.3.0-r1.ebuild | 118 | ||||
-rw-r--r-- | media-sound/denemo/files/denemo-2.3.0-0002-Fix-issues-with-gcc10-fno-common-flag.patch | 62 |
2 files changed, 180 insertions, 0 deletions
diff --git a/media-sound/denemo/denemo-2.3.0-r1.ebuild b/media-sound/denemo/denemo-2.3.0-r1.ebuild new file mode 100644 index 000000000000..4924eed28572 --- /dev/null +++ b/media-sound/denemo/denemo-2.3.0-r1.ebuild @@ -0,0 +1,118 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools xdg + +DESCRIPTION="A music notation editor" +HOMEPAGE="http://www.denemo.org/" +SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" + +LICENSE="GPL-3+ OFL-1.1" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +# configure options currently not used: +# --enable-mem(no) memory debugging: needs Electric fence (efence), which +# is not available in portage. See https://github.com/boundarydevices/efence +# --enable-gtk-doc-pdf(no) doesn't work +IUSE="alsa +aubio debug jack +fluidsynth gtk-doc nls +portaudio +portmidi + +rubberband test" + +RESTRICT="!test? ( test )" + +RDEPEND=" + >=app-text/evince-3.22.1-r1:= + dev-libs/libxml2:2 + >=dev-scheme/guile-2:12= + gnome-base/librsvg:2 + media-libs/fontconfig:1.0 + >=media-libs/libsmf-1.3 + >=media-libs/libsndfile-1.0.28-r1 + >=media-sound/lilypond-2.19.54[guile2(+)] + x11-libs/gtk+:3 + x11-libs/gtksourceview:3.0= + alsa? ( >=media-libs/alsa-lib-1.1.2 ) + aubio? ( >=media-libs/aubio-0.4.1-r1:= ) + fluidsynth? ( >=media-sound/fluidsynth-1.1.6-r1:= ) + jack? ( virtual/jack ) + portaudio? ( + >=media-libs/portaudio-19_pre20140130 + sci-libs/fftw:3.0= + ) + portmidi? ( >=media-libs/portmidi-217-r1 ) + rubberband? ( >=media-libs/rubberband-1.8.1-r1 ) +" + +DEPEND="${RDEPEND}" + +BDEPEND=" + >=dev-util/gtk-doc-am-1.25-r1 + >=dev-util/intltool-0.51.0-r1 + >=sys-devel/flex-2.6.1 + virtual/pkgconfig + virtual/yacc + gtk-doc? ( >=dev-util/gtk-doc-1.25-r1 ) + nls? ( >=sys-devel/gettext-0.19.8.1 ) +" + +DOCS=( AUTHORS ChangeLog docs/{DESIGN{,.lilypond},GOALS,TODO} NEWS ) + +PATCHES=( + "${FILESDIR}/${P}-0001-configure.ac-patch-to-find-guile-2.2.patch" + "${FILESDIR}/${P}-0002-Fix-issues-with-gcc10-fno-common-flag.patch" +) + +src_prepare() { + sed -e '/^Categories=/s/GNOME\;/GNOME\;GTK\;/' -i pixmaps/denemo.desktop || die + sed -e 's|appdatadir = \$(datarootdir)/appdata|appdatadir = \$(datarootdir)/metainfo|' \ + -i Makefile.am || die + default + eautoreconf +} + +src_configure() { + myeconfargs=( + --disable-gtk-doc-pdf + --disable-gtk2 + --disable-installed-tests + --disable-mem + --disable-rpath + --disable-static + --enable-evince + --enable-gtk3 + --enable-x11 + $(use_enable alsa) + $(use_enable aubio) + # --enable-doc does nothing for itself + # basic html documentation is always being installed in the + # /usr/share/denemo/manual directory + $(use_enable gtk-doc doc) + $(use_enable gtk-doc gtk-doc) + $(use_enable gtk-doc gtk-doc-html) + $(use_enable fluidsynth) + $(use_enable jack) + $(use_enable nls) + $(use_enable portaudio) + $(use_enable portmidi) + $(use_enable rubberband) + ) + econf "${myeconfargs[@]}" +} + +src_test() { + # make check fails if used with parallel builds + emake -j1 check +} + +src_install() { + default + + # link html documentation installed in /usr/share/denemo/manual + dodir /usr/share/doc/${PF}/html + local f + for f in denemo-manual.html denemo.css images; do + dosym ../../../denemo/manual/"${f}" /usr/share/doc/${PF}/html/"${f}" + done +} diff --git a/media-sound/denemo/files/denemo-2.3.0-0002-Fix-issues-with-gcc10-fno-common-flag.patch b/media-sound/denemo/files/denemo-2.3.0-0002-Fix-issues-with-gcc10-fno-common-flag.patch new file mode 100644 index 000000000000..425662e042c9 --- /dev/null +++ b/media-sound/denemo/files/denemo-2.3.0-0002-Fix-issues-with-gcc10-fno-common-flag.patch @@ -0,0 +1,62 @@ +From 54075086a5b7acceef6dff41e19148778e285475 Mon Sep 17 00:00:00 2001 +From: Bernd Waibel <waebbl@gmail.com> +Date: Fri, 20 Mar 2020 21:03:02 +0100 +Subject: [PATCH] Fix issues with gcc10 -fno-common flag + +Signed-off-by: Bernd Waibel <waebbl@gmail.com> +--- + include/denemo/denemo_types.h | 7 ++++--- + src/export/print.h | 6 +++--- + 2 files changed, 7 insertions(+), 6 deletions(-) + +diff --git a/include/denemo/denemo_types.h b/include/denemo/denemo_types.h +index 1d67827..936892b 100644 +--- a/include/denemo/denemo_types.h ++++ b/include/denemo/denemo_types.h +@@ -430,7 +430,7 @@ typedef enum{ + } SCRIPT_TYPE; + + //index of columns in the keymap command list store FIXME if you add columns you must add them in allocate_keymap !!!! +-enum ++typedef enum + { + COL_TYPE = 0, + COL_NAME, +@@ -1167,7 +1167,7 @@ struct cs_callback + * The (singleton) root object for the program + * + */ +-struct DenemoRoot ++typedef struct DenemoRoot + { + gboolean non_interactive; /* if TRUE denemo should not display project, receive or send sounds etc*/ + gchar *scheme_file;/* filename for scheme code to run on startup */ +@@ -1258,6 +1258,7 @@ struct DenemoRoot + gboolean *silent; /** Don't log any message */ + gboolean *verbose; /** Display every messages */ + guint pending_layout_id;//Non zero when the current layout being created will be renamed to have this id +-} Denemo; /**< The root object. */ ++}; ++extern struct DenemoRoot Denemo; /**< The root object. */ + + #endif +diff --git a/src/export/print.h b/src/export/print.h +index db0c8f1..64a3a8d 100644 +--- a/src/export/print.h ++++ b/src/export/print.h +@@ -108,9 +108,9 @@ typedef struct WysiwygInfo + GtkWidget *dialog; //an info dialog to tell the user what to do next... + } WysiwygInfo; + +-gint LilyPond_stderr; //A file descriptor to pipe for LilyPond's stderr +-GError *lily_err; +-GPid previewerpid; ++extern gint LilyPond_stderr; //A file descriptor to pipe for LilyPond's stderr ++extern GError *lily_err; ++extern GPid previewerpid; + + WysiwygInfo* get_wysiwyg_info(); + void initialize_print_status (void); +-- +2.25.1 + |