mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-08 22:45:43 +00:00
134 lines
6.9 KiB
Bash
134 lines
6.9 KiB
Bash
# Maintainer: David Runge <dvzrv@archlinux.org>
|
|
# Contributor: Ainola
|
|
# Contributor: speps
|
|
# Contributor: Bernardo Barros
|
|
|
|
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
|
|
# - disable NEON
|
|
# - disable java interface
|
|
# - skip aarch64 - incompatible with beta luajit
|
|
|
|
buildarch=22
|
|
|
|
pkgbase=csound
|
|
pkgname=('csound' 'csound-doc')
|
|
pkgver=6.14.0
|
|
pkgrel=5
|
|
pkgdesc="A 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' 'boost' 'cmake' 'doxygen' 'dssi' 'eigen' 'faust' 'fltk'
|
|
'fluidsynth' 'hdf5' 'jack' 'java-environment' 'ladspa' 'libmusicxml'
|
|
'libsamplerate' 'libsndfile' 'libwebsockets' 'abletonlink' 'llvm' 'lua' 'openssl'
|
|
'portaudio' 'portmidi' 'portsmf' 'stk' 'swig' 'wiiuse')
|
|
checkdepends=('cunit')
|
|
source=("${pkgbase}-${pkgver}.tar.gz::https://github.com/${pkgbase}/${pkgbase}/archive/${pkgver}.tar.gz"
|
|
"${pkgbase}-6.14.0-hdf5-1.12.0.patch::https://github.com/csound/csound/pull/1314/commits/de4a066566430e8742989dc41638242f5d07fa04.patch"
|
|
"${pkgbase}-6.14.0-gcc10.patch::https://github.com/csound/csound/commit/c444e8f752c3acc31d364b901204e09eae2e791e.patch"
|
|
"${pkgbase}.sh"
|
|
"https://github.com/${pkgbase}/${pkgbase}/releases/download/${pkgver}/Csound${pkgver}_manual_html.zip"
|
|
"https://github.com/${pkgbase}/${pkgbase}/releases/download/${pkgver}/Csound${pkgver}_manual_pdf.zip")
|
|
sha512sums=('fc9eb1fc1b5cdbff88ebaa3500996938693481be2e9eead9193524878d1eb6ddd08dbe224892f7c24456e510c8c30e89aaeee8d090759b518994008cdeec9efd'
|
|
'5086419f4d41b69a70308a6f540720baaef76e778564d9aa33a57e0a0f4f6c436a66dd071a8721b672ef36f8f3f73d881957fa39b95caf88534290157a5f8e75'
|
|
'9c1b4927d840ebec6c5bdd74a350f1dd5b36824df9d8f3288f7530bee4ea3aa973a0eeb82dfd03fbb09ba42f0d575936b7ef912140dd5f1f8a65d0f64f0fe890'
|
|
'53a8ae1e61db2a3a492930ef0f0881b613ae47108c5e8de0a6e2aa28bcf7a5c93c7fea8b7fc2bbae29ab92e1e68bf94ba406be1255ad8ab5725ea9078c1fd6dc'
|
|
'638ecd8bc0b4c981e1f8c5592a123a3b1bb5582ee7017288be224eb670fccda79242ae42b6f6d8e91c2ad2f708af1de3c66283030d4b3373c0ec29ec260f379b'
|
|
'55769acd58add0ec6df5e188c74e16424deb679aebdbdd50dc5d9006c80a26c31dfe2564e5d71478abcb7a920b40c1f1baa02e4c3fd682a6d3bbc378ddcb8b7d')
|
|
b2sums=('6e41fdc3db75f886e0c582ce0877411898eacf31a26da73d018be4ffa69f99da55a13434d99ae8a4f6f028766f83fdd3b8537b45ea9057cb971619677c1876df'
|
|
'fd779cdf880d7eafec815fe2755fc936ec0e77b890ec64c71d854036f846ecaf7d380e1738e573e6e20e0239eba641a77d5562134fc1a26e7215480aa1d15186'
|
|
'f2a91a3fb9b660b3f1eedd29673ad93d46ae9611767f060fa0db06e3f595433534f3a91c6182466af7ab75099ba25bc6f7d8a4df6d7b42458e05b1b2b5a9befd'
|
|
'8a556685d0f9ee55c4de521b3d76fc729936e98e991e8ea860d64b29a1b09d142ab0a51548b2dddadb41ecb796e84ba1f8ed114494b4c67d7d6d8ab3475b2ede'
|
|
'9565c21623a60e06aae82bfbde186e496b5f3ae0eb619289a7db08235c7dcd520bee2283552fdf2ddb4eb85c7b0f184397d2fa0ee14d3bdeff9dccb44a7d7ff1'
|
|
'a91a3689dd3efa5c32c924178b646b73787132a07575f05a65ee1acafc69108ce6c33512e0b703012f75f201a86a0b84e08976f158b01ef5201807d1aaa31c35')
|
|
|
|
prepare() {
|
|
# fix file permissions in html manual
|
|
find html/ -type f -exec chmod -c 644 {} \;
|
|
cd "${pkgbase}-${pkgver}"
|
|
# adding patch for hdf5 API changes:
|
|
# https://github.com/csound/csound/issues/1313
|
|
patch -Np1 -i "../${pkgbase}-6.14.0-hdf5-1.12.0.patch"
|
|
# fix linking with gcc >= 10
|
|
patch -Np1 -i "../${pkgbase}-6.14.0-gcc10.patch"
|
|
}
|
|
|
|
build() {
|
|
local _java_major=$(java --version 2>/dev/null |grep 'openjdk'| cut -d ' ' -f2| cut -d '.' -f1)
|
|
cd "${pkgbase}-${pkgver}"
|
|
# without CMAKE_BUILD_TYPE=Release, csound is build as beta: https://bugs.archlinux.org/task/63348
|
|
# 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 \
|
|
-DBUILD_ABLETON_LINK_OPCODES=ON \
|
|
-DABLETON_LINK_HOME=/usr/include/ableton \
|
|
-W no-dev \
|
|
-B build \
|
|
-S .
|
|
make VERBOSE=1 -C build
|
|
}
|
|
|
|
check() {
|
|
cd "${pkgbase}-${pkgver}"
|
|
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'
|
|
'csoundqt: for frontend/ editor with integrated help'
|
|
'fltk: for libvirtual and libwidgets plugins'
|
|
'hdf5: for hdf5ops plugin'
|
|
'java-runtime: java integration'
|
|
'faust: for libfaustcsound plugin'
|
|
'fluidsynth: for libfluidOpcodes plugin'
|
|
'jack: for libjacko, librtjack and libjackTransport plugins'
|
|
'liblo: for libosc plugin'
|
|
'ncurses: for libfaustcsound plugin'
|
|
'libpng: for libimage 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'
|
|
'vim-csound: vim integration'
|
|
'zlib: for libfaustcsound plugin')
|
|
provides=('libcsound64.so' 'libcsnd6.so')
|
|
cd "${pkgname}-${pkgver}"
|
|
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() {
|
|
license=('LGPL2.1' 'GPL')
|
|
install -vDm 644 "${srcdir}/Csound${pkgver}_manual.pdf" \
|
|
"${pkgdir}/usr/share/doc/${pkgname}/${pkgbase}-manual.pdf"
|
|
install -dv "${pkgdir}/usr/share/doc/${pkgname}/html"
|
|
cp -av "${srcdir}/html/"* "${pkgdir}/usr/share/doc/${pkgname}/html"
|
|
}
|
|
# vim:set ts=2 sw=2 et:
|