community/supercollider to 3.10.0-1

This commit is contained in:
Kevin Mihelich 2018-11-28 21:50:17 +00:00
parent 0d24f10718
commit 96f7b7f7ef
2 changed files with 100 additions and 18 deletions

View file

@ -7,55 +7,62 @@
_name=SuperCollider
pkgname=supercollider
pkgver=3.9.3
pkgrel=5
pkgver=3.10.0
pkgrel=1
pkgdesc="Environment and programming language for real time audio synthesis and algorithmic composition"
arch=('x86_64')
url="https://supercollider.github.io"
license=('GPL3')
groups=('pro-audio')
depends=('boost-libs' 'desktop-file-utils' 'fftw' 'jack' 'qt5-webkit' 'yaml-cpp')
depends=('boost-libs' 'desktop-file-utils' 'fftw' 'jack' 'qt5-svg' 'qt5-webengine' 'qt5-webkit' 'qt5-websockets' 'yaml-cpp')
makedepends=('boost' 'cmake' 'emacs' 'qt5-tools')
optdepends=('emacs: emacs interface'
'gedit: gedit interface'
'sc3-plugins: additional extension plugins for scsynth')
source=("https://github.com/${pkgname}/${pkgname}/releases/download/Version-${pkgver}/${_name}-${pkgver}-Source-linux.tar.bz2"
'boost-1.67.patch')
'boost-1.67.patch'
'use-system-boost.patch'
)
install="${pkgname}.install"
sha512sums=('5b0c29941907d5ca45c1676e34184664c03891051bba0ee50d9e8311400824054de7b6daba6d29fd875ff38f42ee9654504ea2f0b5bf0a36ae9605e6a79a0841'
'9980d77802f18fd56d2a13f24f070e81768d9111b2cc63e479a0e9b405a04aec28bc523e5d36aab0462af6a3831d64598470cdc6c3266431e2ca64aa427a6bf2')
sha512sums=('5670f0264329f0e90ed9c1b5bf63853fd67cd83ad48e2d96979ca548ed42265105d766e7fbb51839cb7b917a687929080e7c42f1c0baf3eb36a5365dee4b12bb'
'9980d77802f18fd56d2a13f24f070e81768d9111b2cc63e479a0e9b405a04aec28bc523e5d36aab0462af6a3831d64598470cdc6c3266431e2ca64aa427a6bf2'
'5e42f64e5e08ca9e03870e662b6694a0c41f4ab2e6522c8d2aade617a68b4455dc1932a18de18176a9ed9fc89e36f1f1ec76d3e3ff8322d0d1e8ae6fb85cbce9')
prepare() {
mv -v "${_name}-Source" "${pkgname}-${pkgver}"
cd "${pkgname}-${pkgver}"
# supernova build:
# https://github.com/supercollider/supercollider/issues/3981
patch -Np1 -i ../boost-1.67.patch
# make sure the system boost headers are used
# make sure system boost is used
# https://github.com/supercollider/supercollider/issues/4096
rm -r external_libraries/boost
# fixing fundamental mathmatical problems:
# https://github.com/supercollider/supercollider/issues/4116
sed -e 's/-ffast-math/-fno-math-errno -fno-signaling-nans/' \
-i CMakeLists.txt
# requires out-of-tree build
mkdir -v bld
patch -Np1 -i ../use-system-boost.patch
mkdir -v build
}
build() {
cd "${pkgname}-${pkgver}/bld"
cd "${pkgname}-${pkgver}/build"
cmake .. -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DLIBSCSYNTH=ON \
-DFORTIFY=ON \
-DSYSTEM_BOOST=ON \
-DSYSTEM_YAMLCPP=ON \
-DSYSTEM_BOOST=ON \
-DSC_VIM=OFF \
-DSSE=OFF -DSSE2=OFF -DSUPERNOVA=OFF -DNOVA_SIMD=ON -DNATIVE=OFF \
-DCMAKE_C_FLAGS="${CFLAGS}"
make
make VERBOSE=1
}
## too many tests dependent on X11:
## https://github.com/supercollider/supercollider/issues/3555
#check() {
# cd "${pkgname}-${pkgver}/build"
# make test ARGS="-V"
#}
package() {
cd "${pkgname}-${pkgver}/bld"
cd "${pkgname}-${pkgver}/build"
make DESTDIR="${pkgdir}" install
install -t "${pkgdir}/usr/share/doc/${pkgname}/" \
-vDm 644 ../{AUTHORS,{CHANGELOG,README,README_LINUX}.md}

View file

@ -0,0 +1,75 @@
diff -ruN a/editors/sc-ide/CMakeLists.txt b/editors/sc-ide/CMakeLists.txt
--- a/editors/sc-ide/CMakeLists.txt 2018-09-25 01:20:49.000000000 +0200
+++ b/editors/sc-ide/CMakeLists.txt 2018-11-28 15:53:19.827910183 +0100
@@ -219,7 +219,6 @@
include_directories(${CMAKE_SOURCE_DIR}/include/common)
include_directories(${CMAKE_SOURCE_DIR}/common)
include_directories(${CMAKE_SOURCE_DIR}/include/plugin_interface)
-include_directories(${CMAKE_SOURCE_DIR}/external_libraries/boost)
include_directories(${YAMLCPP_INCLUDE_DIR})
# For QtCollider headers:
include_directories(${CMAKE_SOURCE_DIR})
@@ -304,6 +303,7 @@
else()
# in-house-built boost system
target_link_libraries( SuperCollider boost_system boost_filesystem )
+ include_directories(${CMAKE_SOURCE_DIR}/external_libraries/boost)
endif()
if(APPLE)
diff -ruN a/external_libraries/CMakeLists.txt b/external_libraries/CMakeLists.txt
--- a/external_libraries/CMakeLists.txt 2018-08-28 03:12:47.000000000 +0200
+++ b/external_libraries/CMakeLists.txt 2018-11-28 17:39:57.981205691 +0100
@@ -74,6 +74,14 @@
PROPERTY FOLDER 3rdparty
)
+ #oscpack
+ add_library(oscpack STATIC EXCLUDE_FROM_ALL "oscpack_build.cpp")
+ target_include_directories(oscpack PRIVATE boost)
+ target_include_directories(oscpack INTERFACE oscpack_1_1_0 )
+else()
+ #oscpack
+ add_library(oscpack STATIC EXCLUDE_FROM_ALL "oscpack_build.cpp")
+ target_include_directories(oscpack INTERFACE oscpack_1_1_0 )
endif()
# tlsf
@@ -82,11 +90,6 @@
target_include_directories( tlsf INTERFACE TLSF-2.4.6/src )
set_property(TARGET tlsf PROPERTY POSITION_INDEPENDENT_CODE TRUE)
-#oscpack
-add_library(oscpack STATIC EXCLUDE_FROM_ALL "oscpack_build.cpp")
-target_include_directories(oscpack PRIVATE boost)
-target_include_directories(oscpack INTERFACE oscpack_1_1_0 )
-
if(LTO)
set_property(TARGET oscpack tlsf
@@ -104,7 +107,11 @@
CREATE_FINAL_FILE(${CMAKE_CURRENT_BINARY_DIR}/libyamlcpp.cpp ${yaml_src})
add_library(yaml STATIC EXCLUDE_FROM_ALL ${CMAKE_CURRENT_BINARY_DIR}/libyamlcpp.cpp)
- target_include_directories(yaml PUBLIC ${CMAKE_SOURCE_DIR}/external_libraries/yaml-cpp/include boost)
+ if(Boost_FOUND)
+ target_include_directories(yaml PUBLIC ${Boost_INCLUDE_DIRS})
+ else()
+ target_include_directories(yaml PUBLIC ${CMAKE_SOURCE_DIR}/external_libraries/yaml-cpp/include boost)
+ endif()
set_property( TARGET yaml PROPERTY FOLDER 3rdparty )
set(YAMLCPP_LIBRARY yaml)
set(YAMLCPP_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/external_libraries/yaml-cpp/include)
diff -ruN a/testsuite/server/CMakeLists.txt b/testsuite/server/CMakeLists.txt
--- a/testsuite/server/CMakeLists.txt 2018-08-28 03:12:47.000000000 +0200
+++ b/testsuite/server/CMakeLists.txt 2018-11-28 16:24:08.449255929 +0100
@@ -5,4 +5,8 @@
endif()
add_library(boost_test STATIC boost_test.cpp)
-target_include_directories(boost_test PUBLIC ${CMAKE_SOURCE_DIR}/external_libraries/boost)
+if (Boost_FOUND)
+ target_include_directories(boost_test PUBLIC ${Boost_INCLUDE_DIRS})
+else()
+ target_include_directories(boost_test PUBLIC ${CMAKE_SOURCE_DIR}/external_libraries/boost)
+endif()