* [gentoo-commits] repo/proj/guru:dev commit in: media-sound/bespokesynth/, media-sound/bespokesynth/files/
@ 2024-06-22 7:45 Erwin Kaats
0 siblings, 0 replies; only message in thread
From: Erwin Kaats @ 2024-06-22 7:45 UTC (permalink / raw
To: gentoo-commits
commit: 44a9549c4d61a03e2bc58e26fdec8e5ec6f6d6a9
Author: Erwin Kaats <mailgentoo <AT> kaats <DOT> ch>
AuthorDate: Sat Jun 22 06:27:42 2024 +0000
Commit: Erwin Kaats <mailgentoo <AT> kaats <DOT> ch>
CommitDate: Sat Jun 22 06:27:42 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=44a9549c
media-sound/bespokesynth: new package, add 1.2.1
Signed-off-by: Erwin Kaats <mailgentoo <AT> kaats.ch>
media-sound/bespokesynth/Manifest | 7 ++
media-sound/bespokesynth/bespokesynth-1.2.1.ebuild | 116 +++++++++++++++++++++
.../files/ableton-link-dependencies.patch | 16 +++
.../files/bespokesynth-1.2.1-find-jsoncpp.patch | 34 ++++++
4 files changed, 173 insertions(+)
diff --git a/media-sound/bespokesynth/Manifest b/media-sound/bespokesynth/Manifest
new file mode 100644
index 000000000..863202de4
--- /dev/null
+++ b/media-sound/bespokesynth/Manifest
@@ -0,0 +1,7 @@
+DIST bespokesynth-JUCE-2a27ebcfae7ca7f6eb62b29d5f002ceefdaadbdb.tar.gz 19278493 BLAKE2B 01ca54be9500064c9f526d3e483424b481949eef0140c833498119c0132e0ac7b1b6627ea0dd39e8d8d5b1132cc89b43fdf4aeb228ee5b1b9d7bbf4c86cd51f1 SHA512 26c540f0eadca4ed2ccba89b2b23768f2d4441e9b865f2592f88dd2a2450e64ff38af4c65a68b9e94c49c8ca111f8415711e3000662090b3e3c6835722103fdf
+DIST bespokesynth-ableton-link-a4e4c2f3e598e28e5bea90002f954b997b8c8c53.tar.gz 1898358 BLAKE2B ee4deb5a279a98363f0884fdc7796ac50ffc84f55334ff2d33a941624ea17e39b1eda440f2f5cb5e0304df97eee5813ea7d19298fea6630b06d3287647a70852 SHA512 2330cd82a7c8b164d40202e484b6c14fddce3e459ed2d78dc47b1397993b6f5634f95e2333c6c89aee2ad5bb7aa90d45ae8747526a980f4f54ef4a694e7486ac
+DIST bespokesynth-asio-c465349fa5cd91a64bb369f5131ceacab2c0c1c3.tar.gz 2969476 BLAKE2B 83260ab0d11343591d80c9adae8572aecca03cf4c59bcd4b461c5c1241a3a087c3c49d173fae5deb9574807d2462162f42dd4b1a71e51fd36e38967fcd0fe6aa SHA512 0b90175f84ee4fcc89d055ee7f862aebc75c760d1af13a0158bfd52ff3c204a1c2a206f5d4ab2cfb262295e9b6720faeb04fcdbbbcc4451b8d8e4fdd70d28550
+DIST bespokesynth-oddsound-mts-fcfaa59a043d515d288c9d587bf61a0a7d7571a8.tar.gz 1217919 BLAKE2B 6669301a34fd9b8644facc6a140dd1ccbf26e5424275f0b734da6f391be75eef6fc6ae637e51a154b2807b57d1e0a80fcdd4883dec72abb18d7029974e101abc SHA512 8eac0bab87c845c449699787c318e029a5ed262146712eeb84ced707ed93b8fb006651624200a8f14d9166aa1503d563584a12f2fe9f04e960d5d74443ff54c8
+DIST bespokesynth-readerwriterqueue-8e7627d18c2108aca178888d88514179899a044f.tar.gz 41260 BLAKE2B a0df16b642fdd4be370bc006f1faa804f2fbf7b68beed6f7837efda1b0d477e905279517883fc681d362a2f19412129c881da002091c613c9bd1285b8e47161a SHA512 ef47a9cc53855bfc2ab7faed0c678e24121d052fdf2a3f4d044e44b617155b67e78110fef2cc4da951d1470f495b1de0c1d179ad2e82dd50c041f0e2f693efbd
+DIST bespokesynth-tuning-library-eb8617be49ac3c2436cf54de6bff94a1b1c94acf.tar.gz 140236 BLAKE2B 7b38cc589c92c137aec999762f4bc9e9d4e4409fae8e8a5c71785d04a47e0930d32fdf7c6a9141023ab4ef2fc11b68d72d917c1d7541bf2eb7a6c2977c409ab2 SHA512 0c270970936bd006618b192a32f1c825c8cfada104caa5541462e8a9955f829b2309091ea64b78a3746ce00687f72e16715e62cbf14f0f8b423019b81fdfdf98
+DIST v1.2.1.tar.gz 22232039 BLAKE2B c9f866679776fca2d3d12b2cb379861f3a39b1647b3def1c210d96fecfe63ec9509508cca2120122e3563339eea71a209e048e042cf14c1673e05c684e704cdb SHA512 6c623a47a4c8e32cbd4f84c13cf9472cae982d1813871517d92608b338261302ace077449b9235d807e5587377005a021dd987026f6d8bb1a5442cb16db55de5
diff --git a/media-sound/bespokesynth/bespokesynth-1.2.1.ebuild b/media-sound/bespokesynth/bespokesynth-1.2.1.ebuild
new file mode 100644
index 000000000..e9b4a5696
--- /dev/null
+++ b/media-sound/bespokesynth/bespokesynth-1.2.1.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+EAPI=8
+
+inherit cmake desktop
+
+DESCRIPTION="Software modular synth"
+HOMEPAGE="https://www.bespokesynth.com/"
+SRC_URI="https://github.com/BespokeSynth/BespokeSynth/archive/refs/tags/v${PV}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ dev-python/pybind11
+ dev-libs/jsoncpp
+ dev-cpp/asio
+ media-sound/jack2
+"
+
+JUCE_COMMIT="2a27ebcfae7ca7f6eb62b29d5f002ceefdaadbdb"
+SRC_URI+=" https://github.com/juce-framework/JUCE/archive/${JUCE_COMMIT}.tar.gz -> ${PN}-JUCE-${JUCE_COMMIT}.tar.gz"
+READERWRITER_COMMIT="8e7627d18c2108aca178888d88514179899a044f"
+SRC_URI+=" https://github.com/cameron314/readerwriterqueue/archive/${READERWRITER_COMMIT}.tar.gz -> ${PN}-readerwriterqueue-${READERWRITER_COMMIT}.tar.gz"
+TUNINGLIBRARY_COMMIT="eb8617be49ac3c2436cf54de6bff94a1b1c94acf"
+SRC_URI+=" https://github.com/surge-synthesizer/tuning-library/archive/${TUNINGLIBRARY_COMMIT}.tar.gz -> ${PN}-tuning-library-${TUNINGLIBRARY_COMMIT}.tar.gz"
+ABLETON_COMMIT="a4e4c2f3e598e28e5bea90002f954b997b8c8c53"
+SRC_URI+=" https://github.com/Ableton/link/archive/${ABLETON_COMMIT}.tar.gz -> ${PN}-ableton-link-${ABLETON_COMMIT}.tar.gz"
+ODDSOUND_COMMIT="fcfaa59a043d515d288c9d587bf61a0a7d7571a8"
+SRC_URI+=" https://github.com/ODDSound/MTS-ESP/archive/${ODDSOUND_COMMIT}.tar.gz -> ${PN}-oddsound-mts-${ODDSOUND_COMMIT}.tar.gz"
+ASIO_COMMIT="c465349fa5cd91a64bb369f5131ceacab2c0c1c3"
+SRC_URI+=" https://github.com/chriskohlhoff/asio/archive/${ASIO_COMMIT}.tar.gz -> ${PN}-asio-${ASIO_COMMIT}.tar.gz"
+
+
+PATCHES=(
+ "${FILESDIR}/${P}-find-jsoncpp.patch"
+)
+
+# TODO: implement version 9999
+#EGIT_REPO_URI="https://github.com/BespokeSynth/BespokeSynth.git"
+#EGIT_SUBMODULES=(
+# libs/JUCE
+# libs/ableton-link
+# libs/pybind11
+# libs/readerwriterqueue
+# libs/tuning-library
+#)
+
+S="${WORKDIR}/BespokeSynth-${PV}"
+
+src_prepare() {
+ rmdir "${S}/libs/JUCE" || die
+ mv "${WORKDIR}/JUCE-${JUCE_COMMIT}" "${S}/libs/JUCE" || die
+ rmdir "${S}/libs/readerwriterqueue" || die
+ mv "${WORKDIR}/readerwriterqueue-${READERWRITER_COMMIT}" "${S}/libs/readerwriterqueue" || die
+ rmdir "${S}/libs/pybind11" || die
+ #mv "${WORKDIR}/JUCE-${JUCE_COMMIT}" "${S}/libs/JUCE" || die
+ rmdir "${S}/libs/tuning-library" || die
+ mv "${WORKDIR}/tuning-library-${TUNINGLIBRARY_COMMIT}" "${S}/libs/tuning-library" || die
+ rmdir "${S}/libs/ableton-link" || die
+ mv "${WORKDIR}/link-${ABLETON_COMMIT}" "${S}/libs/ableton-link" || die
+
+ # patching out build dependency for dev-cpp/asio
+ #TODO: couldn't figure out how to have ableton-link build without asio-standalone.
+ # It doesn't want to use 'dev-cpp/asio' it seems.
+ # eapply "${FILESDIR}/ableton-link-dependencies.patch"
+ rmdir "${S}/libs/ableton-link/modules/asio-standalone" || die
+ mv "${WORKDIR}/asio-${ASIO_COMMIT}" "${S}/libs/ableton-link/modules/asio-standalone" || die
+
+
+ rmdir "${S}/libs/oddsound-mts/MTS-ESP" || die
+ mv "${WORKDIR}/MTS-ESP-${ODDSOUND_COMMIT}" "${S}/libs/oddsound-mts/MTS-ESP" || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ "-DBESPOKE_SYSTEM_PYBIND11=TRUE"
+ "-DBESPOKE_SYSTEM_JSONCPP=TRUE"
+ "-DCMAKE_BUILD_TYPE=Release"
+ "-DCMAKE_INSTALL_PREFIX=/usr/share"
+ "-DCMAKE_SKIP_RPATH=ON"
+ )
+ cmake_src_configure
+}
+
+src_install() {
+ DESTDIR="/usr/share/bespokesynth"
+
+ # Install libraries
+ dolib.so "${WORKDIR}/BespokeSynth-${PV}_build/libs/freeverb/libfreeverb.so"
+ dolib.so "${WORKDIR}/BespokeSynth-${PV}_build/libs/oddsound-mts/liboddsound-mts.so"
+ dolib.so "${WORKDIR}/BespokeSynth-${PV}_build/libs/psmove/libpsmove.so"
+ dolib.so "${WORKDIR}/BespokeSynth-${PV}_build/libs/push2/libpush2.so"
+ dolib.so "${WORKDIR}/BespokeSynth-${PV}_build/libs/xwax/libxwax.so"
+ dolib.so "${WORKDIR}/BespokeSynth-${PV}_build/libs/nanovg/libnanovg.so"
+
+ # Create a new directory for bespoke to live in
+ dodir ${DESTDIR}
+ into ${DESTDIR}
+
+ # It seems the executable really wants to be where the resource directory is.
+ dobin "${WORKDIR}/BespokeSynth-${PV}_build/Source/BespokeSynth_artefacts/RelWithDebInfo/BespokeSynth"
+
+ # Install auxilary files
+ insinto /usr/share/bespokesynth/bin
+ doins -r "${WORKDIR}/BespokeSynth-${PV}_build/Source/BespokeSynth_artefacts/RelWithDebInfo/resource"
+
+ dosym -r ${DESTDIR}/bin/BespokeSynth /usr/bin/BespokeSynth
+
+ # Adding icon and desktop settings
+ doicon -s 512 "${WORKDIR}/BespokeSynth-${PV}/bespoke_icon.png"
+ domenu "${WORKDIR}/BespokeSynth-${PV}/scripts/installer_linux/BespokeSynth.desktop"
+}
diff --git a/media-sound/bespokesynth/files/ableton-link-dependencies.patch b/media-sound/bespokesynth/files/ableton-link-dependencies.patch
new file mode 100644
index 000000000..8b7aa660e
--- /dev/null
+++ b/media-sound/bespokesynth/files/ableton-link-dependencies.patch
@@ -0,0 +1,16 @@
+--- a/libs/ableton-link/AbletonLinkConfig.cmake
++++ b/libs/ableton-link/AbletonLinkConfig.cmake
+
+@@ -38,12 +38,6 @@
+ )
+ endif()
+
+-include(${CMAKE_CURRENT_LIST_DIR}/cmake_include/AsioStandaloneConfig.cmake)
+-set_property(TARGET Ableton::Link APPEND PROPERTY
+- INTERFACE_LINK_LIBRARIES
+- AsioStandalone::AsioStandalone
+-)
+-
+ set_property(TARGET Ableton::Link APPEND PROPERTY
+ INTERFACE_SOURCES
+ ${CMAKE_CURRENT_LIST_DIR}/include/ableton/Link.hpp
diff --git a/media-sound/bespokesynth/files/bespokesynth-1.2.1-find-jsoncpp.patch b/media-sound/bespokesynth/files/bespokesynth-1.2.1-find-jsoncpp.patch
new file mode 100644
index 000000000..3779afc97
--- /dev/null
+++ b/media-sound/bespokesynth/files/bespokesynth-1.2.1-find-jsoncpp.patch
@@ -0,0 +1,34 @@
+Fix for finding system JSON
+https://github.com/BespokeSynth/BespokeSynth/pull/1525/commits/aa1508f16344968afbbd4ec277d457afb58030d4#diff-1e7de1ae2d059d21e1dd75d5812d5a34b0222cef273b7c3a2af62eb747f9d20a
+
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -96,6 +96,13 @@
+ endif()
+ endif()
+
++
++if(BESPOKE_SYSTEM_JSONCPP)
++ find_package(PkgConfig REQUIRED)
++ pkg_check_modules(JSONCPP REQUIRED jsoncpp)
++ include_directories(${JSONCPP_INCLUDE_DIRS})
++endif()
++
+ if (BESPOKE_VST2_SDK_LOCATION)
+ juce_set_vst2_sdk_path(${BESPOKE_VST2_SDK_LOCATION})
+ message(STATUS "Enabling VST2 - caution, non FOSS build")
+
+--- a/libs/CMakeLists.txt
++++ b/libs/CMakeLists.txt
+@@ -3,10 +3,6 @@
+ if(NOT BESPOKE_SYSTEM_JSONCPP)
+ add_subdirectory(json EXCLUDE_FROM_ALL)
+ message(STATUS "Using bundled jsoncpp")
+-else()
+- include(FindPkgConfig)
+- pkg_search_module(json REQUIRED jsoncpp)
+- message(STATUS "Using system provided jsoncpp")
+ endif()
+ add_subdirectory(leathers EXCLUDE_FROM_ALL)
+ add_subdirectory(nanovg EXCLUDE_FROM_ALL)
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2024-06-22 7:45 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-22 7:45 [gentoo-commits] repo/proj/guru:dev commit in: media-sound/bespokesynth/, media-sound/bespokesynth/files/ Erwin Kaats
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox