# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit cmake xdg HASH_CED="28f46c18c60b851773b0ff61f3ce416fb09adcf3" HASH_PERFORMOUS="43586b58c72e48b63974f418af07b85b1d366daa" DESCRIPTION="SingStar GPL clone" HOMEPAGE="https://performous.org/" SRC_URI=" https://github.com/performous/performous/archive/${HASH_PERFORMOUS}.tar.gz -> ${P}.tar.gz https://github.com/performous/compact_enc_det/archive/${HASH_CED}.tar.gz -> ${PN}-ced-${HASH_CED}.tar.gz songs? ( https://downloads.sourceforge.net/project/performous/ultrastar-songs-jc/1/ultrastar-songs-jc-1.zip https://downloads.sourceforge.net/project/performous/ultrastar-songs-libre/3/ultrastar-songs-libre-3.zip https://downloads.sourceforge.net/project/performous/ultrastar-songs-restricted/3/ultrastar-songs-restricted-3.zip https://downloads.sourceforge.net/project/performous/ultrastar-songs-shearer/1/ultrastar-songs-shearer-1.zip ) " S="${WORKDIR}/${PN}-${HASH_PERFORMOUS}" LICENSE=" GPL-2 Apache-2.0 OFL-1.1 songs? ( CC-BY-NC-SA-2.5 CC-BY-NC-ND-2.5 ) " SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="midi songs test webcam" RESTRICT="!test? ( test )" RDEPEND=" dev-cpp/libxmlpp:5.0 dev-libs/boost:=[nls] dev-libs/glib:2 dev-libs/icu:= dev-libs/libfmt:= gnome-base/librsvg:2 media-libs/aubio:=[blas,fftw] media-libs/fontconfig:1.0 media-libs/glm media-libs/libepoxy media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsdl2[joystick,opengl,video] media-libs/portaudio[cxx] media-video/ffmpeg:= sys-libs/zlib virtual/libintl x11-libs/cairo x11-libs/pango midi? ( media-libs/portmidi ) webcam? ( media-libs/opencv:= ) " DEPEND="${RDEPEND} dev-cpp/nlohmann_json dev-libs/spdlog test? ( dev-cpp/gtest ) " BDEPEND=" sys-apps/help2man sys-devel/gettext virtual/pkgconfig songs? ( app-arch/unzip ) " PATCHES=( # avoid compressed manpages (gzip) "${FILESDIR}"/${PN}-1.3.1-uncompressed_docs.patch # use cblas implementation instead of restricting to openblas "${FILESDIR}"/${PN}-1.3.1-cblas.patch ) src_configure() { local mycmakeargs=( -DPERFORMOUS_VERSION=${PV} -DSHARE_INSTALL="${EPREFIX}"/usr/share/${PN} # it needs ON, not yes or something else -DBUILD_TESTS=$(usex test ON OFF) -DENABLE_MIDI=$(usex midi) -DENABLE_TOOLS=ON # no dep -DENABLE_WEBCAM=$(usex webcam) # avoid 3rd party libs -DSELF_BUILT_AUBIO=NEVER -DSELF_BUILT_JSON=NEVER -DSELF_BUILT_SPDLOG=NEVER # compact_enc_det is not in tree -DSELF_BUILT_CED=ALWAYS -DFETCHCONTENT_SOURCE_DIR_CED-SRC:PATH="${WORKDIR}/compact_enc_det-${HASH_CED}" # webserver needs unpackaged cpprestsdk which is not recommended for # use by its upstream (dead), may consider adding only if requested -DENABLE_WEBSERVER=no ) cmake_src_configure } src_test() { # avoid overflow failures cmake_src_test -j1 } src_install() { local DOCS=( README.md docs/{Authors,instruments}.txt ) cmake_src_install insinto /usr/share/${PN} use songs && doins -r "${WORKDIR}"/songs }