Gentoo Archives: gentoo-commits

From: Andreas Sturmlechner <asturm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-sound/hydrogen/, media-sound/hydrogen/files/
Date: Mon, 01 Jan 2018 11:12:30
Message-Id: 1514805134.63720d87d47cb9c54dee9e64d7bd754c23b1c080.asturm@gentoo
1 commit: 63720d87d47cb9c54dee9e64d7bd754c23b1c080
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Mon Jan 1 10:37:11 2018 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Mon Jan 1 11:12:14 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=63720d87
7
8 media-sound/hydrogen: Add Qt5-based live version
9
10 Thanks-to: Samuel Bauer <BM-2cTVBXjxdVtEQCycBQjMxszLsgTNVujvM5 <AT> bitmessage.ch>
11 Bug: https://bugs.gentoo.org/570814
12 Package-Manager: Portage-2.3.19, Repoman-2.3.6
13
14 .../hydrogen/files/hydrogen-gnuinstalldirs.patch | 112 +++++++++++++++++++++
15 media-sound/hydrogen/hydrogen-9999.ebuild | 81 +++++++++++++++
16 media-sound/hydrogen/metadata.xml | 21 ++--
17 3 files changed, 204 insertions(+), 10 deletions(-)
18
19 diff --git a/media-sound/hydrogen/files/hydrogen-gnuinstalldirs.patch b/media-sound/hydrogen/files/hydrogen-gnuinstalldirs.patch
20 new file mode 100644
21 index 00000000000..d42b3971d45
22 --- /dev/null
23 +++ b/media-sound/hydrogen/files/hydrogen-gnuinstalldirs.patch
24 @@ -0,0 +1,112 @@
25 +From 11c72da8b2bf96f650ca6e1e38af0819c4f49c45 Mon Sep 17 00:00:00 2001
26 +From: Andreas Sturmlechner <andreas.sturmlechner@×××××.com>
27 +Date: Mon, 1 Jan 2018 11:52:18 +0100
28 +Subject: [PATCH] Use GNUInstallDirs
29 +
30 +Fixes multiarch and deprecated man dir location.
31 +---
32 + CMakeLists.txt | 14 ++++++++------
33 + src/cli/CMakeLists.txt | 2 +-
34 + src/core/CMakeLists.txt | 6 +++---
35 + src/gui/CMakeLists.txt | 2 +-
36 + src/player/CMakeLists.txt | 2 +-
37 + 5 files changed, 14 insertions(+), 12 deletions(-)
38 +
39 +diff --git a/CMakeLists.txt b/CMakeLists.txt
40 +index 96dbf47a..2caab298 100644
41 +--- a/CMakeLists.txt
42 ++++ b/CMakeLists.txt
43 +@@ -30,6 +30,8 @@ ELSE()
44 + SET(DISPLAY_VERSION "${VERSION}-${GIT_REVISION}")
45 + ENDIF(VERSION_SUFFIX)
46 +
47 ++include(GNUInstallDirs)
48 ++
49 + SET(LIBSNDFILE_VERSION_PREV "1.0.17")
50 +
51 + #
52 +@@ -146,13 +148,13 @@ ELSE(MINGW)
53 + #Without setting this, installation would go into /usr/local, which does not exist per default
54 + SET(CMAKE_INSTALL_PREFIX "/usr" )
55 + ELSE(APPLE)
56 +- SET(OSS_LIB_PATHS "/usr/lib${LIB_SUFFIX}/oss/lib" "/usr/local/lib${LIB_SUFFIX}/oss/lib" )
57 ++ SET(OSS_LIB_PATHS "${CMAKE_INSTALL_LIBDIR}/oss/lib" "/usr/local/lib${LIB_SUFFIX}/oss/lib" )
58 + ENDIF(APPLE)
59 + ENDIF(MINGW)
60 +
61 + #Installation paths
62 + # TODO remove data from path
63 +-SET(SYS_DATA_PATH "${CMAKE_INSTALL_PREFIX}/share/hydrogen/data")
64 ++SET(SYS_DATA_PATH "${CMAKE_INSTALL_DATAROOTDIR}/hydrogen/data")
65 + # TODO remove data from path, could be .config/hydrogen
66 + SET(USR_DATA_PATH ".hydrogen/data")
67 +
68 +@@ -358,10 +360,10 @@ ELSE()
69 + INSTALL(DIRECTORY data DESTINATION ${SYS_DATA_PATH}/.. PATTERN ".git" EXCLUDE)
70 + ENDIF()
71 + IF(NOT MINGW AND NOT APPLE)
72 +- INSTALL(FILES ${CMAKE_SOURCE_DIR}/linux/hydrogen.appdata.xml DESTINATION "${CMAKE_INSTALL_PREFIX}/share/appdata")
73 +- INSTALL(FILES ${CMAKE_SOURCE_DIR}/linux/hydrogen.desktop DESTINATION "${CMAKE_INSTALL_PREFIX}/share/applications")
74 +- INSTALL(FILES ${CMAKE_SOURCE_DIR}/data/img/gray/h2-icon.svg DESTINATION "/usr/share/pixmaps")
75 +- INSTALL(FILES ${CMAKE_SOURCE_DIR}/linux/hydrogen.1 DESTINATION "${CMAKE_INSTALL_PREFIX}/man/man1")
76 ++ INSTALL(FILES ${CMAKE_SOURCE_DIR}/linux/hydrogen.appdata.xml DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/appdata")
77 ++ INSTALL(FILES ${CMAKE_SOURCE_DIR}/linux/hydrogen.desktop DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications")
78 ++ INSTALL(FILES ${CMAKE_SOURCE_DIR}/data/img/gray/h2-icon.svg DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/pixmaps")
79 ++ INSTALL(FILES ${CMAKE_SOURCE_DIR}/linux/hydrogen.1 DESTINATION "${CMAKE_INSTALL_MANDIR}/man1")
80 + ENDIF()
81 +
82 + #
83 +diff --git a/src/cli/CMakeLists.txt b/src/cli/CMakeLists.txt
84 +index f6cd04eb..7725dc83 100644
85 +--- a/src/cli/CMakeLists.txt
86 ++++ b/src/cli/CMakeLists.txt
87 +@@ -20,4 +20,4 @@ TARGET_LINK_LIBRARIES(h2cli
88 +
89 + ADD_DEPENDENCIES(h2cli hydrogen-core-${VERSION})
90 +
91 +-INSTALL(TARGETS h2cli RUNTIME DESTINATION bin BUNDLE DESTINATION bin )
92 ++INSTALL(TARGETS h2cli RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} BUNDLE DESTINATION ${CMAKE_INSTALL_BINDIR})
93 +diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
94 +index db1333da..0ab61d96 100644
95 +--- a/src/core/CMakeLists.txt
96 ++++ b/src/core/CMakeLists.txt
97 +@@ -57,13 +57,13 @@ TARGET_LINK_LIBRARIES(hydrogen-core-${VERSION}
98 + #SET_TARGET_PROPERTIES(hydrogen-core-${VERSION} PROPERTIES PUBLIC_HEADER "${hydrogen_INCLUDES}" )
99 +
100 + INSTALL(TARGETS hydrogen-core-${VERSION}
101 +- LIBRARY DESTINATION "lib${LIB_SUFFIX}"
102 +- ARCHIVE DESTINATION "lib${LIB_SUFFIX}"
103 ++ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
104 ++ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
105 + # do not copy directory hierarchy
106 + #PUBLIC_HEADER DESTINATION include/hydrogen
107 + )
108 +
109 + IF(NOT APPLE AND NOT WIN32)
110 + INSTALL(DIRECTORY include DESTINATION "${CMAKE_INSTALL_PREFIX}" FILES_MATCHING PATTERN "*.h" PATTERN ".svn" EXCLUDE)
111 +- INSTALL(FILES "${CMAKE_CURRENT_BINARY_DIR}/include/hydrogen/config.h" DESTINATION "${CMAKE_INSTALL_PREFIX}/include/hydrogen" )
112 ++ INSTALL(FILES "${CMAKE_CURRENT_BINARY_DIR}/include/hydrogen/config.h" DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/hydrogen" )
113 + ENDIF()
114 +diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt
115 +index fb375e48..9cd18e6a 100644
116 +--- a/src/gui/CMakeLists.txt
117 ++++ b/src/gui/CMakeLists.txt
118 +@@ -57,4 +57,4 @@ TARGET_LINK_LIBRARIES(hydrogen
119 + qt5_use_modules(hydrogen Widgets)
120 + ADD_DEPENDENCIES(hydrogen hydrogen-core-${VERSION})
121 +
122 +-INSTALL(TARGETS hydrogen RUNTIME DESTINATION bin BUNDLE DESTINATION bin )
123 ++INSTALL(TARGETS hydrogen RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} BUNDLE DESTINATION ${CMAKE_INSTALL_BINDIR})
124 +diff --git a/src/player/CMakeLists.txt b/src/player/CMakeLists.txt
125 +index 72c270f3..836fc5b4 100644
126 +--- a/src/player/CMakeLists.txt
127 ++++ b/src/player/CMakeLists.txt
128 +@@ -16,4 +16,4 @@ TARGET_LINK_LIBRARIES(h2player
129 +
130 + ADD_DEPENDENCIES(h2player hydrogen-core-${VERSION})
131 +
132 +-INSTALL(TARGETS h2player RUNTIME DESTINATION bin BUNDLE DESTINATION bin )
133 ++INSTALL(TARGETS h2player RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} BUNDLE DESTINATION ${CMAKE_INSTALL_BINDIR})
134 +--
135 +2.15.1
136 +
137
138 diff --git a/media-sound/hydrogen/hydrogen-9999.ebuild b/media-sound/hydrogen/hydrogen-9999.ebuild
139 new file mode 100644
140 index 00000000000..3d14fb4a653
141 --- /dev/null
142 +++ b/media-sound/hydrogen/hydrogen-9999.ebuild
143 @@ -0,0 +1,81 @@
144 +# Copyright 1999-2018 Gentoo Foundation
145 +# Distributed under the terms of the GNU General Public License v2
146 +
147 +EAPI=6
148 +
149 +inherit cmake-utils git-r3 xdg-utils
150 +
151 +DESCRIPTION="Advanced drum machine"
152 +HOMEPAGE="http://www.hydrogen-music.org/"
153 +EGIT_REPO_URI="https://github.com/${PN}-music/${PN}"
154 +
155 +LICENSE="GPL-2 ZLIB"
156 +SLOT="0"
157 +KEYWORDS=""
158 +IUSE="alsa +archive jack ladspa lash osc oss portaudio portmidi pulseaudio"
159 +
160 +REQUIRED_USE="lash? ( alsa )"
161 +
162 +RDEPEND="
163 + dev-qt/qtcore:5
164 + dev-qt/qtgui:5
165 + dev-qt/qtnetwork:5
166 + dev-qt/qtwidgets:5
167 + dev-qt/qtxml:5
168 + dev-qt/qtxmlpatterns:5
169 + >=media-libs/libsndfile-1.0.18
170 + alsa? ( media-libs/alsa-lib )
171 + archive? ( app-arch/libarchive )
172 + !archive? ( >=dev-libs/libtar-1.2.11-r3 )
173 + jack? ( virtual/jack )
174 + ladspa? ( media-libs/liblrdf )
175 + lash? ( media-sound/lash )
176 + osc? ( media-libs/liblo )
177 + portaudio? ( media-libs/portaudio )
178 + portmidi? ( media-libs/portmidi )
179 + pulseaudio? ( media-sound/pulseaudio )
180 +"
181 +DEPEND="${RDEPEND}
182 + virtual/pkgconfig
183 +"
184 +
185 +DOCS=( AUTHORS ChangeLog DEVELOPERS README.txt )
186 +
187 +PATCHES=( "${FILESDIR}/${PN}-gnuinstalldirs.patch" )
188 +
189 +src_configure() {
190 + local mycmakeargs=(
191 + -DWANT_ALSA=$(usex alsa)
192 + -DWANT_CPPUNIT=OFF
193 + -DWANT_DEBUG=OFF
194 + -DWANT_JACK=$(usex jack)
195 + -DWANT_JACKSESSION=$(usex jack)
196 + -DWANT_LADSPA=$(usex ladspa)
197 + -DWANT_LASH=$(usex lash)
198 + -DWANT_LIBARCHIVE=$(usex archive)
199 + -DWANT_LRDF=$(usex ladspa)
200 + -DWANT_OSC=$(usex osc)
201 + -DWANT_OSS=$(usex oss)
202 + -DWANT_PORTAUDIO=$(usex portaudio)
203 + -DWANT_PORTMIDI=$(usex portmidi)
204 + -DWANT_PULSEAUDIO=$(usex pulseaudio)
205 + -DWANT_RUBBERBAND=OFF
206 + )
207 +
208 + cmake-utils_src_configure
209 +}
210 +
211 +src_install() {
212 + cmake-utils_src_install
213 + dosym ../../${PN}/data/doc /usr/share/doc/${PF}/html
214 +}
215 +
216 +pkg_postinst() {
217 + xdg_mimeinfo_database_update
218 + xdg_desktop_database_update
219 +}
220 +
221 +pkg_postrm() {
222 + xdg_mimeinfo_database_update
223 + xdg_desktop_database_update
224 +}
225
226 diff --git a/media-sound/hydrogen/metadata.xml b/media-sound/hydrogen/metadata.xml
227 index 3881dc28c75..972362fefd4 100644
228 --- a/media-sound/hydrogen/metadata.xml
229 +++ b/media-sound/hydrogen/metadata.xml
230 @@ -1,14 +1,15 @@
231 <?xml version="1.0" encoding="UTF-8"?>
232 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
233 <pkgmetadata>
234 - <maintainer type="project">
235 - <email>proaudio@g.o</email>
236 - <name>Gentoo ProAudio Project</name>
237 - </maintainer>
238 - <use>
239 - <flag name="archive">Use libarchive instead of libtar</flag>
240 - </use>
241 - <upstream>
242 - <remote-id type="sourceforge">hydrogen</remote-id>
243 - </upstream>
244 + <maintainer type="project">
245 + <email>proaudio@g.o</email>
246 + <name>Gentoo ProAudio Project</name>
247 + </maintainer>
248 + <use>
249 + <flag name="archive">Use libarchive instead of libtar</flag>
250 + <flag name="portmidi">Add portmidi support</flag>
251 + </use>
252 + <upstream>
253 + <remote-id type="github">hydrogen-music/hydrogen</remote-id>
254 + </upstream>
255 </pkgmetadata>