# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 PLOCALES=" ca cs de el en_GB es eu fr it ja ko nn pl pt pt_PT ru sv zh " PYTHON_COMPAT=( python3_{10..11} ) PYTHON_REQ_USE='threads(+)' WAF_BINARY="${S}/waf" EGIT_REPO_URI="https://github.com/${PN^}/${PN}.git" inherit python-any-r1 plocale git-r3 toolchain-funcs multiprocessing desktop xdg if [[ -n ${PV%%*9999} ]]; then MY_PV="f744b5f" [[ -n ${PV%%*_p*} ]] && MY_PV="${PV}" EGIT_COMMIT="${MY_PV/_/-}" KEYWORDS="~amd64" fi SRC_URI="" DESCRIPTION="Digital Audio Workstation" HOMEPAGE="https://ardour.org/" LICENSE="GPL-2" SLOT="${PV%%.*}" IUSE=" alsa bindist bundled-libs debug doc jack hid nls pulseaudio phone-home sanitize sse vst websockets cpu_flags_x86_avx cpu_flags_x86_avx512f " REQUIRED_USE=" || ( alsa jack pulseaudio ) " RDEPEND=" dev-cpp/gtkmm:2.4 sci-libs/fftw:3.0=[threads] media-libs/flac:= media-libs/libogg media-libs/fontconfig alsa? ( media-libs/alsa-lib ) media-libs/aubio:= dev-libs/libxml2:2 media-libs/libsamplerate media-libs/lv2 media-libs/suil[gtk2] media-libs/lilv media-libs/liblrdf net-misc/curl media-libs/libsndfile jack? ( virtual/jack ) pulseaudio? ( media-libs/libpulse ) !bundled-libs? ( media-libs/libltc hid? ( dev-libs/hidapi ) >=media-sound/fluidsynth-2.0.1 ) media-libs/liblo media-libs/taglib media-libs/vamp-plugin-sdk media-libs/rubberband sys-apps/util-linux websockets? ( net-libs/libwebsockets ) " DEPEND=" ${RDEPEND} " BDEPEND=" ${PYTHON_DEPS} dev-libs/boost nls? ( sys-devel/gettext ) doc? ( app-text/doxygen ) " src_prepare() { my_lcmsg() { rm -f {gtk2_ardour,gtk2_ardour/appdata,libs/ardour,libs/gtkmm2ext}/po/${1}.po } plocale_for_each_disabled_locale my_lcmsg sed -e 's:AudioEditing:X-&:' -i gtk2_ardour/ardour.desktop.in sed -e 's:share/appdata:share/metainfo:' -i gtk2_ardour/wscript sed -e 's:USE_EXTERNAL_LIBS:DONT_USE_EXTERNAL_LIB:' -i libs/qm-dsp/wscript grep -rl '/\' | xargs sed -e "s:/\:/$(get_libdir):g" -i sed -e "/obj\.target/s:${PN}\.xml:${PN}${SLOT}.xml:" -i gtk2_ardour/wscript local _c=() use cpu_flags_x86_avx || _c+=( -e '/define_name =/ s:\:NO_&:' ) use cpu_flags_x86_avx512f || _c+=( -e '/define_name =/ s:\:NO_&:' ) sed "${_c[@]}" -i wscript default } src_configure() { my_use() { usex $1 --${2:-${1}} --no-${2:-${1}} } local wafargs=( --prefix="${EPREFIX}/usr" --libdir="${EPREFIX}/usr/$(get_libdir)" --configdir=/etc --noconfirm --versioned --freedesktop --keepflags --with-backends="dummy,$(usev alsa),$(usev jack),$(usev pulseaudio)" $(my_use vst lxvst) $(my_use vst vst3) $(my_use nls) $(my_use phone-home) $(my_use sse fpu-optimization) $(usex bindist '--freebie' '') $(usex debug '--debug-symbols --rt-alloc-debug' '') $(usex sanitize '--address-sanitizer' '') $(usex bundled-libs '' '--use-external-libs') $(usex doc '--docs' '') --ptformat ) tc-export AR CC CPP CXX RANLIB set -- "${WAF_BINARY}" "${wafargs[@]}" configure echo "${@}" LINKFLAGS="${LDFLAGS}" \ PKGCONFIG="$(tc-getPKG_CONFIG)" \ ${EPYTHON} "${@}" || die "configure failed" } src_compile() { "${WAF_BINARY}" \ --jobs=$(makeopts_jobs) --verbose \ build $(usex nls i18n '') || die "build failed" } src_install() { "${WAF_BINARY}" --destdir="${ED}" install || die "install failed" einstalldocs newicon gtk2_ardour/icons/${PN}-app-icon_osx.png ${PN}${SLOT}.png domenu build/gtk2_ardour/${PN}${SLOT}.desktop insinto /usr/share/mime/packages }