summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2018-01-01 11:37:11 +0100
committerAndreas Sturmlechner <asturm@gentoo.org>2018-01-01 12:12:14 +0100
commit63720d87d47cb9c54dee9e64d7bd754c23b1c080 (patch)
tree080ea3e0ded3eb71331715e9999ea2387a765c7d /media-sound/hydrogen
parentapp-portage/eix: Switch to tmpfiles.eclass (from systemd.eclass) (diff)
downloadgentoo-63720d87d47cb9c54dee9e64d7bd754c23b1c080.tar.gz
gentoo-63720d87d47cb9c54dee9e64d7bd754c23b1c080.tar.bz2
gentoo-63720d87d47cb9c54dee9e64d7bd754c23b1c080.zip
media-sound/hydrogen: Add Qt5-based live version
Thanks-to: Samuel Bauer <BM-2cTVBXjxdVtEQCycBQjMxszLsgTNVujvM5@bitmessage.ch> Bug: https://bugs.gentoo.org/570814 Package-Manager: Portage-2.3.19, Repoman-2.3.6
Diffstat (limited to 'media-sound/hydrogen')
-rw-r--r--media-sound/hydrogen/files/hydrogen-gnuinstalldirs.patch112
-rw-r--r--media-sound/hydrogen/hydrogen-9999.ebuild81
-rw-r--r--media-sound/hydrogen/metadata.xml21
3 files changed, 204 insertions, 10 deletions
diff --git a/media-sound/hydrogen/files/hydrogen-gnuinstalldirs.patch b/media-sound/hydrogen/files/hydrogen-gnuinstalldirs.patch
new file mode 100644
index 000000000000..d42b3971d45b
--- /dev/null
+++ b/media-sound/hydrogen/files/hydrogen-gnuinstalldirs.patch
@@ -0,0 +1,112 @@
+From 11c72da8b2bf96f650ca6e1e38af0819c4f49c45 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
+Date: Mon, 1 Jan 2018 11:52:18 +0100
+Subject: [PATCH] Use GNUInstallDirs
+
+Fixes multiarch and deprecated man dir location.
+---
+ CMakeLists.txt | 14 ++++++++------
+ src/cli/CMakeLists.txt | 2 +-
+ src/core/CMakeLists.txt | 6 +++---
+ src/gui/CMakeLists.txt | 2 +-
+ src/player/CMakeLists.txt | 2 +-
+ 5 files changed, 14 insertions(+), 12 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 96dbf47a..2caab298 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -30,6 +30,8 @@ ELSE()
+ SET(DISPLAY_VERSION "${VERSION}-${GIT_REVISION}")
+ ENDIF(VERSION_SUFFIX)
+
++include(GNUInstallDirs)
++
+ SET(LIBSNDFILE_VERSION_PREV "1.0.17")
+
+ #
+@@ -146,13 +148,13 @@ ELSE(MINGW)
+ #Without setting this, installation would go into /usr/local, which does not exist per default
+ SET(CMAKE_INSTALL_PREFIX "/usr" )
+ ELSE(APPLE)
+- SET(OSS_LIB_PATHS "/usr/lib${LIB_SUFFIX}/oss/lib" "/usr/local/lib${LIB_SUFFIX}/oss/lib" )
++ SET(OSS_LIB_PATHS "${CMAKE_INSTALL_LIBDIR}/oss/lib" "/usr/local/lib${LIB_SUFFIX}/oss/lib" )
+ ENDIF(APPLE)
+ ENDIF(MINGW)
+
+ #Installation paths
+ # TODO remove data from path
+-SET(SYS_DATA_PATH "${CMAKE_INSTALL_PREFIX}/share/hydrogen/data")
++SET(SYS_DATA_PATH "${CMAKE_INSTALL_DATAROOTDIR}/hydrogen/data")
+ # TODO remove data from path, could be .config/hydrogen
+ SET(USR_DATA_PATH ".hydrogen/data")
+
+@@ -358,10 +360,10 @@ ELSE()
+ INSTALL(DIRECTORY data DESTINATION ${SYS_DATA_PATH}/.. PATTERN ".git" EXCLUDE)
+ ENDIF()
+ IF(NOT MINGW AND NOT APPLE)
+- INSTALL(FILES ${CMAKE_SOURCE_DIR}/linux/hydrogen.appdata.xml DESTINATION "${CMAKE_INSTALL_PREFIX}/share/appdata")
+- INSTALL(FILES ${CMAKE_SOURCE_DIR}/linux/hydrogen.desktop DESTINATION "${CMAKE_INSTALL_PREFIX}/share/applications")
+- INSTALL(FILES ${CMAKE_SOURCE_DIR}/data/img/gray/h2-icon.svg DESTINATION "/usr/share/pixmaps")
+- INSTALL(FILES ${CMAKE_SOURCE_DIR}/linux/hydrogen.1 DESTINATION "${CMAKE_INSTALL_PREFIX}/man/man1")
++ INSTALL(FILES ${CMAKE_SOURCE_DIR}/linux/hydrogen.appdata.xml DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/appdata")
++ INSTALL(FILES ${CMAKE_SOURCE_DIR}/linux/hydrogen.desktop DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications")
++ INSTALL(FILES ${CMAKE_SOURCE_DIR}/data/img/gray/h2-icon.svg DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/pixmaps")
++ INSTALL(FILES ${CMAKE_SOURCE_DIR}/linux/hydrogen.1 DESTINATION "${CMAKE_INSTALL_MANDIR}/man1")
+ ENDIF()
+
+ #
+diff --git a/src/cli/CMakeLists.txt b/src/cli/CMakeLists.txt
+index f6cd04eb..7725dc83 100644
+--- a/src/cli/CMakeLists.txt
++++ b/src/cli/CMakeLists.txt
+@@ -20,4 +20,4 @@ TARGET_LINK_LIBRARIES(h2cli
+
+ ADD_DEPENDENCIES(h2cli hydrogen-core-${VERSION})
+
+-INSTALL(TARGETS h2cli RUNTIME DESTINATION bin BUNDLE DESTINATION bin )
++INSTALL(TARGETS h2cli RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} BUNDLE DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
+index db1333da..0ab61d96 100644
+--- a/src/core/CMakeLists.txt
++++ b/src/core/CMakeLists.txt
+@@ -57,13 +57,13 @@ TARGET_LINK_LIBRARIES(hydrogen-core-${VERSION}
+ #SET_TARGET_PROPERTIES(hydrogen-core-${VERSION} PROPERTIES PUBLIC_HEADER "${hydrogen_INCLUDES}" )
+
+ INSTALL(TARGETS hydrogen-core-${VERSION}
+- LIBRARY DESTINATION "lib${LIB_SUFFIX}"
+- ARCHIVE DESTINATION "lib${LIB_SUFFIX}"
++ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
++ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+ # do not copy directory hierarchy
+ #PUBLIC_HEADER DESTINATION include/hydrogen
+ )
+
+ IF(NOT APPLE AND NOT WIN32)
+ INSTALL(DIRECTORY include DESTINATION "${CMAKE_INSTALL_PREFIX}" FILES_MATCHING PATTERN "*.h" PATTERN ".svn" EXCLUDE)
+- INSTALL(FILES "${CMAKE_CURRENT_BINARY_DIR}/include/hydrogen/config.h" DESTINATION "${CMAKE_INSTALL_PREFIX}/include/hydrogen" )
++ INSTALL(FILES "${CMAKE_CURRENT_BINARY_DIR}/include/hydrogen/config.h" DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/hydrogen" )
+ ENDIF()
+diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt
+index fb375e48..9cd18e6a 100644
+--- a/src/gui/CMakeLists.txt
++++ b/src/gui/CMakeLists.txt
+@@ -57,4 +57,4 @@ TARGET_LINK_LIBRARIES(hydrogen
+ qt5_use_modules(hydrogen Widgets)
+ ADD_DEPENDENCIES(hydrogen hydrogen-core-${VERSION})
+
+-INSTALL(TARGETS hydrogen RUNTIME DESTINATION bin BUNDLE DESTINATION bin )
++INSTALL(TARGETS hydrogen RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} BUNDLE DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/src/player/CMakeLists.txt b/src/player/CMakeLists.txt
+index 72c270f3..836fc5b4 100644
+--- a/src/player/CMakeLists.txt
++++ b/src/player/CMakeLists.txt
+@@ -16,4 +16,4 @@ TARGET_LINK_LIBRARIES(h2player
+
+ ADD_DEPENDENCIES(h2player hydrogen-core-${VERSION})
+
+-INSTALL(TARGETS h2player RUNTIME DESTINATION bin BUNDLE DESTINATION bin )
++INSTALL(TARGETS h2player RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} BUNDLE DESTINATION ${CMAKE_INSTALL_BINDIR})
+--
+2.15.1
+
diff --git a/media-sound/hydrogen/hydrogen-9999.ebuild b/media-sound/hydrogen/hydrogen-9999.ebuild
new file mode 100644
index 000000000000..3d14fb4a6533
--- /dev/null
+++ b/media-sound/hydrogen/hydrogen-9999.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils git-r3 xdg-utils
+
+DESCRIPTION="Advanced drum machine"
+HOMEPAGE="http://www.hydrogen-music.org/"
+EGIT_REPO_URI="https://github.com/${PN}-music/${PN}"
+
+LICENSE="GPL-2 ZLIB"
+SLOT="0"
+KEYWORDS=""
+IUSE="alsa +archive jack ladspa lash osc oss portaudio portmidi pulseaudio"
+
+REQUIRED_USE="lash? ( alsa )"
+
+RDEPEND="
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ dev-qt/qtxmlpatterns:5
+ >=media-libs/libsndfile-1.0.18
+ alsa? ( media-libs/alsa-lib )
+ archive? ( app-arch/libarchive )
+ !archive? ( >=dev-libs/libtar-1.2.11-r3 )
+ jack? ( virtual/jack )
+ ladspa? ( media-libs/liblrdf )
+ lash? ( media-sound/lash )
+ osc? ( media-libs/liblo )
+ portaudio? ( media-libs/portaudio )
+ portmidi? ( media-libs/portmidi )
+ pulseaudio? ( media-sound/pulseaudio )
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+"
+
+DOCS=( AUTHORS ChangeLog DEVELOPERS README.txt )
+
+PATCHES=( "${FILESDIR}/${PN}-gnuinstalldirs.patch" )
+
+src_configure() {
+ local mycmakeargs=(
+ -DWANT_ALSA=$(usex alsa)
+ -DWANT_CPPUNIT=OFF
+ -DWANT_DEBUG=OFF
+ -DWANT_JACK=$(usex jack)
+ -DWANT_JACKSESSION=$(usex jack)
+ -DWANT_LADSPA=$(usex ladspa)
+ -DWANT_LASH=$(usex lash)
+ -DWANT_LIBARCHIVE=$(usex archive)
+ -DWANT_LRDF=$(usex ladspa)
+ -DWANT_OSC=$(usex osc)
+ -DWANT_OSS=$(usex oss)
+ -DWANT_PORTAUDIO=$(usex portaudio)
+ -DWANT_PORTMIDI=$(usex portmidi)
+ -DWANT_PULSEAUDIO=$(usex pulseaudio)
+ -DWANT_RUBBERBAND=OFF
+ )
+
+ cmake-utils_src_configure
+}
+
+src_install() {
+ cmake-utils_src_install
+ dosym ../../${PN}/data/doc /usr/share/doc/${PF}/html
+}
+
+pkg_postinst() {
+ xdg_mimeinfo_database_update
+ xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ xdg_mimeinfo_database_update
+ xdg_desktop_database_update
+}
diff --git a/media-sound/hydrogen/metadata.xml b/media-sound/hydrogen/metadata.xml
index 3881dc28c758..972362fefd42 100644
--- a/media-sound/hydrogen/metadata.xml
+++ b/media-sound/hydrogen/metadata.xml
@@ -1,14 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>proaudio@gentoo.org</email>
- <name>Gentoo ProAudio Project</name>
- </maintainer>
- <use>
- <flag name="archive">Use libarchive instead of libtar</flag>
- </use>
- <upstream>
- <remote-id type="sourceforge">hydrogen</remote-id>
- </upstream>
+ <maintainer type="project">
+ <email>proaudio@gentoo.org</email>
+ <name>Gentoo ProAudio Project</name>
+ </maintainer>
+ <use>
+ <flag name="archive">Use libarchive instead of libtar</flag>
+ <flag name="portmidi">Add portmidi support</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">hydrogen-music/hydrogen</remote-id>
+ </upstream>
</pkgmetadata>