summaryrefslogtreecommitdiff
blob: da72ad78417d35f5c6a48653c90f9509e773d94c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

CMAKE_ECLASS=cmake
GTEST_VERSION="1.10.0"
GTEST_DIR_VERSION="1.10.x"
inherit cmake-multilib

DESCRIPTION="Library implementing a custom algorithm for extracting audio fingerprints"
HOMEPAGE="https://acoustid.org/chromaprint"
SRC_URI="https://github.com/acoustid/${PN}/releases/download/v${PV}/${P}.tar.gz
	test? ( https://github.com/google/googletest/archive/v$(ver_cut 1-2 ${GTEST_VERSION}).x.tar.gz -> gtest-${GTEST_VERSION}.tar.gz )
"

LICENSE="LGPL-2.1"
SLOT="0/1"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv sparc x86"
IUSE="test tools"
RESTRICT="!test? ( test )"

# note: use ffmpeg instead of fftw because it's recommended and required for tools
RDEPEND="media-video/ffmpeg:0=[${MULTILIB_USEDEP}]
"
DEPEND="${RDEPEND}
	test? ( dev-cpp/gtest[${MULTILIB_USEDEP}] )"

DOCS=( NEWS.txt README.md )

multilib_src_configure() {
	export GTEST_ROOT="${WORKDIR}/googletest-${GTEST_DIR_VERSION}/googletest/"
	local mycmakeargs=(
		-DBUILD_TOOLS=$(multilib_native_usex tools ON OFF)
		-DBUILD_TESTS=$(usex test ON OFF)
		-DFFT_LIB=avfft
		-DAUDIO_PROCESSOR_LIB="swresample"
	)
	cmake_src_configure
}

multilib_src_test() {
	cd tests && (./all_tests || die "Tests failed")
}