1 # Copyright 1999-2020 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
4 # shellcheck disable=SC2034
7 CMAKE_MAKEFILE_GENERATOR="emake"
9 inherit cmake-multilib virtualx
13 FAUDIO_P="${FAUDIO_PN}-${FAUDIO_PV}"
15 if [[ "${PV}" == "9999" ]]; then
17 EGIT_REPO_URI="https://github.com/FNA-XNA/${FAUDIO_PN}.git"
19 SRC_URI="https://github.com/FNA-XNA/${FAUDIO_PN}/archive/${FAUDIO_PV}.tar.gz -> ${FAUDIO_P}.tar.gz"
20 KEYWORDS="-* amd64 x86"
21 S="${WORKDIR}/${FAUDIO_P}"
24 DESCRIPTION="FAudio - Accuracy-focused XAudio reimplementation for open platforms"
25 HOMEPAGE="https://fna-xna.github.io/"
29 IUSE="+abi_x86_32 +abi_x86_64 debug dumpvoices ffmpeg xnasong test utils"
30 RESTRICT="!test? ( test )"
31 REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )"
34 >=media-libs/libsdl2-2.0.9[sound,${MULTILIB_USEDEP}]
35 ffmpeg? ( media-video/ffmpeg:=[${MULTILIB_USEDEP}] )
37 RDEPEND="${COMMON_DEPEND}
39 DEPEND="${COMMON_DEPEND}
42 multilib_src_configure() {
44 "-DCMAKE_INSTALL_BINDIR=bin"
45 "-DCMAKE_INSTALL_INCLUDEDIR=include/${FAUDIO_PN}"
46 "-DCMAKE_INSTALL_LIBDIR=$(get_libdir)"
47 "-DCMAKE_INSTALL_PREFIX=${EPREFIX}/usr"
48 "-DCMAKE_BUILD_TYPE=$(usex debug Debug Release)"
49 "-DFORCE_ENABLE_DEBUGCONFIGURATION=$(usex debug ON OFF)"
50 "-DBUILD_TESTS=$(usex test ON OFF)"
51 "-DBUILD_UTILS=$(usex utils ON OFF)"
52 "-DDUMP_VOICES=$(usex dumpvoices ON OFF)"
53 "-DFFMPEG=$(usex ffmpeg ON OFF)"
54 "-DXNASONG=$(usex xnasong ON OFF)"
57 mycmakeargs+=( "-DFFmpeg_LIBRARY_DIRS=${EPREFIX}/usr/$(get_libdir)" )
59 cmake-utils_src_configure
63 cmake-multilib_src_configure
66 multilib_src_compile() {
68 emake -C "${BUILD_DIR}" all
71 multilib_src_install() {
72 # FIXME: do we want to install the FAudio tools?
73 cmake-utils_src_install
75 sed -e "s@%LIB%@$(get_libdir)@g" -e "s@%PREFIX%@${EPREFIX}/usr@g" \
76 "${FILESDIR}/faudio.pc" > "${T}/faudio.pc" \
78 insinto "/usr/$(get_libdir)/pkgconfig"
79 doins "${T}/faudio.pc"
82 mkdir -p "${T}/$(get_libdir)" || die
83 cp "${BUILD_DIR}/faudio_tests" "${T}/$(get_libdir)/" || die "cp failed"
88 XDG_RUNTIME_DIR="/run/user/0" virtx "${T}/$(get_libdir)/faudio_tests"
94 # FIXME: FAudio tests are broken and also don't appear to work
95 # in the Portage sandbox.
96 multilib_foreach_abi faudio_test