mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-18 22:54:00 +00:00
143 lines
5.7 KiB
Bash
143 lines
5.7 KiB
Bash
# Maintainer: David Runge <dvzrv@archlinux.org>
|
|
# Maintainer: Brett Cornwall <ainola@archlinux.org>
|
|
# Contributor: speps
|
|
# Contributor: Bernardo Barros
|
|
|
|
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
|
|
# - disable NEON
|
|
# - disable java interface
|
|
# - skip aarch64 - incompatible with beta luajit
|
|
|
|
buildarch=4
|
|
|
|
pkgbase=csound
|
|
pkgname=(csound csound-doc)
|
|
pkgver=6.18.0
|
|
_manual_pkgver=6.17.0
|
|
pkgrel=1
|
|
pkgdesc="Programming language for sound rendering and signal processing"
|
|
arch=(x86_64)
|
|
url="https://csound.com"
|
|
license=(LGPL2.1)
|
|
# libpd needs to be packaged: https://github.com/libpd/libpd/releases
|
|
# gmm > 5.1 breaks linear-algebra opcode: https://github.com/csound/csound/issues/920
|
|
makedepends=(
|
|
alsa-lib
|
|
cmake
|
|
doxygen
|
|
dssi
|
|
fluidsynth
|
|
hdf5
|
|
jack
|
|
java-environment
|
|
ladspa
|
|
libmusicxml
|
|
libsamplerate
|
|
libsndfile
|
|
libwebsockets
|
|
llvm
|
|
lua
|
|
openssl
|
|
portaudio
|
|
portmidi
|
|
portsmf
|
|
python
|
|
stk
|
|
strip-nondeterminism
|
|
swig
|
|
wiiuse
|
|
)
|
|
checkdepends=(cunit)
|
|
options=(debug)
|
|
source=("${pkgbase}-${pkgver}.tar.gz::https://github.com/${pkgbase}/${pkgbase}/archive/${pkgver}.tar.gz"
|
|
"${pkgbase}.sh"
|
|
"https://github.com/${pkgbase}/${pkgbase}/releases/download/${_manual_pkgver}/Csound${_manual_pkgver}_manual_html.zip"
|
|
"https://github.com/${pkgbase}/${pkgbase}/releases/download/${_manual_pkgver}/Csound${_manual_pkgver}_manual_pdf.zip")
|
|
sha512sums=('6bc76549a000b2d3f94c07a3bcddf69358affd0d8612495bedb5a1b92216f0fc2b13b5c1255068753d42a42bda45a26b9fc755d4182cb848791fe1da727d4b3d'
|
|
'53a8ae1e61db2a3a492930ef0f0881b613ae47108c5e8de0a6e2aa28bcf7a5c93c7fea8b7fc2bbae29ab92e1e68bf94ba406be1255ad8ab5725ea9078c1fd6dc'
|
|
'ff2098828e51e78aa80b10736ea162d90c0b1bef3265e469951a5df63250d283e852490cb2a6599dcb1b8a5c185cf4f0b9534f501e4cb755b9da67ecfb1f4ba6'
|
|
'bf664bab1dec073b48853ccf7519086c55ad74af33db86ac7f95746231c18fb10d46a485047788050094e412d27bbd0df65e238d31b01b435989f2fd734189a6')
|
|
b2sums=('60f296a8d1ceaa06ac8b7c216311470e56351ae51a099b97d6be63cf7c57fa724381a64cde7994a9ad5dfc5184e1befb15464c27b4f165eb7c682ebd9e41614e'
|
|
'8a556685d0f9ee55c4de521b3d76fc729936e98e991e8ea860d64b29a1b09d142ab0a51548b2dddadb41ecb796e84ba1f8ed114494b4c67d7d6d8ab3475b2ede'
|
|
'3148a60a398d49d6932864d84b2ee37ddf86d5389b91c99443b2c64f7c3b270d040b83ac88b80ebc772c198223682452da1618391fcc8963fe63151b7837037e'
|
|
'c0210f2fb97a6707ae6cd0a0cf38cd374f4d4c973b188ee8d418a7efd5c98dc1d4e61867de021ed2859bd8264cc0876b46deb565c358b6efea42f471d39671a9')
|
|
|
|
prepare() {
|
|
# fix file permissions in html manual
|
|
find html/ -type f -exec chmod -c 644 {} \;
|
|
}
|
|
|
|
build() {
|
|
local _java_major=$(java --version 2>/dev/null |grep 'openjdk'| cut -d ' ' -f2| cut -d '.' -f1)
|
|
# it's not allowed to redistribute the scansyn opcodes: https://github.com/csound/csound/issues/1148
|
|
# the python plugin is not python3 compatible: https://github.com/csound/csound/issues/631
|
|
cmake -DCMAKE_INSTALL_PREFIX=/usr \
|
|
-DCMAKE_BUILD_TYPE=None \
|
|
-DBUILD_SCANSYN_OPCODES=OFF \
|
|
-DCMAKE_CXX_FLAGS="-Wno-error -Wno-missing-field-initializers -DPFFFT_SIMD_DISABLE" \
|
|
-DCMAKE_C_FLAGS="-Wno-error -Wno-missing-field-initializers -DPFFFT_SIMD_DISABLE" \
|
|
-DBUILD_JAVA_INTERFACE=0 \
|
|
-DJAVA_AWT_LIBRARY="/usr/lib/jvm/java-${_java_major}-openjdk/jre/lib/libawt.so" \
|
|
-DJAVA_JVM_LIBRARY="/usr/lib/jvm/java-${_java_major}-openjdk/jre/lib" \
|
|
-DLUA_LIBRARY=/usr/lib/liblua.so \
|
|
-DBUILD_STATIC_LIBRARY=ON \
|
|
-W no-dev \
|
|
-B build \
|
|
-S "${pkgbase}-${pkgver}"
|
|
make VERBOSE=1 -C build
|
|
# For reproducibility (See https://bugs.archlinux.org/task/70331)
|
|
find build -name '*.jar' -exec strip-nondeterminism {} +
|
|
}
|
|
|
|
check() {
|
|
make test -C build
|
|
}
|
|
|
|
package_csound() {
|
|
groups=(pro-audio)
|
|
depends=(gcc-libs glibc libcurl.so libsamplerate.so libsndfile.so)
|
|
optdepends=('alsa-lib: for librtalsa plugin'
|
|
'csound-doc: for the canonical Csound Reference Manual'
|
|
'csound-plugins: for additional opcodes'
|
|
'csoundqt: for frontend/ editor with integrated help'
|
|
'hdf5: for hdf5ops plugin'
|
|
'java-runtime: java integration'
|
|
'fluidsynth: for libfluidOpcodes plugin'
|
|
'jack: for libjacko, librtjack and libjackTransport plugins'
|
|
'liblo: for libosc plugin'
|
|
'ncurses: for libfaustcsound plugin'
|
|
'portmidi: for libpmidi plugin'
|
|
'portaudio: for librtpa plugin'
|
|
'libpulse: for librtpulse plugin'
|
|
'stk: for libstkops plugin'
|
|
'libwebsockets: for libwebsocketIO plugin'
|
|
'wiiuse: for libwiimote plugin'
|
|
'libx11: for libwidgets plugin'
|
|
'lua: for LUA integration'
|
|
'openssl: for libfaustcsound plugin'
|
|
'python-numpy: For Csound Python bindings'
|
|
'vim-csound: vim integration'
|
|
'zlib: for libfaustcsound plugin')
|
|
provides=(libcsound64.so libcsnd6.so)
|
|
|
|
make VERBOSE=1 DESTDIR="${pkgdir}/" install -C build
|
|
|
|
# export vars in profile.d
|
|
install -vDm 755 "${srcdir}/${pkgname}.sh" -t "${pkgdir}/etc/profile.d/"
|
|
# rename extract executable due to name conflict with libextractor
|
|
# https://github.com/csound/csound/issues/985
|
|
mv -v "${pkgdir}/usr/bin/extract" "${pkgdir}/usr/bin/${pkgname}-extract"
|
|
# moving csnd6.jar to /usr/share/java
|
|
#install -vdm 755 "${pkgdir}/usr/share/java/"
|
|
#mv -v "${pkgdir}/usr/lib/"*.jar "${pkgdir}/usr/share/java/"
|
|
}
|
|
|
|
package_csound-doc() {
|
|
pkgdesc+=" - documentation"
|
|
|
|
install -vDm 644 Csound${_manual_pkgver}_manual.pdf "${pkgdir}/usr/share/doc/${pkgname}/${pkgbase}-manual.pdf"
|
|
|
|
install -dv "${pkgdir}/usr/share/doc/${pkgname}/html"
|
|
cp -av html/* "${pkgdir}/usr/share/doc/${pkgname}/html/"
|
|
}
|
|
# vim:set ts=2 sw=2 et:
|