summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernd Waibel <waebbl@gmail.com>2018-09-19 00:37:58 +0200
committerMichał Górny <mgorny@gentoo.org>2018-10-11 22:49:17 +0200
commitaeb045d44b3343ffcd5105982256983e6f14cc5a (patch)
tree0d9b2f1e38ea538b0420d33a9bffce2db801c91c /media-sound/denemo
parentdev-util/meson: drop test-llvm patch in the live ebuild (diff)
downloadgentoo-aeb045d44b3343ffcd5105982256983e6f14cc5a.tar.gz
gentoo-aeb045d44b3343ffcd5105982256983e6f14cc5a.tar.bz2
gentoo-aeb045d44b3343ffcd5105982256983e6f14cc5a.zip
media-sound/denemo: re-add package
* remove optional usage of guile-1, package now only supports guile-2 * fix problem with portaudio if use flag is not set see https://bugs.gentoo.org/515888#c23 and https://savannah.gnu.org/bugs/?52741 with https://savannah.gnu.org/bugs/?53804 * add REQUIRED_USE dependency for evince on gtk+:3 Suggested-by: Nikita Zlobin <nick87720z@gmail.com> Closes: https://bugs.gentoo.org/667164 Package-Manager: Portage-2.3.49, Repoman-2.3.10 Signed-off-by: Bernd Waibel <waebbl@gmail.com> Signed-off-by: Michał Górny <mgorny@gentoo.org> Closes: https://github.com/gentoo/gentoo/pull/9908
Diffstat (limited to 'media-sound/denemo')
-rw-r--r--media-sound/denemo/Manifest1
-rw-r--r--media-sound/denemo/denemo-2.2.0.ebuild127
-rw-r--r--media-sound/denemo/files/denemo-2.2.0-find-guile-2.2.patch60
-rw-r--r--media-sound/denemo/files/denemo-2.2.0-no-portaudio-fix.patch29
-rw-r--r--media-sound/denemo/metadata.xml53
5 files changed, 270 insertions, 0 deletions
diff --git a/media-sound/denemo/Manifest b/media-sound/denemo/Manifest
new file mode 100644
index 000000000000..ea8a1e532966
--- /dev/null
+++ b/media-sound/denemo/Manifest
@@ -0,0 +1 @@
+DIST denemo-2.2.0.tar.gz 17032009 BLAKE2B 66732fcdaa5d5119ca2a45e5a8c6829e05092a4f0e18e3c8a991bddaaf863ea05889654af47150650d2c67397afa957de0fc3ce0ada86a22be00ae91d4add993 SHA512 74bef7b888abd86db42cee7ecb404e1b9211f9965207366c99980137194acd2afa6ec8b1c18da8a12fe4c6951d8a1bb873b313f5749ea629bb7eaeedf12368ef
diff --git a/media-sound/denemo/denemo-2.2.0.ebuild b/media-sound/denemo/denemo-2.2.0.ebuild
new file mode 100644
index 000000000000..be5092be45e3
--- /dev/null
+++ b/media-sound/denemo/denemo-2.2.0.ebuild
@@ -0,0 +1,127 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit autotools xdg-utils
+
+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 +evince doc jack +fluidsynth +gtk3 nls +portaudio
+ +portmidi +rubberband static test"
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ 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]
+ alsa? ( >=media-libs/alsa-lib-1.1.2 )
+ aubio? ( >=media-libs/aubio-0.4.1-r1 )
+ evince? ( >=app-text/evince-3.22.1-r1:= )
+ fluidsynth? ( >=media-sound/fluidsynth-1.1.6-r1 )
+ gtk3? (
+ x11-libs/gtk+:3
+ x11-libs/gtksourceview:3.0=
+ )
+ !gtk3? (
+ x11-libs/gtk+:2
+ x11-libs/gtksourceview:2.0
+ )
+ 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}
+ >=dev-util/intltool-0.51.0-r1
+ >=sys-devel/flex-2.6.1
+ virtual/pkgconfig
+ virtual/yacc
+ doc? ( >=dev-util/gtk-doc-1.25-r1 )
+ nls? ( >=sys-devel/gettext-0.19.8.1 )"
+
+REQUIRED_USE="
+ evince? ( gtk3 )
+"
+
+DOCS=( AUTHORS ChangeLog docs/{DESIGN{,.lilypond},GOALS,TODO} NEWS )
+
+PATCHES=(
+ "${FILESDIR}/${P}-no-portaudio-fix.patch"
+ "${FILESDIR}/${P}-find-guile-2.2.patch"
+)
+
+src_prepare() {
+ sed -i -e '/^Categories=/s/GNOME\;/GNOME\;GTK\;/' pixmaps/denemo.desktop || die
+ default
+ eautoreconf
+}
+
+src_configure() {
+ myeconfargs=(
+ --disable-gtk-doc-pdf
+ --disable-installed-tests
+ --disable-mem
+ --disable-rpath
+ --enable-x11
+ $(use_enable alsa)
+ $(use_enable aubio)
+ # --enable-doc does nothing for itself
+ $(use_enable doc)
+ $(use_enable doc gtk-doc)
+ $(use_enable doc gtk-doc-html)
+ $(use_enable evince)
+ $(use_enable fluidsynth)
+ $(use_enable jack)
+ $(use_enable nls)
+ $(use_enable portaudio)
+ $(use_enable portmidi)
+ $(use_enable rubberband)
+ $(use_enable static)
+ $(usex gtk3 --enable-gtk3 --enable-gtk2)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_test() {
+ # make check fails if used with parallel builds
+ emake -j1 check
+}
+
+src_install() {
+ DESTDIR="${D}" emake install
+ einstalldocs
+
+ # link html documentation installed in /usr/share/denemo
+ 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
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+}
diff --git a/media-sound/denemo/files/denemo-2.2.0-find-guile-2.2.patch b/media-sound/denemo/files/denemo-2.2.0-find-guile-2.2.patch
new file mode 100644
index 000000000000..d69edb0173d5
--- /dev/null
+++ b/media-sound/denemo/files/denemo-2.2.0-find-guile-2.2.patch
@@ -0,0 +1,60 @@
+diff --git a/configure.ac b/configure.ac
+index 4bb3afa..9c146ad 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -30,7 +30,10 @@ AC_PROG_CXX
+ AC_PROG_INSTALL
+ AC_PROG_YACC
+ AM_PROG_LEX
++GUILE_PKG
+ GUILE_FLAGS
++CFLAGS="$CFLAGS $GUILE_CFLAGS"
++LIBS="$LIBS $GUILE_LIBS"
+
+ AC_PROG_LIBTOOL
+
+@@ -40,44 +43,6 @@ AS_COMPILER_FLAG([-fdiagnostics-color=auto],
+
+ AM_CONDITIONAL(ENABLE_GLIB_TEST, [test "x$enable_glibtest" = "xyes"])
+
+-AC_ARG_ENABLE(
+- guile_1_8,
+- AS_HELP_STRING([--enable-guile_1_8], [use GUILE_1_8 @<:@default=no@:>@]),
+- [
+- if test "x$enableval" != "xno"; then
+- useguile_1_8=yes
+- PKG_CHECK_MODULES(GUILE_1_8, guile-1.8 >= 1.8)
+- LIBS="$LIBS $GUILE_1_8_LIBS"
+- CFLAGS="$CFLAGS $GUILE_1_8_CFLAGS"
+- fi
+- ], [ useguile_1_8=no ])
+-
+-AC_ARG_ENABLE(
+- guile_2_0,
+- AS_HELP_STRING([--enable-guile_2_0], [use GUILE_2_0 @<:@default=no@:>@]),
+- [
+- if test "x$enableval" != "xno"; then
+- useguile_2_0=yes
+- PKG_CHECK_MODULES([GUILE_2], [guile-2.0])
+- LIBS="$LIBS $GUILE_2_LIBS"
+- CFLAGS="$CFLAGS $GUILE_2_CFLAGS"
+- fi
+- ], [ useguile_2_0=no ])
+-
+-if [test "x$useguile_1_8" = "xno"] && [test "x$useguile_2_0" = "xno"]; then
+- PKG_CHECK_MODULES([GUILE_2], [guile-2.0], useguile_2_0=yes, useguile_2_0=no)
+- LIBS="$LIBS $GUILE_2_LIBS"
+- CFLAGS="$CFLAGS $GUILE_2_CFLAGS"
+- if test "x$useguile_2_0" = "xno"; then
+- PKG_CHECK_MODULES(GUILE_1_8, guile-1.8 >= 1.8)
+- LIBS="$LIBS $GUILE_1_8_LIBS"
+- CFLAGS="$CFLAGS $GUILE_1_8_CFLAGS"
+- useguile_1_8=yes
+- else
+- useguile_2_0=yes
+- fi
+-fi
+-
+ PKG_CHECK_MODULES(GLIB, [glib-2.0 >= 2.30])
+ CFLAGS="$CFLAGS $GLIB_CFLAGS"
+ LIBS="$LIBS $GLIB_LIBS"
diff --git a/media-sound/denemo/files/denemo-2.2.0-no-portaudio-fix.patch b/media-sound/denemo/files/denemo-2.2.0-no-portaudio-fix.patch
new file mode 100644
index 000000000000..a4aa60909de2
--- /dev/null
+++ b/media-sound/denemo/files/denemo-2.2.0-no-portaudio-fix.patch
@@ -0,0 +1,29 @@
+From 2e3c3b974e3e27873841c0ad9a05537a682e85f5 Mon Sep 17 00:00:00 2001
+From: Richard Shann <richard@rshann.plus.com>
+Date: Sat, 30 Dec 2017 15:32:35 +0000
+Subject: [PATCH 1/2] Fix bug #52741: Can't build with --disable-portaudio
+
+---
+src/audio/midi.c | 7 +++++++
+1 file changed, 7 insertions(+)
+
+diff --git a/src/audio/midi.c b/src/audio/midi.c
+index 55683cfe3..71c5df2cd 100644
+--- a/src/audio/midi.c
++++ b/src/audio/midi.c
+@@ -29,6 +29,13 @@
+
+ #define SHAVING (0.01) //seconds to shave off a note start time to ensure stopping before noteon is sent, and starting with noteon first note may depend of speed of machine??? FIXME
+
++#ifndef _HAVE_PORTAUDIO_
++gdouble get_playback_speed (void)
++{
++ return 1.0;
++}
++void set_playback_speed (double speed) {}
++#endif
+
+ static volatile gboolean playing = FALSE;
+
+--
+2.11.0
diff --git a/media-sound/denemo/metadata.xml b/media-sound/denemo/metadata.xml
new file mode 100644
index 000000000000..ef9a91fa02d7
--- /dev/null
+++ b/media-sound/denemo/metadata.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>waebbl@gmail.com</email>
+ <name>Bernd Waibel</name>
+</maintainer>
+<maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+</maintainer>
+<longdescription>
+ Denemo is a music notation editor which uses
+ <pkg>media-sound/lilypond</pkg> to typeset music notation with LaTeX.
+</longdescription>
+<use>
+ <flag name="alsa">
+ Enable alsa support through <pkg>media-libs/alsa-lib</pkg>
+ </flag>
+ <flag name="aubio">
+ Enable <pkg>media-libs/aubio</pkg> support
+ </flag>
+ <flag name="doc">
+ Use <pkg>dev-util/gtk-doc</pkg> to build documentation in html format
+ </flag>
+ <flag name="evince">
+ Use <pkg>app-text/evince</pkg> document viewer
+ </flag>
+ <flag name="fluidsynth">
+ Enable Fluidsynth MIDI software synthesis using
+ <pkg>media-sound/fluidsynth</pkg>
+ </flag>
+ <flag name="gtk3">
+ Enable support for the GTK+. If enabled uses slot 3 of
+ <pkg>x11-libs/gtk+</pkg>, if disabled it uses slot 2
+ </flag>
+ <flag name="jack">
+ Enable jack support through <pkg>virtual/jack</pkg>
+ </flag>
+ <flag name="portaudio">
+ Enable support for <pkg>media-libs/portaudio</pkg>
+ </flag>
+ <flag name="portmidi">
+ Enable support for the <pkg>media-libs/portmidi</pkg> backend
+ </flag>
+ <flag name="rubberband">
+ Enable support for <pkg>media-libs/rubberband</pkg>
+ </flag>
+</use>
+<upstream>
+ <bugs-to>https://savannah.gnu.org/bugs/?group=denemo&amp;func=additem</bugs-to>
+</upstream>
+</pkgmetadata>