media-sound/supercollider: Drop 3.10.2

Closes: https://bugs.gentoo.org/703464
Closes: https://bugs.gentoo.org/716378
Package-Manager: Portage-2.3.101, Repoman-2.3.22
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
This commit is contained in:
Andreas Sturmlechner
2020-06-22 22:14:25 +02:00
parent 317ed88755
commit 75ab45b2ca
5 changed files with 0 additions and 566 deletions

View File

@@ -1,2 +1 @@
DIST SuperCollider-3.10.2-Source-linux.tar.bz2 11366481 BLAKE2B d01324ed65f7e8977c138709471e7b9000b1d05ce4c1c0ff83c9ca0ae6e3948b4933320c382b64ecd2aebc65597c963c9348dda09a8c2ec7bc2ea5a14473fe44 SHA512 f7d136cb03e32dfd0b72e36047deaa24d5edfac0f7e9eeaac35f8e991cd52b00db0701478e0daefb24bfbbc55b5cf240e3f3429fd46caa8d76daa21c7aebaf46
DIST SuperCollider-3.11.0-Source.tar.bz2 18125654 BLAKE2B f73f2a75a132a4c3a3010ab093929a7aa6a1b534fe70115acd336a22ac8c6482ab6aef93c01f5d738bdd4504c75b1461dc555af9fdab8de8b16bd68a6854336f SHA512 64fef4d751436337baf40ced068a496d3e9221f751dcde7bfc2857a79c094764dff814d1c0cf519380053ddcfdb2c3f2b8eb787d3cff03e522c19fd95951b1da

View File

@@ -1,27 +0,0 @@
From de567f9104af2b7b86d0de2f25eeb091a95e8579 Mon Sep 17 00:00:00 2001
From: Tristan de Cacqueray <tristanC@wombatt.eu>
Date: Sun, 9 Jun 2019 02:16:49 +0000
Subject: [PATCH] Fix compilation with boost-1.67
When using a system boost version >1.67, the compilation fails because of:
server/supernova/./utilities/time_tag.hpp: In member function 'boost::posix_time::ptime nova::time_tag::to_ptime() const':
supernova/./utilities/time_tag.hpp:232:102: error: no matching function for call to 'boost::date_time::subsecond_duration<boost::posix_time::time_duration, 1000000>::subsecond_duration(double)'
232 | time_duration offset = seconds(get_secs() - ntp_offset) + microseconds(get_nanoseconds()/1000);
---
server/supernova/utilities/time_tag.hpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/server/supernova/utilities/time_tag.hpp b/server/supernova/utilities/time_tag.hpp
index 0f49955fd3..c1bb0e73cb 100644
--- a/server/supernova/utilities/time_tag.hpp
+++ b/server/supernova/utilities/time_tag.hpp
@@ -179,7 +179,8 @@ class time_tag {
#ifdef BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG
time_duration offset = seconds(get_secs() - ntp_offset) + nanoseconds(get_nanoseconds());
#else
- time_duration offset = seconds(get_secs() - ntp_offset) + microseconds(get_nanoseconds()/1000);
+ time_duration offset =
+ seconds(get_secs() - ntp_offset) + microseconds(static_cast<long>(get_nanoseconds() / 1000));
#endif
return ptime(base, offset);
}

View File

@@ -1,53 +0,0 @@
From ea95d667907e1c9d4ee3ad8b33b452d60059e3c8 Mon Sep 17 00:00:00 2001
From: Andreas Sturmlechner <asturm@gentoo.org>
Date: Tue, 16 Jul 2019 17:30:38 +0200
Subject: [PATCH] Fix build with boost-1.70 (get_io_service() removed)
Fixes https://github.com/supercollider/supercollider/issues/4490
---
server/supernova/sc/sc_osc_handler.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/server/supernova/sc/sc_osc_handler.cpp b/server/supernova/sc/sc_osc_handler.cpp
index 5116a1be8..8c2418b09 100644
--- a/server/supernova/sc/sc_osc_handler.cpp
+++ b/server/supernova/sc/sc_osc_handler.cpp
@@ -728,7 +728,7 @@ void sc_osc_handler::tcp_connection::handle_message() {
void sc_osc_handler::start_tcp_accept(void)
{
- tcp_connection::pointer new_connection = tcp_connection::create(tcp_acceptor_.get_io_service());
+ tcp_connection::pointer new_connection = tcp_connection::create((boost::asio::io_context&)tcp_acceptor_.get_executor().context());
tcp_acceptor_.async_accept(
new_connection->socket(),
--
2.22.0
From 53909b1ff2983442dd8d2fdeff6b4331767237f1 Mon Sep 17 00:00:00 2001
From: Andreas Sturmlechner <asturm@gentoo.org>
Date: Tue, 16 Jul 2019 17:47:44 +0200
Subject: [PATCH] Fix build with boost-1.70 (missing checked_delete.hpp
include)
See also: https://www.boost.org/doc/libs/1_70_0/libs/core/doc/html/core/checked_delete.html
---
server/supernova/utilities/utils.hpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/server/supernova/utilities/utils.hpp b/server/supernova/utilities/utils.hpp
index 35b8ab5ad..a7c191f2d 100644
--- a/server/supernova/utilities/utils.hpp
+++ b/server/supernova/utilities/utils.hpp
@@ -23,6 +23,7 @@
#include <type_traits>
+#include <boost/checked_delete.hpp>
#include <boost/intrusive_ptr.hpp>
#include <boost/noncopyable.hpp>
#include <boost/detail/atomic_count.hpp>
--
2.22.0

View File

@@ -1,359 +0,0 @@
diff --git c/CMakeLists.txt w/CMakeLists.txt
index 063028774..a6b76f49b 100644
--- c/CMakeLists.txt
+++ w/CMakeLists.txt
@@ -253,20 +253,43 @@ if (NOT WIN32)
endif()
if(SYSTEM_BOOST)
- set(Boost_USE_MULTITHREADED ON)
- find_package( Boost 1.50.0 COMPONENTS thread system filesystem program_options regex test_exec_monitor )
-endif()
-
-if (Boost_FOUND)
- link_directories(${Boost_LIBRARY_DIRS})
+ set(Boost_USE_MULTITHREADED ON)
+ find_package( Boost 1.50.0 COMPONENTS thread system filesystem program_options regex test_exec_monitor )
+ if (Boost_FOUND)
+ # we're specifically setting up the boost libraries here, so we can
+ # name them
+ add_library(boost_thread_lib SHARED IMPORTED)
+ set_property(TARGET boost_thread_lib PROPERTY IMPORTED_LOCATION
+ ${Boost_THREAD_LIBRARY})
+ add_library(boost_system_lib SHARED IMPORTED)
+ set_property(TARGET boost_system_lib PROPERTY IMPORTED_LOCATION
+ ${Boost_SYSTEM_LIBRARY})
+ add_library(boost_filesystem_lib SHARED IMPORTED)
+ set_property(TARGET boost_filesystem_lib PROPERTY IMPORTED_LOCATION
+ ${Boost_FILESYSTEM_LIBRARY})
+ add_library(boost_program_options_lib SHARED IMPORTED)
+ set_property(TARGET boost_program_options_lib PROPERTY
+ IMPORTED_LOCATION ${Boost_PROGRAM_OPTIONS_LIBRARY})
+ add_library(boost_regex_lib SHARED IMPORTED)
+ set_property(TARGET boost_regex_lib PROPERTY IMPORTED_LOCATION
+ ${Boost_REGEX_LIBRARY})
+ add_library(boost_test_exec_monitor_lib SHARED IMPORTED)
+ set_property(TARGET boost_test_exec_monitor_lib PROPERTY
+ IMPORTED_LOCATION ${Boost_TEST_EXEC_MONITOR_LIBRARY})
+ set(boost_include_dirs ${Boost_INCLUDE_DIRS})
+ else()
+ set(SYSTEM_BOOST OFF)
+ set(boost_include_dirs ${CMAKE_SOURCE_DIR}/external_libraries/boost)
+ message(WARNING "Not using system boost because none was found.")
+ endif()
else()
- message(STATUS "building boost libraries manually")
+ set(boost_include_dirs ${CMAKE_SOURCE_DIR}/external_libraries/boost)
endif()
if(SYSTEM_YAMLCPP)
find_package(YamlCpp)
else()
- set(YAMLCPP_FOUND OFF)
+ set(SYSTEM_YAMLCPP OFF)
endif()
#############################################
diff --git c/editors/sc-ide/CMakeLists.txt w/editors/sc-ide/CMakeLists.txt
index 50059bc2f..8e48194fc 100644
--- c/editors/sc-ide/CMakeLists.txt
+++ w/editors/sc-ide/CMakeLists.txt
@@ -219,7 +219,6 @@ endif()
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})
@@ -299,12 +298,8 @@ target_link_libraries( SuperCollider
oscpack
)
-if(Boost_FOUND)
- target_link_libraries( SuperCollider ${Boost_SYSTEM_LIBRARY} ${Boost_FILESYSTEM_LIBRARY} )
-else()
- # in-house-built boost system
- target_link_libraries( SuperCollider boost_system boost_filesystem )
-endif()
+target_link_libraries( SuperCollider boost_system_lib boost_filesystem_lib)
+include_directories(${boost_include_dirs})
if(APPLE)
target_link_libraries( ${ide_name} "-framework CoreServices -framework Foundation")
diff --git c/external_libraries/CMakeLists.txt w/external_libraries/CMakeLists.txt
index df33dc6f1..896ce6206 100644
--- c/external_libraries/CMakeLists.txt
+++ w/external_libraries/CMakeLists.txt
@@ -2,7 +2,8 @@ if (NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/nova-simd/vec.hpp)
message(FATAL_ERROR "nova-simd submodule is missing: please run `git submodule init && git submodule update' from the toplevel of your git working tree")
endif()
-if(NOT Boost_FOUND) # we compile boost ourselves
+if(NOT SYSTEM_BOOST) # we compile boost ourselves
+ message(STATUS "Using bundled boost")
# boost thread
aux_source_directory(boost/libs/thread/src/ boost_thread_src )
@@ -14,66 +15,65 @@ if(NOT Boost_FOUND) # we compile boost ourselves
message(SEND_ERROR "we need to implement boost_thread")
endif()
- aux_source_directory(boost/libs/system/src/ boost_system )
- add_library(boost_system STATIC EXCLUDE_FROM_ALL ${boost_system})
- target_include_directories(boost_system PUBLIC boost)
+ aux_source_directory(boost/libs/system/src/ boost_system_src )
+ add_library(boost_system_lib STATIC EXCLUDE_FROM_ALL ${boost_system_src})
+ target_include_directories(boost_system_lib PUBLIC boost)
- aux_source_directory(boost/libs/program_options/src/ boost_program_options )
- add_library(boost_program_options STATIC EXCLUDE_FROM_ALL ${boost_program_options})
- target_include_directories(boost_program_options PUBLIC boost)
+ aux_source_directory(boost/libs/program_options/src/ boost_program_options_src )
+ add_library(boost_program_options_lib STATIC EXCLUDE_FROM_ALL ${boost_program_options_src})
+ target_include_directories(boost_program_options_lib PUBLIC boost)
aux_source_directory(boost/libs/filesystem/src boost_filesystem_src)
- add_library(boost_filesystem STATIC EXCLUDE_FROM_ALL ${boost_filesystem_src})
- target_include_directories(boost_filesystem PUBLIC boost)
+ add_library(boost_filesystem_lib STATIC EXCLUDE_FROM_ALL ${boost_filesystem_src})
+ target_include_directories(boost_filesystem_lib PUBLIC boost)
aux_source_directory(boost/libs/regex/src boost_regex_src)
- add_library(boost_regex STATIC EXCLUDE_FROM_ALL ${boost_regex_src})
- target_include_directories(boost_regex PUBLIC boost)
+ add_library(boost_regex_lib STATIC EXCLUDE_FROM_ALL ${boost_regex_src})
+ target_include_directories(boost_regex_lib PUBLIC boost)
if(LTO)
- set_property(TARGET boost_program_options boost_system boost_filesystem
+ set_property(TARGET boost_program_options_lib boost_system_lib boost_filesystem_lib
APPEND PROPERTY COMPILE_FLAGS "-flto -flto-report")
- set_property(TARGET boost_program_options boost_system boost_filesystem
+ set_property(TARGET boost_program_options_lib boost_system_lib boost_filesystem_lib
APPEND PROPERTY LINK_FLAGS "-flto -flto-report")
endif()
- add_library(boost_thread STATIC EXCLUDE_FROM_ALL ${boost_thread_src} ${boost_thread_platform})
- target_link_libraries(boost_thread boost_system)
+ add_library(boost_thread_lib STATIC EXCLUDE_FROM_ALL ${boost_thread_src} ${boost_thread_platform})
+ target_link_libraries(boost_thread_lib boost_system_lib)
# target_compile_definitions(boost_thread PUBLIC BOOST_THREAD_DONT_PROVIDE_INTERRUPTIONS)
- target_include_directories(boost_thread PUBLIC boost)
- target_compile_definitions(boost_thread PUBLIC BOOST_THREAD_USE_LIB) # for win32
+ target_include_directories(boost_thread_lib PUBLIC boost)
+ target_compile_definitions(boost_thread_lib PUBLIC BOOST_THREAD_USE_LIB) # for win32
if(PTHREADS_FOUND)
- target_include_directories(boost_thread PUBLIC ${PTHREADS_INCLUDE_DIR})
+ target_include_directories(boost_thread_lib PUBLIC ${PTHREADS_INCLUDE_DIR})
endif()
if(WIN32)
- target_compile_definitions( boost_thread PRIVATE BOOST_THREAD_BUILD_LIB)
+ target_compile_definitions( boost_thread_lib PRIVATE BOOST_THREAD_BUILD_LIB)
endif()
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
- target_compile_options(boost_thread PRIVATE -fPIC)
- target_link_libraries(boost_thread rt)
+ target_compile_options(boost_thread_lib PRIVATE -fPIC)
+ target_link_libraries(boost_thread_lib rt)
endif()
if(LTO)
- set_property(TARGET boost_thread
+ set_property(TARGET boost_thread_lib
APPEND PROPERTY COMPILE_FLAGS "-flto -flto-report")
- set_property(TARGET boost_thread
+ set_property(TARGET boost_thread_lib
APPEND PROPERTY LINK_FLAGS "-flto -flto-report")
endif()
set_property( TARGET
- boost_regex
- boost_thread
- boost_program_options
- boost_system
- boost_filesystem
+ boost_regex_lib
+ boost_thread_lib
+ boost_program_options_lib
+ boost_system_lib
+ boost_filesystem_lib
PROPERTY FOLDER 3rdparty
)
-
endif()
# tlsf
@@ -84,10 +84,9 @@ 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 PRIVATE ${boost_include_dirs})
target_include_directories(oscpack INTERFACE oscpack_1_1_0 )
-
if(LTO)
set_property(TARGET oscpack tlsf
APPEND PROPERTY COMPILE_FLAGS "-flto -flto-report")
@@ -96,15 +95,15 @@ if(LTO)
APPEND PROPERTY LINK_FLAGS "-flto -flto-report")
endif()
-if(NOT YAMLCPP_FOUND)
- message(STATUS "using bundled libyaml-cpp")
+if(NOT SYSTEM_YAMLCPP)
+ message(STATUS "Using bundled yaml-cpp")
# yaml-cpp
aux_source_directory(${CMAKE_SOURCE_DIR}/external_libraries/yaml-cpp/src yaml_src)
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)
+ target_include_directories(yaml PUBLIC ${CMAKE_SOURCE_DIR}/external_libraries/yaml-cpp/include ${boost_include_dirs})
set_property( TARGET yaml PROPERTY FOLDER 3rdparty )
set(YAMLCPP_LIBRARY yaml)
set(YAMLCPP_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/external_libraries/yaml-cpp/include)
diff --git c/lang/CMakeLists.txt w/lang/CMakeLists.txt
index c68b32fdc..593d91845 100644
--- c/lang/CMakeLists.txt
+++ w/lang/CMakeLists.txt
@@ -202,14 +202,8 @@ if(SC_HIDAPI)
endif()
endif()
-if (Boost_FOUND)
- target_include_directories(libsclang PUBLIC ${Boost_INCLUDE_DIRS})
- target_link_libraries(libsclang ${Boost_THREAD_LIBRARY} ${Boost_SYSTEM_LIBRARY} ${Boost_REGEX_LIBRARY} ${Boost_FILESYSTEM_LIBRARY})
-else()
- target_include_directories(libsclang PUBLIC ${CMAKE_SOURCE_DIR}/external_libraries/boost)
- target_link_libraries(libsclang boost_regex boost_thread boost_system boost_filesystem)
-endif()
-
+target_link_libraries(libsclang boost_thread_lib boost_system_lib boost_regex_lib boost_filesystem_lib)
+target_include_directories(libsclang PUBLIC ${boost_include_dirs})
if (SCLANG_SERVER)
target_link_libraries(libsclang libscsynth)
diff --git c/server/CMakeLists.txt w/server/CMakeLists.txt
index 2622b4e36..bf8dc863d 100644
--- c/server/CMakeLists.txt
+++ w/server/CMakeLists.txt
@@ -12,11 +12,7 @@ include_directories(${CMAKE_SOURCE_DIR}/external_libraries
${CMAKE_SOURCE_DIR}/external_libraries/nova-tt
)
-if (Boost_FOUND)
- include_directories(${Boost_INCLUDE_DIRS})
-else()
- include_directories(${CMAKE_SOURCE_DIR}/external_libraries/boost)
-endif()
+include_directories(${boost_include_dirs})
# here we choose who provides us with the FFT lib
if (APPLE)
diff --git c/server/plugins/CMakeLists.txt w/server/plugins/CMakeLists.txt
index 8287f7be9..9a4db7be5 100644
--- c/server/plugins/CMakeLists.txt
+++ w/server/plugins/CMakeLists.txt
@@ -199,7 +199,7 @@ if (SUPERNOVA)
if(SNDFILE_FOUND)
target_include_directories(DiskIO_UGens_supernova PUBLIC ${SNDFILE_INCLUDE_DIR})
- target_link_libraries(DiskIO_UGens_supernova ${SNDFILE_LIBRARIES} ${PTHREADS_LIBRARY} ${MATH_LIBRARY} ${Boost_THREAD_LIBRARY})
+ target_link_libraries(DiskIO_UGens_supernova ${SNDFILE_LIBRARIES} ${PTHREADS_LIBRARY} ${MATH_LIBRARY} boost_thread_lib)
list(APPEND supernova_plugins DiskIO_UGens_supernova)
else()
message(SEND_ERROR "Cannot find libsndfile")
@@ -217,7 +217,7 @@ endforeach()
if(NOT NO_X11)
foreach(ugen ${uiugens})
- target_link_libraries(${ugen} ${Boost_THREAD_LIBRARY})
+ target_link_libraries(${ugen} boost_thread_lib)
endforeach()
endif()
diff --git c/server/scsynth/CMakeLists.txt w/server/scsynth/CMakeLists.txt
index 17c09f262..3a7145841 100644
--- c/server/scsynth/CMakeLists.txt
+++ w/server/scsynth/CMakeLists.txt
@@ -176,11 +176,8 @@ elseif(AUDIOAPI STREQUAL coreaudio)
target_link_libraries(libscsynth "-framework CoreAudio")
endif()
-if (Boost_FOUND)
- target_link_libraries(libscsynth ${Boost_SYSTEM_LIBRARY} ${Boost_FILESYSTEM_LIBRARY} )
-else()
- target_link_libraries(libscsynth boost_system boost_filesystem)
-endif()
+target_link_libraries(libscsynth boost_system_lib boost_filesystem_lib)
+target_include_directories(libscsynth PUBLIC ${boost_include_dirs})
if (WIN32)
target_link_libraries(libscsynth wsock32 ws2_32 winmm)
diff --git c/server/supernova/CMakeLists.txt w/server/supernova/CMakeLists.txt
index cfe128880..2b80cb545 100644
--- c/server/supernova/CMakeLists.txt
+++ w/server/supernova/CMakeLists.txt
@@ -70,7 +70,7 @@ if(NOT WIN32)
PROPERTY OUTPUT_NAME supernova)
endif()
-target_link_libraries(libsupernova oscpack tlsf ${PTHREADS_LIBRARIES} boost_thread)
+target_link_libraries(libsupernova oscpack tlsf ${PTHREADS_LIBRARIES} boost_thread_lib)
target_compile_definitions(libsupernova PUBLIC SUPERNOVA)
target_include_directories(libsupernova PUBLIC
@@ -146,14 +146,8 @@ if(CMAKE_SYSTEM_NAME MATCHES "Linux")
target_link_libraries(libsupernova rt)
endif()
-
-if(Boost_FOUND)
- target_link_libraries(libsupernova ${Boost_SYSTEM_LIBRARY} ${Boost_FILESYSTEM_LIBRARY} ${Boost_PROGRAM_OPTIONS_LIBRARY})
- target_include_directories(libsupernova PUBLIC ${Boost_INCLUDE_DIRS})
-else()
- target_include_directories(libsupernova PUBLIC ${CMAKE_SOURCE_DIR}/external_libraries/boost)
- target_link_libraries(libsupernova boost_system boost_filesystem boost_program_options)
-endif()
+target_link_libraries(libsupernova boost_system_lib boost_filesystem_lib boost_program_options_lib)
+target_include_directories(libsupernova PUBLIC ${boost_include_dirs})
if(CMAKE_COMPILER_IS_GNUCXX)
if( ${_gcc_version} VERSION_GREATER 5 )
diff --git c/testsuite/server/CMakeLists.txt w/testsuite/server/CMakeLists.txt
index 38ce4b486..da19c2e5d 100644
--- c/testsuite/server/CMakeLists.txt
+++ w/testsuite/server/CMakeLists.txt
@@ -1,8 +1,8 @@
+add_library(boost_test STATIC boost_test.cpp)
+target_include_directories(boost_test PUBLIC ${boost_include_dirs})
+
add_subdirectory(scsynth)
-
if (SUPERNOVA)
add_subdirectory(supernova)
endif()
-add_library(boost_test STATIC boost_test.cpp)
-target_include_directories(boost_test PUBLIC ${CMAKE_SOURCE_DIR}/external_libraries/boost)
diff --git c/testsuite/server/supernova/CMakeLists.txt w/testsuite/server/supernova/CMakeLists.txt
index e8a9ccf5f..4022da847 100644
--- c/testsuite/server/supernova/CMakeLists.txt
+++ w/testsuite/server/supernova/CMakeLists.txt
@@ -34,7 +34,7 @@ foreach(test ${simple_tests})
string(REPLACE .cpp "" test_name ${test} )
add_executable(${test_name} ${test})
- target_link_libraries(${test_name} libsupernova boost_test boost_thread)
+ target_link_libraries(${test_name} libsupernova boost_test boost_thread_lib)
add_test(${test_name}_run ${EXECUTABLE_OUTPUT_PATH}/${test_name})
endforeach(test)

View File

@@ -1,126 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake readme.gentoo-r1 xdg-utils
DESCRIPTION="An environment and a programming language for real time audio synthesis."
HOMEPAGE="https://supercollider.github.io/"
SRC_URI="https://github.com/supercollider/supercollider/releases/download/Version-${PV}/SuperCollider-${PV}-Source-linux.tar.bz2"
LICENSE="GPL-2 gpl3? ( GPL-3 )"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="cpu_flags_x86_sse cpu_flags_x86_sse2 debug emacs +fftw gedit +gpl3 jack qt5 server +sndfile static-libs vim X zeroconf"
REQUIRED_USE="qt5? ( X )"
BDEPEND="
virtual/pkgconfig
qt5? ( dev-qt/linguist-tools:5 )
"
RDEPEND="
dev-cpp/yaml-cpp:=
>=dev-libs/boost-1.70.0:=
media-libs/alsa-lib
sys-libs/readline:0=
virtual/libudev:=
fftw? ( sci-libs/fftw:3.0= )
jack? ( virtual/jack )
!jack? ( media-libs/portaudio )
qt5? (
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtnetwork:5
dev-qt/qtopengl:5
dev-qt/qtprintsupport:5
dev-qt/qtsql:5
dev-qt/qtsvg:5
dev-qt/qtwebchannel:5
dev-qt/qtwebengine:5[widgets]
dev-qt/qtwebsockets:5
dev-qt/qtwidgets:5
)
server? ( !app-admin/supernova )
sndfile? ( media-libs/libsndfile )
X? (
x11-libs/libX11
x11-libs/libXt
)
zeroconf? ( net-dns/avahi )
"
DEPEND="${RDEPEND}
dev-libs/icu
emacs? ( >=app-editors/emacs-23.1:* )
gedit? ( app-editors/gedit )
qt5? (
dev-qt/qtconcurrent:5
dev-qt/qtdeclarative:5
)
vim? ( app-editors/vim )
"
PATCHES=(
"${FILESDIR}"/${P}-no-ccache.patch
"${FILESDIR}"/${P}-system-boost.patch
"${FILESDIR}"/${P}-boost-1.67.patch
"${FILESDIR}"/${P}-boost-1.70.patch
)
S="${WORKDIR}/SuperCollider-Source"
src_configure() {
local mycmakeargs=(
-DINSTALL_HELP=ON
-DSYSTEM_BOOST=ON
-DSYSTEM_YAMLCPP=ON
-DSSE=$(usex cpu_flags_x86_sse)
-DSSE2=$(usex cpu_flags_x86_sse2)
-DSC_EL=$(usex emacs)
-DFFT_GREEN=$(usex !fftw)
-DSC_ED=$(usex gedit)
-DNO_GPL3=$(usex !gpl3)
-DAUDIOAPI=$(usex jack jack portaudio)
-DSC_IDE=$(usex qt5)
-DSC_QT=$(usex qt5)
-DSCLANG_SERVER=$(usex server)
-DSUPERNOVA=$(usex server)
-DNO_LIBSNDFILE=$(usex !sndfile)
-DLIBSCSYNTH=$(usex !static-libs)
-DSC_VIM=$(usex vim)
-DNO_X11=$(usex !X)
-DNO_AVAHI=$(usex !zeroconf)
)
use debug && mycmakeargs+=(
-DSC_MEMORY_DEBUGGING=ON
-DSN_MEMORY_DEBUGGING=ON
-DGC_SANITYCHECK=ON
)
cmake_src_configure
}
src_install() {
cmake_src_install
use emacs && newdoc editors/scel/README.md README.emacs
use gedit && newdoc editors/sced/README.md README.gedit
use vim && newdoc editors/scvim/README.md README.vim
}
pkg_postinst() {
einfo "Notice: SuperCollider is not very intuitive to get up and running."
einfo "The best course of action to make sure that the installation was"
einfo "successful and get you started with using SuperCollider is to take"
einfo "a look through ${EROOT}/usr/share/doc/${PF}/README.md.bz2"
xdg_mimeinfo_database_update
xdg_desktop_database_update
}
pkg_postrm() {
xdg_mimeinfo_database_update
xdg_desktop_database_update
}