PKGBUILDs/extra/openal/PKGBUILD
2022-02-07 03:31:14 +00:00

74 lines
1.9 KiB
Bash

# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: Jason Chu <jchu@xentac.net>
# remove when bumped upstream
pkgbase=openal
pkgname=(openal openal-examples)
pkgver=1.21.1
pkgrel=2.1
pkgdesc="Cross-platform 3D audio library, software implementation"
arch=(x86_64)
url="https://github.com/kcat/openal-soft"
license=(LGPL)
depends=(gcc-libs)
makedepends=(alsa-lib libpulse fluidsynth portaudio jack qt5-base sdl2
libsndfile ffmpeg libmysofa git cmake ninja)
optdepends=('qt5-base: alsoft-config GUI Configurator'
'fluidsynth: MIDI rendering'
'libmysofa: makemhr tool')
_commit=ae4eacf147e2c2340cc4e02a790df04c793ed0a9 # tags/1.21.1
source=("git+https://github.com/kcat/openal-soft#commit=$_commit")
sha512sums=('SKIP')
pkgver() {
cd openal-soft
git describe --tags | sed 's/^openal-soft-//;s/-/+/g'
}
prepare() {
cd openal-soft
# Missing include
git cherry-pick -n 302e88dbf0f10224a5b87be4ce43b3fdd9d20184
# https://bugs.archlinux.org/task/72729
git cherry-pick -n b7ff1de48efda9ad54e6a3b4c1526722c371e832
}
build() {
cmake -S openal-soft -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_LIBDIR=lib
cmake --build build
}
_pick() {
local p="$1" f d; shift
for f; do
d="$srcdir/$p/${f#$pkgdir/}"
mkdir -p "$(dirname "$d")"
mv "$f" "$d"
rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")"
done
}
package_openal() {
provides+=(libopenal.so)
DESTDIR="$pkgdir" cmake --install build
install -Dt "$pkgdir/usr/share/doc/openal" -m644 openal-soft/docs/*
cd "$pkgdir"
_pick examples usr/bin/al{ffplay,hrtf,latency,loopback,multireverb}
_pick examples usr/bin/al{play,record,reverb,stream,tonegen}
}
package_openal-examples() {
pkgdesc+=" (example programs)"
depends=("openal=$pkgver-$pkgrel" sdl2 libsndfile ffmpeg)
optdepends=()
mv examples/* "$pkgdir"
}