1
0
flewkey-overlay/media-sound/carla/carla-2.5.4.ebuild
Ryan Fox 4075a861c9
media-sound/carla: new package, add 2.5.4, 9999
I'm adopting this from the audio-overlay for now.
2023-03-26 19:43:21 -07:00

95 lines
2.4 KiB
Bash

# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{8..11} )
inherit python-single-r1 xdg
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/falkTX/Carla.git"
EGIT_SUBMODULES=() # Prevent Carla-Plugins from installing
else
SRC_URI="https://github.com/falkTX/Carla/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64"
MY_PN="Carla"
MY_P="${MY_PN}-${PV}"
S="${WORKDIR}/${MY_P}"
fi
DESCRIPTION="Fully-featured audio plugin host, supports many audio drivers and plugin formats"
HOMEPAGE="https://kx.studio/Applications:Carla"
LICENSE="GPL-2 LGPL-3"
SLOT="0"
IUSE="alsa gtk gtk2 opengl osc pulseaudio rdf sf2 sndfile X"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
DEPEND="
${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-libs/libX11 )
"
RDEPEND="${DEPEND}"
BDEPEND="${DEPEND}"
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"
sed -i "s;/share/appdata;/share/metainfo;g" "${S}/Makefile" || 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
}