commit: 69ef98704288b2637e52bbc5f552569930a2685f Author: Lucio Sauer <watermanpaint <AT> posteo <DOT> net> AuthorDate: Sun Sep 3 22:23:22 2023 +0000 Commit: Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org> CommitDate: Sun Sep 3 22:24:36 2023 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=69ef9870
media-libs/dr_flac: new package, add 0.12.41 Signed-off-by: Lucio Sauer <watermanpaint <AT> posteo.net> media-libs/dr_flac/Manifest | 3 + media-libs/dr_flac/dr_flac-0.12.41.ebuild | 117 +++++++++++++++++++++ .../dr_flac/files/dr_flac-0.12.41-docs.tar.xz | Bin 0 -> 6044 bytes media-libs/dr_flac/metadata.xml | 11 ++ 4 files changed, 131 insertions(+) diff --git a/media-libs/dr_flac/Manifest b/media-libs/dr_flac/Manifest new file mode 100644 index 0000000000..f603b6ed0a --- /dev/null +++ b/media-libs/dr_flac/Manifest @@ -0,0 +1,3 @@ +DIST dr_flac-0.12.41-testbench.gh.tar.gz 209727087 BLAKE2B 72547637782c4af9eb914e417896d1c6c0b403ac9996dbcea4de7d3343e7d39072a8df2af397ef5ace81a85b0214015d4b73d40b06b072df9d60ea5dcb0bbe8a SHA512 990aed238e5158b1a1e03d67316416fc1b33cd9e1653bef3295ae6abd016f09060f87627904424afd2855886d1f43fc475259f4ec4d71e9e7e4f0f4158a819ac +DIST dr_flac-0.12.41.gh.tar.gz 518329 BLAKE2B c01d2dd3a7397251589e2e2d0be14b6005e21f77b7453990bb340dd3c87808a8b64e033073380b832a377c614775cf7f8666df56b74b4fb1b1fd115add43b296 SHA512 9f0d2a162358b949bf9b35d92dc2f5845830c31014f2bc66c197240db5d840fcf85e9feec86b4678d05948e41e94ca1b9e909edc648e82ab7ba9ade195cc3a40 +DIST dr_flac-0.12.41.h 525519 BLAKE2B 4433e0406e8f4f7d301ebd7336d76b72c7b27767b570ab3807eeafab231274269709105bb0eb9995a6a205e94b0e38691208136ca71703a9273882b4a8313f36 SHA512 1cf8d2acc80ce2d4f417b7f34b5fc92b9c88678a4b44c6b4a0f8a22c7497ddc8bb9ba79aa860932d436ae60253455391cf6f843713fa0a8d9fb36d29602a4e3a diff --git a/media-libs/dr_flac/dr_flac-0.12.41.ebuild b/media-libs/dr_flac/dr_flac-0.12.41.ebuild new file mode 100644 index 0000000000..287d210e73 --- /dev/null +++ b/media-libs/dr_flac/dr_flac-0.12.41.ebuild @@ -0,0 +1,117 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="Single-header FLAC audio decoder library" +HOMEPAGE="https://github.com/mackron/dr_libs/" +declare -A COMMITS=( + [dr_flac]="353bdc08bd90b24832a5eb149b2c4fd770a650f6" + [testbench]="4a19dc2ddb9ee3ac083abaa99faa3a0b7230f833" +) +SRC_URI="!test? ( https://raw.githubusercontent.com/mackron/dr_libs/${COMMITS[dr_flac]}/dr_flac.h -> ${P}.h ) + test? ( https://github.com/mackron/dr_libs/archive/${COMMITS[dr_flac]}.tar.gz -> ${P}.gh.tar.gz + https://github.com/ietf-wg-cellar/flac-test-files/archive/${COMMITS[testbench]}.tar.gz + -> ${P}-testbench.gh.tar.gz )" + +LICENSE="|| ( MIT-0 public-domain )" +SLOT="0" +KEYWORDS="~amd64" + +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND="test? ( media-libs/flac )" + +TESTCASES=( + dr_flac_seeking.c + dr_flac_{decoding,test_0}.{c,cpp} +) + +S="${WORKDIR}/dr_libs-${COMMITS[dr_flac]}" + +src_unpack() { + default + unpack "${FILESDIR}"/${P}-docs.tar.xz +} + +src_prepare() { + if use test; then + # Remove some unused parts of the source tree that could contribute different + # (but acceptable) license terms if they were used—just to prove that we do not + # use them. + rm -rv old || die + + # Sanitize testbench and move to expected location + find "${WORKDIR}"/flac-test-files-${COMMITS[testbench]}/subset -type f \ + \! -name "*.flac" -delete || die + mv -T "${WORKDIR}"/flac-test-files-${COMMITS[testbench]}/subset \ + tests/testvectors/flac/testbench || die + + # Disable profiling tests as they are not relevant downstream. + for tcase in ${TESTCASES[@]}; do + sed -i "s/doProfiling = DRFLAC_TRUE/doProfiling = DRFLAC_FALSE/" \ + tests/flac/$tcase || die "sed failed on tests/flac/$tcase" + done + + fi + default +} + +src_compile() { + if use test; then + local MY_{C,CC,CXX,BUILD,FLAGS} + MY_CC=$(tc-getCC) + MY_CXX=$(tc-getCXX) + + pushd tests > /dev/null || die + for tcase in ${TESTCASES[@]}; do + einfo "Compiling test case ${tcase}." + case ${tcase} in + *.cpp) + MY_C=${MY_CXX} + MY_FLAGS=${CXXFLAGS} + ;; + *.c) + MY_C=${MY_CC} + MY_FLAGS=${CFLAGS} + ;; + *) + die "Unknown test case ${tcase}" + ;; + esac + MY_BUILD="${MY_C} flac/${tcase} -o bin/${tcase} ${MY_FLAGS} ${CPPFLAGS}" + case ${tcase%.*} in + dr_flac_seeking) + ;& + dr_flac_decoding) + MY_BUILD="${MY_BUILD} -lFLAC ${LDFLAGS}" + ;; + *) + ;; + esac + ${MY_BUILD} || die "Build failed: ${MY_BUILD}" + done + popd || die + fi +} + +src_test() { + pushd tests > /dev/null || die + for tcase in ${TESTCASES[@]}; do + einfo "Running test case ${tcase}." + ./bin/${tcase} || die "Test case ${tcase} failed." + done + popd || die +} + +src_install() { + einstalldocs + if use test; then + doheader dr_flac.h + else + newheader "${DISTDIR}"/${P}.h dr_flac.h + fi +} diff --git a/media-libs/dr_flac/files/dr_flac-0.12.41-docs.tar.xz b/media-libs/dr_flac/files/dr_flac-0.12.41-docs.tar.xz new file mode 100644 index 0000000000..d0164f263a Binary files /dev/null and b/media-libs/dr_flac/files/dr_flac-0.12.41-docs.tar.xz differ diff --git a/media-libs/dr_flac/metadata.xml b/media-libs/dr_flac/metadata.xml new file mode 100644 index 0000000000..6b41d45a1f --- /dev/null +++ b/media-libs/dr_flac/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>watermanpa...@posteo.net</email> + <name>Lucio Sauer</name> + </maintainer> + <upstream> + <remote-id type="github">mackron/dr_libs</remote-id> + </upstream> +</pkgmetadata>