commit:     2ac693cb42dfc872a451cc77a09818aa001e4e58
Author:     Lucio Sauer <watermanpaint <AT> posteo <DOT> net>
AuthorDate: Fri Mar  1 23:08:05 2024 +0000
Commit:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Fri Mar  1 23:08:05 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=2ac693cb

media-libs/dr_wav: add 0.13.16

Signed-off-by: Lucio Sauer <watermanpaint <AT> posteo.net>

 media-libs/dr_wav/Manifest              |   1 +
 media-libs/dr_wav/dr_wav-0.13.16.ebuild | 106 ++++++++++++++++++++++++++++++++
 2 files changed, 107 insertions(+)

diff --git a/media-libs/dr_wav/Manifest b/media-libs/dr_wav/Manifest
index 10943227fd..04a0baf47d 100644
--- a/media-libs/dr_wav/Manifest
+++ b/media-libs/dr_wav/Manifest
@@ -1 +1,2 @@
 DIST dr_wav-0.13.15.gh.tar.gz 518698 BLAKE2B 
9598008c392fcb24448f15771bb47e6479c99b529164e28af00600d3eb7066ffb49f328bcaca88cb89ac0348551ff60cbf9c965d1f39e460319a0867b4141821
 SHA512 
8d6b8324db7a0864b1c264a1aea7f29eb282f726aa2d6ba8be8fb27892dd7c3c047b3b669bcc9744e52b4fb57899437bb42ba17b5cefd3520c98cb17570e68dd
+DIST dr_wav-0.13.16.gh.tar.gz 518698 BLAKE2B 
9598008c392fcb24448f15771bb47e6479c99b529164e28af00600d3eb7066ffb49f328bcaca88cb89ac0348551ff60cbf9c965d1f39e460319a0867b4141821
 SHA512 
8d6b8324db7a0864b1c264a1aea7f29eb282f726aa2d6ba8be8fb27892dd7c3c047b3b669bcc9744e52b4fb57899437bb42ba17b5cefd3520c98cb17570e68dd

diff --git a/media-libs/dr_wav/dr_wav-0.13.16.ebuild 
b/media-libs/dr_wav/dr_wav-0.13.16.ebuild
new file mode 100644
index 0000000000..79ac1a95ca
--- /dev/null
+++ b/media-libs/dr_wav/dr_wav-0.13.16.ebuild
@@ -0,0 +1,106 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo toolchain-funcs
+
+DESCRIPTION="Single-header WAV audio loader and writer library"
+HOMEPAGE="https://github.com/mackron/dr_libs/";
+COMMIT="e4a7765e598e9e54dc0f520b7e4416359bee80cc"
+SRC_URI="https://github.com/mackron/dr_libs/archive/${COMMIT}.tar.gz -> 
${P}.gh.tar.gz"
+
+LICENSE="|| ( MIT-0 public-domain )"
+SLOT="0"
+KEYWORDS="~amd64"
+
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="test? ( media-libs/libsndfile )"
+
+TESTCASES=(
+       dr_wav_encoding.c
+       dr_wav_{decoding,test_0}.{c,cpp}
+)
+
+S="${WORKDIR}/dr_libs-${COMMIT}"
+
+src_prepare() {
+       if use test; then
+               # Unbundle library with incorrect include path.
+               sed -i 
's,"../../../miniaudio/miniaudio.h",<miniaudio/miniaudio.h>,' \
+                       tests/wav/dr_wav_playback.c || die
+               # Disable profiling tests as they are not relevant downstream.
+               sed -i 's/doProfiling = DRWAV_TRUE/doProfiling = DRWAV_FALSE/' \
+                       tests/wav/dr_wav_decoding.c || die
+               # Test cases dr_wav_{en,de}coding.{c,cpp} write and read a file 
from a
+               # missing directory.
+               mkdir tests/testvectors/wav/tests || die
+       fi
+
+       awk '/Introduction/,/\*\//' dr_wav.h | sed '$d' > README.md
+       assert
+       awk '/REVISION HISTORY/,/\*\//' dr_wav.h | sed '$d' > CHANGELOG
+       assert
+       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
+                       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} wav/${tcase} -o bin/${tcase} 
${MY_FLAGS} ${CPPFLAGS}"
+                       case ${tcase%.*} in
+                               dr_wav_encoding)
+                                       MY_BUILD="${MY_BUILD} -lm ${LDFLAGS}"
+                                       ;;
+                               *)
+                                       ;;
+                       esac
+                       edo ${MY_BUILD}
+               done
+               popd || die
+       fi
+}
+
+src_test() {
+       local MY_RUN
+
+       pushd tests || die
+       for tcase in ${TESTCASES[@]}; do
+               MY_RUN="./bin/${tcase}"
+               case ${tcase%.*} in
+                       dr_wav_encoding)
+                               MY_RUN="${MY_RUN} 
testvectors/wav/tests/test_encode_gentoo"
+                               ;;
+                       *)
+                               ;;
+               esac
+               edo ${MY_RUN}
+       done
+       popd || die
+}
+
+src_install() {
+       einstalldocs
+       doheader dr_wav.h
+}

Reply via email to