From e74779beddbd9bd302da26b05e74f45de9c96fa7 Mon Sep 17 00:00:00 2001 From: Alexandros Theodotou Date: Sun, 10 Jul 2022 12:27:03 +0900 Subject: [PATCH] add carla --- .gitignore | 2 + media-sound/carla/carla-9999-r1.ebuild | 103 +++++++++++++++++++++++++ 2 files changed, 105 insertions(+) create mode 100644 .gitignore create mode 100644 media-sound/carla/carla-9999-r1.ebuild diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..29c3fca --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +metadata/md5-cache +docs/site diff --git a/media-sound/carla/carla-9999-r1.ebuild b/media-sound/carla/carla-9999-r1.ebuild new file mode 100644 index 0000000..8066bb6 --- /dev/null +++ b/media-sound/carla/carla-9999-r1.ebuild @@ -0,0 +1,103 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{6,7,8,9,10} ) +inherit python-single-r1 xdg-utils + +DESCRIPTION="Fully-featured audio plugin host, supports many audio drivers and plugin formats" +HOMEPAGE="http://kxstudio.linuxaudio.org/Applications:Carla" +if [[ ${PV} == *9999 ]]; then + # Disable submodules to prevent external plugins from being built and installed + inherit git-r3 + EGIT_REPO_URI="https://github.com/falkTX/Carla.git" + EGIT_SUBMODULES=() + KEYWORDS="" +else + SRC_URI="https://github.com/falkTX/Carla/archive/v${PV}.tar.gz -> ${P}.tar.gz" + RESTRICT="mirror" + KEYWORDS="~amd64" + S="${WORKDIR}/Carla-${PV}" +fi +LICENSE="GPL-2 LGPL-3" +SLOT="0" + +IUSE="alsa gtk gtk2 opengl osc -pulseaudio rdf sf2 sndfile X" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND="${PYTHON_DEPS} + $(python_gen_cond_dep 'dev-python/PyQt5[gui,opengl?,svg,widgets,${PYTHON_USEDEP}]') + virtual/jack + alsa? ( media-libs/alsa-lib ) + gtk? ( x11-libs/gtk+:3 ) + gtk2? ( x11-libs/gtk+:2 ) + osc? ( + media-libs/liblo + media-libs/pyliblo + ) + pulseaudio? ( media-sound/pulseaudio ) + rdf? ( dev-python/rdflib ) + sf2? ( media-sound/fluidsynth ) + sndfile? ( media-libs/libsndfile ) + X? ( x11-base/xorg-server )" +DEPEND=${RDEPEND} + +src_prepare() { + sed -i -e "s|exec \$PYTHON|exec ${PYTHON}|" \ + data/carla \ + data/carla-control \ + data/carla-database \ + data/carla-jack-multi \ + data/carla-jack-single \ + data/carla-patchbay \ + data/carla-rack \ + data/carla-settings || die "sed failed" + default +} + +src_compile() { + myemakeargs=( + LIBDIR="/usr/$(get_libdir)" + SKIP_STRIPPING=true + HAVE_FFMPEG=false + HAVE_ZYN_DEPS=false + HAVE_ZYN_UI_DEPS=false + HAVE_QT4=false + HAVE_QT5=true + HAVE_PYQT5=true + DEFAULT_QT=5 + HAVE_ALSA=$(usex alsa true false) + HAVE_FLUIDSYNTH=$(usex sf2 true false) + HAVE_GTK2=$(usex gtk2 true false) + HAVE_GTK3=$(usex gtk true false) + HAVE_LIBLO=$(usex osc true false) + HAVE_PULSEAUDIO=$(usex pulseaudio true false) + HAVE_SNDFILE=$(usex sndfile true false) + HAVE_X11=$(usex X true false) + ) + + # Print which options are enabled/disabled + make features PREFIX="/usr" "${myemakeargs[@]}" + + emake PREFIX="/usr" "${myemakeargs[@]}" +} + +src_install() { + emake DESTDIR="${D}" PREFIX="/usr" "${myemakeargs[@]}" install + if ! use osc; then + find "${D}/usr" -iname "carla-control*" | xargs rm + fi +} + +pkg_postinst() { + xdg_mimeinfo_database_update + xdg_desktop_database_update + xdg_icon_cache_update +} + +pkg_postrm() { + xdg_mimeinfo_database_update + xdg_desktop_database_update + xdg_icon_cache_update +} -- 2.45.2