public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: media-sound/supercollider/files/, media-sound/supercollider/
@ 2018-01-06  2:14 Andreas Sturmlechner
  0 siblings, 0 replies; 10+ messages in thread
From: Andreas Sturmlechner @ 2018-01-06  2:14 UTC (permalink / raw
  To: gentoo-commits

commit:     31e888ab8303249fa7004afe9ee3253e6b9c3bb0
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Jan  6 02:00:14 2018 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Jan  6 02:13:49 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=31e888ab

media-sound/supercollider: Fix build with GCC-7

Closes: https://bugs.gentoo.org/636058
Package-Manager: Portage-2.3.19, Repoman-2.3.6

 .../files/supercollider-3.8.0-gcc-7.patch          | 75 ++++++++++++++++++++++
 .../supercollider/supercollider-3.8.0.ebuild       |  1 +
 2 files changed, 76 insertions(+)

diff --git a/media-sound/supercollider/files/supercollider-3.8.0-gcc-7.patch b/media-sound/supercollider/files/supercollider-3.8.0-gcc-7.patch
new file mode 100644
index 00000000000..5f0269845b3
--- /dev/null
+++ b/media-sound/supercollider/files/supercollider-3.8.0-gcc-7.patch
@@ -0,0 +1,75 @@
+From 1eaa3fb3afbbf4708695a25361527a70e2d7a02d Mon Sep 17 00:00:00 2001
+From: Brian Heim <brianlheim@gmail.com>
+Date: Tue, 4 Jul 2017 13:26:00 -0400
+Subject: [PATCH] DiskIO_UGens: include <functional>
+
+std::bind is in <functional> according to the C++ ISO standard, and
+gcc7.1 enforces this.
+---
+ server/plugins/DiskIO_UGens.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/server/plugins/DiskIO_UGens.cpp b/server/plugins/DiskIO_UGens.cpp
+index 47c91a139..d4bb1c51c 100644
+--- a/server/plugins/DiskIO_UGens.cpp
++++ b/server/plugins/DiskIO_UGens.cpp
+@@ -28,6 +28,7 @@
+ 
+ #include <atomic>
+ #include <new>
++#include <functional>
+ #include <SC_Lock.h>
+ 
+ #include <boost/lockfree/queue.hpp>
+-- 
+2.15.1
+
+From a891e7d5be4c4944970973cc8467485e8a4c0571 Mon Sep 17 00:00:00 2001
+From: Adrian Bunk <bunk@debian.org>
+Date: Thu, 7 Sep 2017 19:38:46 -0300
+Subject: [PATCH] PyrSched.cpp: #include <functional> to fix FTBFS
+
+Bug-Debian: https://bugs.debian.org/853671
+---
+ lang/LangPrimSource/PyrSched.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/lang/LangPrimSource/PyrSched.cpp b/lang/LangPrimSource/PyrSched.cpp
+index 02f0c6264..63487a58e 100644
+--- a/lang/LangPrimSource/PyrSched.cpp
++++ b/lang/LangPrimSource/PyrSched.cpp
+@@ -37,6 +37,7 @@
+ #include <string.h>
+ #include <math.h>
+ #include <limits>
++#include <functional>
+ 
+ #if defined(__APPLE__) || defined(__linux__)
+ # include <pthread.h>
+-- 
+2.15.1
+
+From c058e16ff215b0b318abb3aa9ab4d47c0eeac877 Mon Sep 17 00:00:00 2001
+From: hlolli <hlolli@gmail.com>
+Date: Mon, 10 Jul 2017 18:32:22 +0200
+Subject: [PATCH] adding functional header in PyrSerialPrim.cpp
+
+---
+ lang/LangPrimSource/PyrSerialPrim.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/lang/LangPrimSource/PyrSerialPrim.cpp b/lang/LangPrimSource/PyrSerialPrim.cpp
+index 3099598fe..5e2b40372 100644
+--- a/lang/LangPrimSource/PyrSerialPrim.cpp
++++ b/lang/LangPrimSource/PyrSerialPrim.cpp
+@@ -36,6 +36,7 @@
+ #include <termios.h>
+ #include <unistd.h>
+ #include <boost/atomic.hpp>
++#include <functional>
+ 
+ #include <stdexcept>
+ #include <sstream>
+-- 
+2.15.1
+

diff --git a/media-sound/supercollider/supercollider-3.8.0.ebuild b/media-sound/supercollider/supercollider-3.8.0.ebuild
index 36db17c3ce0..3a953a59363 100644
--- a/media-sound/supercollider/supercollider-3.8.0.ebuild
+++ b/media-sound/supercollider/supercollider-3.8.0.ebuild
@@ -57,6 +57,7 @@ PATCHES=(
 	"${FILESDIR}"/${P}-no-qtsensors.patch
 	"${FILESDIR}"/${P}-no-qtpositioning.patch
 	"${FILESDIR}"/${P}-multilib.patch
+	"${FILESDIR}"/${P}-gcc-7.patch
 )
 
 src_configure() {


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/supercollider/files/, media-sound/supercollider/
@ 2018-01-06  2:14 Andreas Sturmlechner
  0 siblings, 0 replies; 10+ messages in thread
From: Andreas Sturmlechner @ 2018-01-06  2:14 UTC (permalink / raw
  To: gentoo-commits

commit:     ce433a1966fc6f6e164393e7271c3decd96e238c
Author:     Ingolf Wagner <contact <AT> ingolf-wagner <DOT> de>
AuthorDate: Wed Aug 30 17:16:58 2017 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Jan  6 02:13:48 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ce433a19

media-sound/supercollider: Fix dependencies

Closes: https://bugs.gentoo.org/621020
Closes: https://github.com/gentoo/gentoo/pull/4897

 .../files/supercollider-3.8.0-no-opengl.patch      | 45 ++++++++++++++++++
 .../supercollider-3.8.0-no-qtpositioning.patch     | 40 ++++++++++++++++
 .../files/supercollider-3.8.0-no-qtsensors.patch   | 55 ++++++++++++++++++++++
 .../supercollider/supercollider-3.8.0.ebuild       | 31 ++++++++----
 4 files changed, 162 insertions(+), 9 deletions(-)

diff --git a/media-sound/supercollider/files/supercollider-3.8.0-no-opengl.patch b/media-sound/supercollider/files/supercollider-3.8.0-no-opengl.patch
new file mode 100644
index 00000000000..15e19d8dee6
--- /dev/null
+++ b/media-sound/supercollider/files/supercollider-3.8.0-no-opengl.patch
@@ -0,0 +1,45 @@
+diff --git a/QtCollider/CMakeLists.txt b/QtCollider/CMakeLists.txt
+index 64f275b..f88c4a7 100644
+--- a/QtCollider/CMakeLists.txt
++++ b/QtCollider/CMakeLists.txt
+@@ -8,17 +8,16 @@ find_package(Qt5Network)
+ find_package(Qt5WebKit)
+ find_package(Qt5WebKitWidgets)
+ find_package(Qt5PrintSupport)
+-find_package(Qt5OpenGL)
+ find_package(Qt5Sensors)
+ find_package(Qt5Quick)
+ find_package(Qt5Qml)
+ find_package(Qt5Sql)
+ find_package(Qt5Positioning)
+-mark_as_advanced(Qt5Concurrent_DIR Qt5Core_DIR Qt5Gui_DIR Qt5LinguistTools_DIR Qt5Location_DIR Qt5Network_DIR Qt5OpenGL_DIR Qt5Positioning_DIR Qt5PrintSupport_DIR Qt5Qml_DIR Qt5Quick_DIR Qt5Sensors_DIR Qt5Sql_DIR Qt5WebKitWidgets_DIR Qt5WebKit_DIR Qt5Widgets_DIR Qt5X11Extras_DIR)
++mark_as_advanced(Qt5Concurrent_DIR Qt5Core_DIR Qt5Gui_DIR Qt5LinguistTools_DIR Qt5Location_DIR Qt5Network_DIR Qt5Positioning_DIR Qt5PrintSupport_DIR Qt5Qml_DIR Qt5Quick_DIR Qt5Sensors_DIR Qt5Sql_DIR Qt5WebKitWidgets_DIR Qt5WebKit_DIR Qt5Widgets_DIR Qt5X11Extras_DIR)
+ 
+ set (QT_COLLIDER_LIBS
+   Qt5::Core Qt5::Gui Qt5::Widgets Qt5::Network Qt5::WebKit Qt5::WebKitWidgets Qt5::PrintSupport
+-  Qt5::OpenGL Qt5::Sensors Qt5::Quick Qt5::Qml Qt5::Sql Qt5::Positioning
++  Qt5::Sensors Qt5::Quick Qt5::Qml Qt5::Sql Qt5::Positioning
+   ${MATH_LIBRARY})
+ 
+ if (APPLE)
+diff --git a/editors/sc-ide/CMakeLists.txt b/editors/sc-ide/CMakeLists.txt
+index f2347de..860d254 100644
+--- a/editors/sc-ide/CMakeLists.txt
++++ b/editors/sc-ide/CMakeLists.txt
+@@ -7,7 +7,6 @@ SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
+ find_package(Qt5Core)
+ find_package(Qt5Concurrent)
+ find_package(Qt5LinguistTools)
+-find_package(Qt5OpenGL)
+ find_package(Qt5Positioning)
+ find_package(Qt5PrintSupport)
+ find_package(Qt5Qml)
+@@ -18,7 +17,7 @@ find_package(Qt5WebKitWidgets)
+ find_package(Qt5Widgets)
+ 
+ set(QT_IDE_LIBRARIES
+-    Qt5::Core Qt5::Concurrent Qt5::WebKitWidgets Qt5::OpenGL Qt5::PrintSupport Qt5::Sensors Qt5::Quick Qt5::Qml Qt5::Sql Qt5::Positioning)
++    Qt5::Core Qt5::Concurrent Qt5::WebKitWidgets Qt5::PrintSupport Qt5::Sensors Qt5::Quick Qt5::Qml Qt5::Sql Qt5::Positioning)
+ 
+ if(${CMAKE_COMPILER_IS_GNUCXX})
+     add_definitions(-Wreorder)

diff --git a/media-sound/supercollider/files/supercollider-3.8.0-no-qtpositioning.patch b/media-sound/supercollider/files/supercollider-3.8.0-no-qtpositioning.patch
new file mode 100644
index 00000000000..ee4bf52d010
--- /dev/null
+++ b/media-sound/supercollider/files/supercollider-3.8.0-no-qtpositioning.patch
@@ -0,0 +1,40 @@
+diff --git a/QtCollider/CMakeLists.txt b/QtCollider/CMakeLists.txt
+index 903d5a0..007b4f4 100644
+--- a/QtCollider/CMakeLists.txt
++++ b/QtCollider/CMakeLists.txt
+@@ -11,12 +11,11 @@ find_package(Qt5PrintSupport)
+ find_package(Qt5Quick)
+ find_package(Qt5Qml)
+ find_package(Qt5Sql)
+-find_package(Qt5Positioning)
+-mark_as_advanced(Qt5Concurrent_DIR Qt5Core_DIR Qt5Gui_DIR Qt5LinguistTools_DIR Qt5Location_DIR Qt5Network_DIR Qt5Positioning_DIR Qt5PrintSupport_DIR Qt5Qml_DIR Qt5Quick_DIR Qt5Sql_DIR Qt5WebKitWidgets_DIR Qt5WebKit_DIR Qt5Widgets_DIR Qt5X11Extras_DIR)
++mark_as_advanced(Qt5Concurrent_DIR Qt5Core_DIR Qt5Gui_DIR Qt5LinguistTools_DIR Qt5Location_DIR Qt5Network_DIR Qt5PrintSupport_DIR Qt5Qml_DIR Qt5Quick_DIR Qt5Sql_DIR Qt5WebKitWidgets_DIR Qt5WebKit_DIR Qt5Widgets_DIR Qt5X11Extras_DIR)
+ 
+ set (QT_COLLIDER_LIBS
+   Qt5::Core Qt5::Gui Qt5::Widgets Qt5::Network Qt5::WebKit Qt5::WebKitWidgets Qt5::PrintSupport
+-  Qt5::Quick Qt5::Qml Qt5::Sql Qt5::Positioning
++  Qt5::Quick Qt5::Qml Qt5::Sql
+   ${MATH_LIBRARY})
+ 
+ if (APPLE)
+diff --git a/editors/sc-ide/CMakeLists.txt b/editors/sc-ide/CMakeLists.txt
+index dbe2ad7..cdbb11e 100644
+--- a/editors/sc-ide/CMakeLists.txt
++++ b/editors/sc-ide/CMakeLists.txt
+@@ -7,7 +7,6 @@ SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
+ find_package(Qt5Core)
+ find_package(Qt5Concurrent)
+ find_package(Qt5LinguistTools)
+-find_package(Qt5Positioning)
+ find_package(Qt5PrintSupport)
+ find_package(Qt5Qml)
+ find_package(Qt5Quick)
+@@ -16,7 +15,7 @@ find_package(Qt5WebKitWidgets)
+ find_package(Qt5Widgets)
+ 
+ set(QT_IDE_LIBRARIES
+-    Qt5::Core Qt5::Concurrent Qt5::WebKitWidgets Qt5::PrintSupport Qt5::Quick Qt5::Qml Qt5::Sql Qt5::Positioning)
++    Qt5::Core Qt5::Concurrent Qt5::WebKitWidgets Qt5::PrintSupport Qt5::Quick Qt5::Qml Qt5::Sql)
+ 
+ if(${CMAKE_COMPILER_IS_GNUCXX})
+     add_definitions(-Wreorder)

diff --git a/media-sound/supercollider/files/supercollider-3.8.0-no-qtsensors.patch b/media-sound/supercollider/files/supercollider-3.8.0-no-qtsensors.patch
new file mode 100644
index 00000000000..b9099b971ee
--- /dev/null
+++ b/media-sound/supercollider/files/supercollider-3.8.0-no-qtsensors.patch
@@ -0,0 +1,55 @@
+diff --git a/QtCollider/CMakeLists.txt b/QtCollider/CMakeLists.txt
+index f88c4a7..903d5a0 100644
+--- a/QtCollider/CMakeLists.txt
++++ b/QtCollider/CMakeLists.txt
+@@ -8,16 +8,15 @@ find_package(Qt5Network)
+ find_package(Qt5WebKit)
+ find_package(Qt5WebKitWidgets)
+ find_package(Qt5PrintSupport)
+-find_package(Qt5Sensors)
+ find_package(Qt5Quick)
+ find_package(Qt5Qml)
+ find_package(Qt5Sql)
+ find_package(Qt5Positioning)
+-mark_as_advanced(Qt5Concurrent_DIR Qt5Core_DIR Qt5Gui_DIR Qt5LinguistTools_DIR Qt5Location_DIR Qt5Network_DIR Qt5Positioning_DIR Qt5PrintSupport_DIR Qt5Qml_DIR Qt5Quick_DIR Qt5Sensors_DIR Qt5Sql_DIR Qt5WebKitWidgets_DIR Qt5WebKit_DIR Qt5Widgets_DIR Qt5X11Extras_DIR)
++mark_as_advanced(Qt5Concurrent_DIR Qt5Core_DIR Qt5Gui_DIR Qt5LinguistTools_DIR Qt5Location_DIR Qt5Network_DIR Qt5Positioning_DIR Qt5PrintSupport_DIR Qt5Qml_DIR Qt5Quick_DIR Qt5Sql_DIR Qt5WebKitWidgets_DIR Qt5WebKit_DIR Qt5Widgets_DIR Qt5X11Extras_DIR)
+ 
+ set (QT_COLLIDER_LIBS
+   Qt5::Core Qt5::Gui Qt5::Widgets Qt5::Network Qt5::WebKit Qt5::WebKitWidgets Qt5::PrintSupport
+-  Qt5::Sensors Qt5::Quick Qt5::Qml Qt5::Sql Qt5::Positioning
++  Qt5::Quick Qt5::Qml Qt5::Sql Qt5::Positioning
+   ${MATH_LIBRARY})
+ 
+ if (APPLE)
+diff --git a/editors/sc-ide/CMakeLists.txt b/editors/sc-ide/CMakeLists.txt
+index 860d254..dbe2ad7 100644
+--- a/editors/sc-ide/CMakeLists.txt
++++ b/editors/sc-ide/CMakeLists.txt
+@@ -11,13 +11,12 @@ find_package(Qt5Positioning)
+ find_package(Qt5PrintSupport)
+ find_package(Qt5Qml)
+ find_package(Qt5Quick)
+-find_package(Qt5Sensors)
+ find_package(Qt5Sql)
+ find_package(Qt5WebKitWidgets)
+ find_package(Qt5Widgets)
+ 
+ set(QT_IDE_LIBRARIES
+-    Qt5::Core Qt5::Concurrent Qt5::WebKitWidgets Qt5::PrintSupport Qt5::Sensors Qt5::Quick Qt5::Qml Qt5::Sql Qt5::Positioning)
++    Qt5::Core Qt5::Concurrent Qt5::WebKitWidgets Qt5::PrintSupport Qt5::Quick Qt5::Qml Qt5::Sql Qt5::Positioning)
+ 
+ if(${CMAKE_COMPILER_IS_GNUCXX})
+     add_definitions(-Wreorder)
+diff --git a/lang/CMakeLists.txt b/lang/CMakeLists.txt
+index fe52223..427c587 100644
+--- a/lang/CMakeLists.txt
++++ b/lang/CMakeLists.txt
+@@ -389,7 +389,7 @@ elseif(WIN32)
+             SET(QT_PLUGINS_DIR "${QT_BIN_PATH}/../plugins" CACHE PATH "Location of qt plugins for windows")
+         endif()
+ 
+-        foreach(plugin ${Qt5Network_PLUGINS} ${Qt5Gui_PLUGINS} ${Qt5Sensors_PLUGINS} ${Qt5Sql_PLUGINS} ${Qt5PrintSupport_PLUGINS})
++        foreach(plugin ${Qt5Network_PLUGINS} ${Qt5Gui_PLUGINS} ${Qt5Sql_PLUGINS} ${Qt5PrintSupport_PLUGINS})
+             get_target_property(_loc ${plugin} LOCATION)
+             get_filename_component(_parent_dir ${_loc} DIRECTORY)
+             get_filename_component(_name_we ${_loc} NAME_WE)

diff --git a/media-sound/supercollider/supercollider-3.8.0.ebuild b/media-sound/supercollider/supercollider-3.8.0.ebuild
index 172e0129d89..74ccd80f589 100644
--- a/media-sound/supercollider/supercollider-3.8.0.ebuild
+++ b/media-sound/supercollider/supercollider-3.8.0.ebuild
@@ -16,38 +16,50 @@ IUSE="avahi cpu_flags_x86_sse cpu_flags_x86_sse2 debug emacs +fftw gedit +gpl3 j
 REQUIRED_USE="^^ ( jack portaudio )"
 RESTRICT="mirror"
 
-# Both alsa and readline will be automatically checked in cmake but
-# there are no options for these. Thus the functionality cannot be
-# controlled through USE flags. Therefore hard-enabled.
 RDEPEND="
 	media-libs/alsa-lib
 	sys-libs/readline:0=
+	x11-libs/libX11
 	x11-libs/libXt
 	avahi? ( net-dns/avahi )
 	fftw? ( sci-libs/fftw:3.0= )
-	jack? ( media-sound/jack-audio-connection-kit )
+	jack? ( virtual/jack )
 	portaudio? ( media-libs/portaudio )
 	qt5? (
 		dev-qt/qtcore:5
 		dev-qt/qtgui:5
-		dev-qt/qtpositioning:5
-		dev-qt/qtsensors:5
+		dev-qt/qtnetwork:5
+		dev-qt/qtprintsupport:5
 		dev-qt/qtwebkit:5
+		dev-qt/qtwidgets:5
 	)
 	sndfile? ( media-libs/libsndfile )
-	wiimote? ( app-misc/cwiid )"
+	wiimote? ( app-misc/cwiid )
+"
 DEPEND="${RDEPEND}
 	dev-libs/icu
 	virtual/pkgconfig
 	emacs? ( virtual/emacs )
 	gedit? ( app-editors/gedit )
-	vim? ( app-editors/vim )"
+	qt5? (
+		dev-qt/linguist-tools:5
+		dev-qt/qtdeclarative:5
+		dev-qt/qtconcurrent:5
+	)
+	vim? ( app-editors/vim )
+"
 
 S="${WORKDIR}/SuperCollider-Source"
 
+PATCHES=(
+	"${FILESDIR}"/${P}-no-opengl.patch
+	"${FILESDIR}"/${P}-no-qtsensors.patch
+	"${FILESDIR}"/${P}-no-qtpositioning.patch
+)
+
 src_configure() {
 	local mycmakeargs=(
-		AUDIOAPI=$(usex jack jack portaudio)
+		-DAUDIOAPI=$(usex jack jack portaudio)
 		-DINSTALL_HELP=ON
 		-DNATIVE=ON
 		-DSYSTEM_BOOST=OFF
@@ -58,6 +70,7 @@ src_configure() {
 		-DNO_LIBSNDFILE=$(usex !sndfile)
 		-DSC_QT=$(usex qt5)
 		-DSCLANG_SERVER=$(usex server)
+		-DSUPERNOVA=$(usex server)
 		-DLIBSCSYNTH=$(usex !static-libs)
 		-DSSE=$(usex cpu_flags_x86_sse)
 		-DSSE2=$(usex cpu_flags_x86_sse2)


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/supercollider/files/, media-sound/supercollider/
@ 2019-06-28  1:17 Andreas Sturmlechner
  0 siblings, 0 replies; 10+ messages in thread
From: Andreas Sturmlechner @ 2019-06-28  1:17 UTC (permalink / raw
  To: gentoo-commits

commit:     44335924b908ee0308ee5c727bd9b8f0e1d7fb46
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 28 00:32:33 2019 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Fri Jun 28 01:07:29 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=44335924

media-sound/supercollider: 3.10.2 version bump

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 media-sound/supercollider/Manifest                 |   1 +
 .../files/supercollider-3.10.2-boost-1.67.patch    |  27 ++
 .../files/supercollider-3.10.2-system-boost.patch  | 359 +++++++++++++++++++++
 .../supercollider/supercollider-3.10.2.ebuild      | 124 +++++++
 4 files changed, 511 insertions(+)

diff --git a/media-sound/supercollider/Manifest b/media-sound/supercollider/Manifest
index 07d2fabe1f8..230929c5b12 100644
--- a/media-sound/supercollider/Manifest
+++ b/media-sound/supercollider/Manifest
@@ -1 +1,2 @@
+DIST SuperCollider-3.10.2-Source-linux.tar.bz2 11366481 BLAKE2B d01324ed65f7e8977c138709471e7b9000b1d05ce4c1c0ff83c9ca0ae6e3948b4933320c382b64ecd2aebc65597c963c9348dda09a8c2ec7bc2ea5a14473fe44 SHA512 f7d136cb03e32dfd0b72e36047deaa24d5edfac0f7e9eeaac35f8e991cd52b00db0701478e0daefb24bfbbc55b5cf240e3f3429fd46caa8d76daa21c7aebaf46
 DIST SuperCollider-3.9.3-Source-linux.tar.bz2 11060240 BLAKE2B 5da51bece13d2a3e4ca1ff6b79637122a46c1f590aa7e4ebf52d7a663506c6f4bae4f3d618bb7f947c73828402f329be68e435a4de2ecc092c312cb2c993742c SHA512 5b0c29941907d5ca45c1676e34184664c03891051bba0ee50d9e8311400824054de7b6daba6d29fd875ff38f42ee9654504ea2f0b5bf0a36ae9605e6a79a0841

diff --git a/media-sound/supercollider/files/supercollider-3.10.2-boost-1.67.patch b/media-sound/supercollider/files/supercollider-3.10.2-boost-1.67.patch
new file mode 100644
index 00000000000..dd51d0b85d8
--- /dev/null
+++ b/media-sound/supercollider/files/supercollider-3.10.2-boost-1.67.patch
@@ -0,0 +1,27 @@
+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);
+     }

diff --git a/media-sound/supercollider/files/supercollider-3.10.2-system-boost.patch b/media-sound/supercollider/files/supercollider-3.10.2-system-boost.patch
new file mode 100644
index 00000000000..93c8c4fc2ab
--- /dev/null
+++ b/media-sound/supercollider/files/supercollider-3.10.2-system-boost.patch
@@ -0,0 +1,359 @@
+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)

diff --git a/media-sound/supercollider/supercollider-3.10.2.ebuild b/media-sound/supercollider/supercollider-3.10.2.ebuild
new file mode 100644
index 00000000000..3ebf0f2cc00
--- /dev/null
+++ b/media-sound/supercollider/supercollider-3.10.2.ebuild
@@ -0,0 +1,124 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake-utils 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:=
+	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? ( virtual/emacs )
+	gedit? ( app-editors/gedit )
+	qt5? (
+		dev-qt/qtconcurrent:5
+		dev-qt/qtdeclarative:5
+	)
+	vim? ( app-editors/vim )
+"
+
+PATCHES=(
+	"${FILESDIR}"/${P}-system-boost.patch
+	"${FILESDIR}"/${P}-boost-1.67.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-utils_src_configure
+}
+
+src_install() {
+	cmake-utils_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
+}


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/supercollider/files/, media-sound/supercollider/
@ 2019-07-16 15:57 Andreas Sturmlechner
  0 siblings, 0 replies; 10+ messages in thread
From: Andreas Sturmlechner @ 2019-07-16 15:57 UTC (permalink / raw
  To: gentoo-commits

commit:     a420618dc766bba0654dbe0ef67008fdc5e901c6
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 16 15:56:24 2019 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Jul 16 15:56:52 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a420618d

media-sound/supercollider: Fix USE server w/ boost-1.70, no ccache

Closes: https://bugs.gentoo.org/689244
Package-Manager: Portage-2.3.69, Repoman-2.3.16
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../files/supercollider-3.10.2-boost-1.70.patch    | 53 ++++++++++++++++++++++
 .../files/supercollider-3.10.2-no-ccache.patch     | 25 ++++++++++
 .../supercollider/supercollider-3.10.2.ebuild      |  2 +
 3 files changed, 80 insertions(+)

diff --git a/media-sound/supercollider/files/supercollider-3.10.2-boost-1.70.patch b/media-sound/supercollider/files/supercollider-3.10.2-boost-1.70.patch
new file mode 100644
index 00000000000..74fc05ac45c
--- /dev/null
+++ b/media-sound/supercollider/files/supercollider-3.10.2-boost-1.70.patch
@@ -0,0 +1,53 @@
+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
+

diff --git a/media-sound/supercollider/files/supercollider-3.10.2-no-ccache.patch b/media-sound/supercollider/files/supercollider-3.10.2-no-ccache.patch
new file mode 100644
index 00000000000..66a765a8b9e
--- /dev/null
+++ b/media-sound/supercollider/files/supercollider-3.10.2-no-ccache.patch
@@ -0,0 +1,25 @@
+disabled the use of ccache, to prevent FTBFS; as the compilation is done once
+it has no backdraws to make the debian package.
+Index: supercollider/CMakeLists.txt
+===================================================================
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -150,12 +150,12 @@ add_definitions(-DBOOST_CHRONO_HEADER_ON
+ #############################################
+ # Detect CCache
+ 
+-find_program(CCacheExectuable ccache)
+-if( CCacheExectuable )
+-  # only used with >=cmake-3.4
+-  set( CMAKE_C_COMPILER_LAUNCHER   "${CCacheExectuable}" )
+-  set( CMAKE_CXX_COMPILER_LAUNCHER "${CCacheExectuable}" )
+-endif()
++## find_program(CCacheExecutable ccache)
++## if( CCacheExecutable )
++##   # only used with >=cmake-3.4
++##   set( CMAKE_C_COMPILER_LAUNCHER   "${CCacheExecutable}" )
++##   set( CMAKE_CXX_COMPILER_LAUNCHER "${CCacheExecutable}" )
++## endif()
+ 
+ #############################################
+ # Options

diff --git a/media-sound/supercollider/supercollider-3.10.2.ebuild b/media-sound/supercollider/supercollider-3.10.2.ebuild
index 83ab1fcb862..6ea80528297 100644
--- a/media-sound/supercollider/supercollider-3.10.2.ebuild
+++ b/media-sound/supercollider/supercollider-3.10.2.ebuild
@@ -62,8 +62,10 @@ DEPEND="${RDEPEND}
 "
 
 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"


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/supercollider/files/, media-sound/supercollider/
@ 2021-01-23 17:55 Andreas Sturmlechner
  0 siblings, 0 replies; 10+ messages in thread
From: Andreas Sturmlechner @ 2021-01-23 17:55 UTC (permalink / raw
  To: gentoo-commits

commit:     e3da491ab853bdd310286411feadd4de961a3821
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 23 17:53:24 2021 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Jan 23 17:53:24 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e3da491a

media-sound/supercollider: Supposedly fix build with boost-1.74

Bug: https://bugs.gentoo.org/760489
Package-Manager: Portage-3.0.14, Repoman-3.0.2
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../files/supercollider-3.11.2-boost-1.74.patch    | 39 ++++++++++++++++++++++
 .../supercollider/supercollider-3.11.2.ebuild      |  9 +++--
 2 files changed, 43 insertions(+), 5 deletions(-)

diff --git a/media-sound/supercollider/files/supercollider-3.11.2-boost-1.74.patch b/media-sound/supercollider/files/supercollider-3.11.2-boost-1.74.patch
new file mode 100644
index 00000000000..1e1ca8b7e19
--- /dev/null
+++ b/media-sound/supercollider/files/supercollider-3.11.2-boost-1.74.patch
@@ -0,0 +1,39 @@
+From cc873049ff9249a33567e4cbcdeffeb6806a30d6 Mon Sep 17 00:00:00 2001
+From: brianlheim <self@brianlheim.com>
+Date: Tue, 25 Aug 2020 17:14:29 -0500
+Subject: [PATCH] remove workarounds for old boost versions
+
+we don't need to support boost pre-1.70 anymore, and tcp::socket::executor_type was always the right typealias to use
+---
+ server/supernova/sc/sc_osc_handler.hpp | 10 +---------
+ 1 file changed, 1 insertion(+), 9 deletions(-)
+
+diff --git a/server/supernova/sc/sc_osc_handler.hpp b/server/supernova/sc/sc_osc_handler.hpp
+index f17e99a557..676c94dbf1 100644
+--- a/server/supernova/sc/sc_osc_handler.hpp
++++ b/server/supernova/sc/sc_osc_handler.hpp
+@@ -234,11 +234,7 @@ class sc_osc_handler : private detail::network_thread, public sc_notify_observer
+     class tcp_connection : public nova_endpoint {
+     public:
+         using pointer = std::shared_ptr<tcp_connection>;
+-#if BOOST_VERSION >= 107000
+-        using executor = boost::asio::executor;
+-#else
+-        using executor = boost::asio::io_context::executor_type;
+-#endif
++        using executor = tcp::socket::executor_type;
+ 
+         static pointer create(const executor& executor) { return pointer(new tcp_connection(executor)); }
+ 
+@@ -249,11 +245,7 @@ class sc_osc_handler : private detail::network_thread, public sc_notify_observer
+         bool operator==(tcp_connection const& rhs) const { return &rhs == this; }
+ 
+     private:
+-#if BOOST_VERSION >= 107000
+         tcp_connection(const executor& executor): socket_(executor) {}
+-#else
+-        tcp_connection(const executor& executor): socket_(executor.context()) {}
+-#endif
+ 
+         void send(const char* data, size_t length) override final;
+ 

diff --git a/media-sound/supercollider/supercollider-3.11.2.ebuild b/media-sound/supercollider/supercollider-3.11.2.ebuild
index 288d5aa5c6b..22651297c88 100644
--- a/media-sound/supercollider/supercollider-3.11.2.ebuild
+++ b/media-sound/supercollider/supercollider-3.11.2.ebuild
@@ -1,11 +1,11 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
 
 inherit cmake flag-o-matic readme.gentoo-r1 xdg-utils
 
-DESCRIPTION="An environment and a programming language for real time audio synthesis."
+DESCRIPTION="Environment and 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.tar.bz2"
 
@@ -57,9 +57,7 @@ DEPEND="${RDEPEND}
 	dev-libs/icu
 	emacs? ( >=app-editors/emacs-23.1:* )
 	gedit? ( app-editors/gedit )
-	qt5? (
-		dev-qt/qtconcurrent:5
-	)
+	qt5? ( dev-qt/qtconcurrent:5 )
 	vim? ( app-editors/vim )
 "
 
@@ -67,6 +65,7 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-3.10.2-no-ccache.patch
 	"${FILESDIR}"/${P}-fewer-qt-deps.patch # Upstream PR 4991
 	"${FILESDIR}"/${P}-fix-libscsynth-linker-issue.patch # Upstream issue 4992
+	"${FILESDIR}"/${P}-boost-1.74.patch # bug 760489
 )
 
 S="${WORKDIR}/SuperCollider-${PV}-Source"


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/supercollider/files/, media-sound/supercollider/
@ 2021-01-23 17:55 Andreas Sturmlechner
  0 siblings, 0 replies; 10+ messages in thread
From: Andreas Sturmlechner @ 2021-01-23 17:55 UTC (permalink / raw
  To: gentoo-commits

commit:     9c7f9d19a470ca50229536c5192b772507dafb46
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 23 17:54:19 2021 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Jan 23 17:54:19 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9c7f9d19

media-sound/supercollider: Drop 3.11.0-r1

Package-Manager: Portage-3.0.14, Repoman-3.0.2
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 media-sound/supercollider/Manifest                 |   1 -
 .../files/supercollider-3.11.0-boost-1.72.patch    |  45 -------
 .../files/supercollider-3.11.0-fewer-qt-deps.patch | 126 -------------------
 .../files/supercollider-3.11.0-qt-5.15.patch       |  89 -------------
 .../supercollider/supercollider-3.11.0-r1.ebuild   | 139 ---------------------
 5 files changed, 400 deletions(-)

diff --git a/media-sound/supercollider/Manifest b/media-sound/supercollider/Manifest
index 60c9f8a5f07..dd35d0427bc 100644
--- a/media-sound/supercollider/Manifest
+++ b/media-sound/supercollider/Manifest
@@ -1,2 +1 @@
-DIST SuperCollider-3.11.0-Source.tar.bz2 18125654 BLAKE2B f73f2a75a132a4c3a3010ab093929a7aa6a1b534fe70115acd336a22ac8c6482ab6aef93c01f5d738bdd4504c75b1461dc555af9fdab8de8b16bd68a6854336f SHA512 64fef4d751436337baf40ced068a496d3e9221f751dcde7bfc2857a79c094764dff814d1c0cf519380053ddcfdb2c3f2b8eb787d3cff03e522c19fd95951b1da
 DIST SuperCollider-3.11.2-Source.tar.bz2 18130954 BLAKE2B 3713561e5ebee6dd4c08baa8aaaf4a422ab983480c76b2176373ce3cd080128f9392b50482e02dc82dce235e928d058c42722e0863dad9f6d2dd086894cd85da SHA512 636062c6acf8be43260632287b587f167352079c4e86ede34d1c6056180bfdb3ae50d6a3ff4f349327a3ab6af0eb01ac503d6b22667b4799dfcddd9c6489a23c

diff --git a/media-sound/supercollider/files/supercollider-3.11.0-boost-1.72.patch b/media-sound/supercollider/files/supercollider-3.11.0-boost-1.72.patch
deleted file mode 100644
index 94329b86791..00000000000
--- a/media-sound/supercollider/files/supercollider-3.11.0-boost-1.72.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 43b2b27c14186a9a3eff917d7598751ed298ae20 Mon Sep 17 00:00:00 2001
-From: Hector Martin <marcan@marcan.st>
-Date: Sun, 31 May 2020 21:25:12 +0900
-Subject: [PATCH 2/2] Fix build with Boost 1.72.0
-
----
- .../include/boost/sync/detail/throw_exception.hpp           | 4 ----
- external_libraries/oscpack_build.cpp                        | 6 +++---
- 2 files changed, 3 insertions(+), 7 deletions(-)
-
-diff --git a/external_libraries/boost_sync/include/boost/sync/detail/throw_exception.hpp b/external_libraries/boost_sync/include/boost/sync/detail/throw_exception.hpp
-index b5fdfabf8..a7d7fa7b3 100755
---- a/external_libraries/boost_sync/include/boost/sync/detail/throw_exception.hpp
-+++ b/external_libraries/boost_sync/include/boost/sync/detail/throw_exception.hpp
-@@ -164,11 +164,7 @@ BOOST_NOINLINE BOOST_NORETURN void throw_exception(const char* func, const char*
- 
- #endif // !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) && !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
- 
--#if !defined(BOOST_EXCEPTION_DISABLE)
--#define BOOST_SYNC_DETAIL_HERE BOOST_THROW_EXCEPTION_CURRENT_FUNCTION, __FILE__, __LINE__
--#else
- #define BOOST_SYNC_DETAIL_HERE BOOST_CURRENT_FUNCTION, __FILE__, __LINE__
--#endif
- 
- #define BOOST_SYNC_DETAIL_THROW_DEFAULT(ex)\
-     boost::sync::detail::throw_exception< ex >(BOOST_SYNC_DETAIL_HERE)
-diff --git a/external_libraries/oscpack_build.cpp b/external_libraries/oscpack_build.cpp
-index 3a658f3d3..1f6283d1c 100644
---- a/external_libraries/oscpack_build.cpp
-+++ b/external_libraries/oscpack_build.cpp
-@@ -1,8 +1,8 @@
--#include <boost/detail/endian.hpp>
-+#include <boost/predef.h>
- 
--#ifdef BOOST_LITTLE_ENDIAN
-+#if BOOST_ENDIAN_LITTLE_BYTE
- #define OSC_HOST_LITTLE_ENDIAN
--#elif defined(BOOST_BIG_ENDIAN)
-+#elif BOOST_ENDIAN_BIG_BYTE
- #define OSC_HOST_BIG_ENDIAN
- #else
- #error please define endianness
--- 
-2.26.2
-

diff --git a/media-sound/supercollider/files/supercollider-3.11.0-fewer-qt-deps.patch b/media-sound/supercollider/files/supercollider-3.11.0-fewer-qt-deps.patch
deleted file mode 100644
index 8b1014d9991..00000000000
--- a/media-sound/supercollider/files/supercollider-3.11.0-fewer-qt-deps.patch
+++ /dev/null
@@ -1,126 +0,0 @@
-From 5b655fbbf44ff5e67709667242a5feff707e1a51 Mon Sep 17 00:00:00 2001
-From: Hector Martin <marcan@marcan.st>
-Date: Mon, 1 Jun 2020 18:43:08 +0900
-Subject: [PATCH] Remove spurious Qt dependencies
-
----
- QtCollider/CMakeLists.txt     | 10 +++-------
- QtCollider/widgets/QcCanvas.h |  2 --
- README_LINUX.md               |  6 +++---
- README_RASPBERRY_PI.md        |  2 +-
- editors/sc-ide/CMakeLists.txt | 13 +++----------
- 5 files changed, 10 insertions(+), 23 deletions(-)
-
-diff --git a/QtCollider/CMakeLists.txt b/QtCollider/CMakeLists.txt
-index de38afb908..6b9437b9c0 100644
---- a/QtCollider/CMakeLists.txt
-+++ b/QtCollider/CMakeLists.txt
-@@ -7,19 +7,15 @@ option(SC_USE_QTWEBENGINE "Build with Qt WebEngine." ON)
- set(
-   QT_COMPONENTS
-   Core
--  Widgets
-+  Gui
-   Network
-   PrintSupport
--  OpenGL
--  Quick
--  Qml
--  Sql
-   Svg
-+  Widgets
- )
- 
- set (QT_COLLIDER_LIBS
--  Qt5::Core Qt5::Gui Qt5::Widgets Qt5::Network Qt5::PrintSupport
--  Qt5::Quick Qt5::Qml Qt5::Sql Qt5::OpenGL Qt5::Svg
-+  Qt5::Core Qt5::Gui Qt5::Network Qt5::PrintSupport Qt5::Svg Qt5::Widgets
-   ${MATH_LIBRARY})
- 
- if(SC_USE_QTWEBENGINE)
-diff --git a/QtCollider/widgets/QcCanvas.h b/QtCollider/widgets/QcCanvas.h
-index 3acb00fc23..ff230b8139 100644
---- a/QtCollider/widgets/QcCanvas.h
-+++ b/QtCollider/widgets/QcCanvas.h
-@@ -28,9 +28,7 @@
- #include <QBasicTimer>
- #include <QTime>
- #include <QPalette>
--#include <QGLWidget>
- 
--// using QcCanvasBase = QGLWidget;
- using QcCanvasBase = QWidget;
- 
- class QcCanvas : public QcCanvasBase {
-diff --git a/README_LINUX.md b/README_LINUX.md
-index d5818e9106..532ad9cc5a 100644
---- a/README_LINUX.md
-+++ b/README_LINUX.md
-@@ -75,7 +75,7 @@ Depending on your Debian flavor and version, your distribution's PPA may be stuc
- 
- If this displays version 5.7 or later, installing Qt is easy:
- 
--    sudo apt-get install qt5-default qt5-qmake qttools5-dev qttools5-dev-tools qtdeclarative5-dev qtwebengine5-dev libqt5svg5-dev libqt5websockets5-dev
-+    sudo apt-get install qt5-default qt5-qmake qttools5-dev qttools5-dev-tools qtwebengine5-dev libqt5svg5-dev libqt5websockets5-dev
- 
- If you are on Ubuntu 14.04 (Trusty) or 16.04 (Xenial), check the next section. Otherwise, you will have to use the official Qt installer. Sorry.
- 
-@@ -87,13 +87,13 @@ On Xenial:
- 
-     sudo apt-add-repository ppa:beineri/opt-qt-5.11.0-xenial
-     sudo apt-get update
--    sudo apt-get install qt511base qt511location qt511declarative qt511tools qt511webchannel qt511xmlpatterns qt511svg qt511webengine qt511websockets
-+    sudo apt-get install qt511base qt511location qt511tools qt511webchannel qt511xmlpatterns qt511svg qt511webengine qt511websockets
- 
- On Trusty, only Qt 5.10 and below are available:
- 
-     sudo apt-add-repository ppa:beineri/opt-qt-5.10.1-trusty
-     sudo apt-get update
--    sudo apt-get install qt510base qt510location qt510declarative qt510tools qt510webchannel qt510xmlpatterns qt510svg qt510webengine qt510websockets
-+    sudo apt-get install qt510base qt510location qt510tools qt510webchannel qt510xmlpatterns qt510svg qt510webengine qt510websockets
- 
- [Stephan Binner's Launchpad PPAs]: https://launchpad.net/~beineri
- 
-diff --git a/README_RASPBERRY_PI.md b/README_RASPBERRY_PI.md
-index 974ea1822c..aae8250388 100644
---- a/README_RASPBERRY_PI.md
-+++ b/README_RASPBERRY_PI.md
-@@ -42,7 +42,7 @@ Install required libraries:
-     # For GUI builds:
-     sudo apt-get install libjack-jackd2-dev libsndfile1-dev libasound2-dev libavahi-client-dev \
-         libreadline-dev libfftw3-dev libxt-dev libudev-dev cmake qttools5-dev qttools5-dev-tools \
--        qtdeclarative5-dev libqt5svg5-dev qjackctl
-+        qtbase5-dev libqt5svg5-dev qjackctl
-     # For GUI-less builds:
-     sudo apt-get install libsamplerate0-dev libsndfile1-dev libasound2-dev libavahi-client-dev \
-         libreadline-dev libfftw3-dev libudev-dev cmake git
-diff --git a/editors/sc-ide/CMakeLists.txt b/editors/sc-ide/CMakeLists.txt
-index 1ee9ae4f43..6248668594 100644
---- a/editors/sc-ide/CMakeLists.txt
-+++ b/editors/sc-ide/CMakeLists.txt
-@@ -6,22 +6,15 @@ set(QT_IDE_COMPONENTS
-     Concurrent
-     Core
-     LinguistTools
--    # OpenGL
--    PrintSupport
--    Qml
--    Quick
--    Sql
-+    Network
-     Widgets
- )
- 
- set(QT_IDE_LIBRARIES
-     Qt5::Concurrent
-     Qt5::Core
--    # Qt5::OpenGL
--    Qt5::PrintSupport
--    Qt5::Qml
--    Qt5::Quick
--    Qt5::Sql
-+    Qt5::Network
-+    Qt5::Widgets
- )
- 
- if(SC_USE_QTWEBENGINE)

diff --git a/media-sound/supercollider/files/supercollider-3.11.0-qt-5.15.patch b/media-sound/supercollider/files/supercollider-3.11.0-qt-5.15.patch
deleted file mode 100644
index 37f803312c2..00000000000
--- a/media-sound/supercollider/files/supercollider-3.11.0-qt-5.15.patch
+++ /dev/null
@@ -1,89 +0,0 @@
-From 244e55632cef86ecd363eb8df3f2352569f804f4 Mon Sep 17 00:00:00 2001
-From: Hector Martin <marcan@marcan.st>
-Date: Sun, 31 May 2020 21:24:52 +0900
-Subject: [PATCH 1/2] Fix build with Qt 5.15
-
----
- QtCollider/primitives/prim_QPen.cpp       | 1 +
- QtCollider/widgets/QcGraph.cpp            | 1 +
- QtCollider/widgets/QcLevelIndicator.cpp   | 1 +
- QtCollider/widgets/QcMultiSlider.cpp      | 1 +
- QtCollider/widgets/QcScopeShm.cpp         | 1 +
- QtCollider/widgets/soundfileview/view.cpp | 1 +
- 6 files changed, 6 insertions(+)
-
-diff --git a/QtCollider/primitives/prim_QPen.cpp b/QtCollider/primitives/prim_QPen.cpp
-index 8d531214d..4ba24519d 100644
---- a/QtCollider/primitives/prim_QPen.cpp
-+++ b/QtCollider/primitives/prim_QPen.cpp
-@@ -27,6 +27,7 @@
- #include "PyrKernel.h"
- 
- #include <QPainter>
-+#include <QPainterPath>
- #include <QVector2D>
- #include <QVector3D>
- #include <cmath>
-diff --git a/QtCollider/widgets/QcGraph.cpp b/QtCollider/widgets/QcGraph.cpp
-index 70215ae94..79e71d1ad 100644
---- a/QtCollider/widgets/QcGraph.cpp
-+++ b/QtCollider/widgets/QcGraph.cpp
-@@ -24,6 +24,7 @@
- #include "../style/routines.hpp"
- 
- #include <QPainter>
-+#include <QPainterPath>
- #include <QMouseEvent>
- #include <QApplication>
- #include <QtCore/qmath.h>
-diff --git a/QtCollider/widgets/QcLevelIndicator.cpp b/QtCollider/widgets/QcLevelIndicator.cpp
-index 19c7d4874..8a60f354a 100644
---- a/QtCollider/widgets/QcLevelIndicator.cpp
-+++ b/QtCollider/widgets/QcLevelIndicator.cpp
-@@ -23,6 +23,7 @@
- #include "../QcWidgetFactory.h"
- 
- #include <QPainter>
-+#include <QPainterPath>
- 
- QC_DECLARE_QWIDGET_FACTORY(QcLevelIndicator);
- 
-diff --git a/QtCollider/widgets/QcMultiSlider.cpp b/QtCollider/widgets/QcMultiSlider.cpp
-index 046b18739..381ddd404 100644
---- a/QtCollider/widgets/QcMultiSlider.cpp
-+++ b/QtCollider/widgets/QcMultiSlider.cpp
-@@ -26,6 +26,7 @@
- #include <QApplication>
- #include <QMouseEvent>
- #include <QPainter>
-+#include <QPainterPath>
- 
- #include <cmath>
- 
-diff --git a/QtCollider/widgets/QcScopeShm.cpp b/QtCollider/widgets/QcScopeShm.cpp
-index bb44623f4..edd38ef57 100644
---- a/QtCollider/widgets/QcScopeShm.cpp
-+++ b/QtCollider/widgets/QcScopeShm.cpp
-@@ -25,6 +25,7 @@
- #include "../debug.h"
- 
- #include <QPainter>
-+#include <QPainterPath>
- #include <QTimer>
- #include <QResizeEvent>
- #include <QWindow>
-diff --git a/QtCollider/widgets/soundfileview/view.cpp b/QtCollider/widgets/soundfileview/view.cpp
-index a3eca811f..baba0b245 100644
---- a/QtCollider/widgets/soundfileview/view.cpp
-+++ b/QtCollider/widgets/soundfileview/view.cpp
-@@ -24,6 +24,7 @@
- 
- #include <QGridLayout>
- #include <QPainter>
-+#include <QPainterPath>
- #include <QApplication>
- #include <QPaintEvent>
- #include <QCursor>
--- 
-2.26.2
-

diff --git a/media-sound/supercollider/supercollider-3.11.0-r1.ebuild b/media-sound/supercollider/supercollider-3.11.0-r1.ebuild
deleted file mode 100644
index 5132d3a2743..00000000000
--- a/media-sound/supercollider/supercollider-3.11.0-r1.ebuild
+++ /dev/null
@@ -1,139 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit cmake flag-o-matic 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.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 webengine X zeroconf"
-
-REQUIRED_USE="
-	qt5? ( X )
-	webengine? ( qt5 )
-"
-
-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/qtprintsupport:5
-		dev-qt/qtsvg:5
-		dev-qt/qtwidgets:5
-	)
-	server? ( !app-admin/supernova )
-	sndfile? ( media-libs/libsndfile )
-	webengine? (
-		dev-qt/qtwebchannel:5
-		dev-qt/qtwebengine:5[widgets]
-		dev-qt/qtwebsockets:5
-	)
-	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
-	)
-	vim? ( app-editors/vim )
-"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-3.10.2-no-ccache.patch
-	"${FILESDIR}"/${P}-boost-1.72.patch # Upstream PR 4990
-	"${FILESDIR}"/${P}-qt-5.15.patch # Upstream PR 4986
-	"${FILESDIR}"/${P}-fewer-qt-deps.patch # Upstream PR 4991
-)
-
-S="${WORKDIR}/SuperCollider-${PV}-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 qt5 && mycmakeargs+=(
-		-DSC_USE_QTWEBENGINE=$(usex webengine)
-	)
-
-	use debug && mycmakeargs+=(
-		-DSC_MEMORY_DEBUGGING=ON
-		-DSN_MEMORY_DEBUGGING=ON
-		-DGC_SANITYCHECK=ON
-	)
-
-	append-flags $(usex debug '' -DNDEBUG)
-
-	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
-}
-
-src_test() {
-	export QT_QPA_PLATFORM=offscreen
-	cmake_src_test
-}
-
-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
-}


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/supercollider/files/, media-sound/supercollider/
@ 2024-01-31 11:16 Andreas Sturmlechner
  0 siblings, 0 replies; 10+ messages in thread
From: Andreas Sturmlechner @ 2024-01-31 11:16 UTC (permalink / raw
  To: gentoo-commits

commit:     274c82d3e1d6c131a2b50b20472eb5c1d32064a2
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 30 23:02:39 2024 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Jan 31 11:15:24 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=274c82d3

media-sound/supercollider: Fix build with >=dev-libs/boost-1.84

Closes: https://bugs.gentoo.org/921595
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../files/supercollider-3.13.0-boost-1.84.patch    | 110 +++++++++++++++++++++
 .../supercollider/supercollider-3.13.0.ebuild      |   5 +-
 2 files changed, 113 insertions(+), 2 deletions(-)

diff --git a/media-sound/supercollider/files/supercollider-3.13.0-boost-1.84.patch b/media-sound/supercollider/files/supercollider-3.13.0-boost-1.84.patch
new file mode 100644
index 000000000000..d3b2340a3d61
--- /dev/null
+++ b/media-sound/supercollider/files/supercollider-3.13.0-boost-1.84.patch
@@ -0,0 +1,110 @@
+From 6e4e12826fd144c874c93c2efb669fbb119b831a Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Tue, 30 Jan 2024 23:56:14 +0100
+Subject: [PATCH] Import boost_string_file.hpp from boost-1.83 and put it to
+ use immediately
+
+string_file.hpp was deprecated in boost-1.79.0 and removed in 1.84.0
+
+Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
+---
+ common/boost_string_file.hpp   | 59 ++++++++++++++++++++++++++++++++++
+ lang/LangSource/PyrLexer.cpp   |  2 +-
+ server/scsynth/SC_GraphDef.cpp |  2 +-
+ 3 files changed, 61 insertions(+), 2 deletions(-)
+ create mode 100644 common/boost_string_file.hpp
+
+diff --git a/common/boost_string_file.hpp b/common/boost_string_file.hpp
+new file mode 100644
+index 000000000..1ccb63de6
+--- /dev/null
++++ b/common/boost_string_file.hpp
+@@ -0,0 +1,59 @@
++//  filesystem/string_file.hpp  --------------------------------------------------------//
++
++//  Copyright Beman Dawes 2015
++
++//  Distributed under the Boost Software License, Version 1.0.
++//  See http://www.boost.org/LICENSE_1_0.txt
++
++//  Library home page: http://www.boost.org/libs/filesystem
++
++#ifndef BOOST_FILESYSTEM_STRING_FILE_HPP
++#define BOOST_FILESYSTEM_STRING_FILE_HPP
++
++#include <boost/filesystem/config.hpp>
++
++#include <cstddef>
++#include <limits>
++#include <string>
++#include <ios>
++#include <stdexcept>
++#include <boost/cstdint.hpp>
++#include <boost/filesystem/path.hpp>
++#include <boost/filesystem/fstream.hpp>
++#include <boost/filesystem/operations.hpp>
++
++#include <boost/filesystem/detail/header.hpp> // must be the last #include
++
++namespace boost {
++namespace filesystem {
++
++inline void save_string_file(path const& p, std::string const& str)
++{
++    filesystem::ofstream file;
++    file.exceptions(std::ios_base::failbit | std::ios_base::badbit);
++    file.open(p, std::ios_base::binary);
++    const std::size_t sz = str.size();
++    if (BOOST_UNLIKELY(sz > static_cast< boost::uintmax_t >((std::numeric_limits< std::streamsize >::max)())))
++        BOOST_FILESYSTEM_THROW(std::length_error("String size exceeds max write size"));
++    file.write(str.c_str(), static_cast< std::streamsize >(sz));
++}
++
++inline void load_string_file(path const& p, std::string& str)
++{
++    filesystem::ifstream file;
++    file.exceptions(std::ios_base::failbit | std::ios_base::badbit);
++    file.open(p, std::ios_base::binary);
++    const boost::uintmax_t sz = filesystem::file_size(p);
++    if (BOOST_UNLIKELY(sz > static_cast< boost::uintmax_t >((std::numeric_limits< std::streamsize >::max)())))
++        BOOST_FILESYSTEM_THROW(std::length_error("File size exceeds max read size"));
++    str.resize(static_cast< std::size_t >(sz), '\0');
++    if (sz > 0u)
++        file.read(&str[0], static_cast< std::streamsize >(sz));
++}
++
++} // namespace filesystem
++} // namespace boost
++
++#include <boost/filesystem/detail/footer.hpp>
++
++#endif // BOOST_FILESYSTEM_STRING_FILE_HPP
+diff --git a/lang/LangSource/PyrLexer.cpp b/lang/LangSource/PyrLexer.cpp
+index 7ebe3d726..06c1454ca 100644
+--- a/lang/LangSource/PyrLexer.cpp
++++ b/lang/LangSource/PyrLexer.cpp
+@@ -38,7 +38,7 @@
+ 
+ #include <boost/filesystem/path.hpp>
+ #include <boost/filesystem/operations.hpp>
+-#include <boost/filesystem/string_file.hpp>
++#include "boost_string_file.hpp"
+ 
+ #include "PyrParseNode.h"
+ #include "Bison/lang11d_tab.h"
+diff --git a/server/scsynth/SC_GraphDef.cpp b/server/scsynth/SC_GraphDef.cpp
+index 957aca193..5f8f15741 100644
+--- a/server/scsynth/SC_GraphDef.cpp
++++ b/server/scsynth/SC_GraphDef.cpp
+@@ -46,7 +46,7 @@
+ #include <string>
+ 
+ #include <boost/filesystem/operations.hpp> // recursive_directory_iterator
+-#include <boost/filesystem/string_file.hpp> // load_string_file
++#include "boost_string_file.hpp" // load_string_file
+ 
+ namespace bfs = boost::filesystem;
+ 
+-- 
+2.43.0
+

diff --git a/media-sound/supercollider/supercollider-3.13.0.ebuild b/media-sound/supercollider/supercollider-3.13.0.ebuild
index 3bba39d52c6d..3db84144c434 100644
--- a/media-sound/supercollider/supercollider-3.13.0.ebuild
+++ b/media-sound/supercollider/supercollider-3.13.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -8,6 +8,7 @@ inherit cmake flag-o-matic xdg
 DESCRIPTION="Environment and 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.tar.bz2"
+S="${WORKDIR}/SuperCollider-${PV}-Source"
 
 LICENSE="GPL-2 gpl3? ( GPL-3 )"
 SLOT="0"
@@ -60,7 +61,7 @@ DEPEND="${RDEPEND}
 	vim? ( app-editors/vim )
 "
 
-S="${WORKDIR}/SuperCollider-${PV}-Source"
+PATCHES=( "${FILESDIR}/${P}-boost-1.84.patch" ) # bug 921595
 
 src_configure() {
 	local mycmakeargs=(


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/supercollider/files/, media-sound/supercollider/
@ 2024-01-31 11:16 Andreas Sturmlechner
  0 siblings, 0 replies; 10+ messages in thread
From: Andreas Sturmlechner @ 2024-01-31 11:16 UTC (permalink / raw
  To: gentoo-commits

commit:     ba0d52454a0c0b24a6a282a13067724cee40a97b
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 30 23:03:59 2024 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Jan 31 11:15:28 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ba0d5245

media-sound/supercollider: Fix build with GCC-13

See also: https://github.com/supercollider/supercollider/issues/6021

Thanks-to: Kfir Ozer
Closes: https://bugs.gentoo.org/905127
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../supercollider/files/supercollider-3.13.0-gcc-13.patch | 15 +++++++++++++++
 media-sound/supercollider/supercollider-3.13.0.ebuild     |  5 ++++-
 2 files changed, 19 insertions(+), 1 deletion(-)

diff --git a/media-sound/supercollider/files/supercollider-3.13.0-gcc-13.patch b/media-sound/supercollider/files/supercollider-3.13.0-gcc-13.patch
new file mode 100644
index 000000000000..1ff8f5f92203
--- /dev/null
+++ b/media-sound/supercollider/files/supercollider-3.13.0-gcc-13.patch
@@ -0,0 +1,15 @@
+Gentoo-bug: https://bugs.gentoo.org/905127
+Upstream issue: https://github.com/supercollider/supercollider/issues/6021
+
+diff --git a/common/SC_PaUtils.cpp b/common/SC_PaUtils.cpp
+index e0f562c..9e45c63 100644
+--- a/common/SC_PaUtils.cpp
++++ b/common/SC_PaUtils.cpp
+@@ -3,6 +3,7 @@
+ #include "SC_PaUtils.hpp"
+ #include <cstring>
+ #include <cstdio>
++#include <cstdint>
+ 
+ #ifdef __APPLE__
+ #    include <pa_mac_core.h>

diff --git a/media-sound/supercollider/supercollider-3.13.0.ebuild b/media-sound/supercollider/supercollider-3.13.0.ebuild
index 3db84144c434..b0e05051ca89 100644
--- a/media-sound/supercollider/supercollider-3.13.0.ebuild
+++ b/media-sound/supercollider/supercollider-3.13.0.ebuild
@@ -61,7 +61,10 @@ DEPEND="${RDEPEND}
 	vim? ( app-editors/vim )
 "
 
-PATCHES=( "${FILESDIR}/${P}-boost-1.84.patch" ) # bug 921595
+PATCHES=(
+	"${FILESDIR}/${P}-boost-1.84.patch" # bug 921595
+	"${FILESDIR}/${P}-gcc-13.patch" # bug 905127
+)
 
 src_configure() {
 	local mycmakeargs=(


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/supercollider/files/, media-sound/supercollider/
@ 2024-01-31 11:16 Andreas Sturmlechner
  0 siblings, 0 replies; 10+ messages in thread
From: Andreas Sturmlechner @ 2024-01-31 11:16 UTC (permalink / raw
  To: gentoo-commits

commit:     c153dde590d03a7cae249141569578a253399bfb
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 30 23:37:59 2024 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Jan 31 11:15:28 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c153dde5

media-sound/supercollider: Fix ccache automagic

See also: https://github.com/supercollider/supercollider/pull/6209

Closes: https://bugs.gentoo.org/922095
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../files/supercollider-3.13.0-no-ccache.patch     | 169 +++++++++++++++++++++
 .../supercollider/supercollider-3.13.0.ebuild      |   2 +
 2 files changed, 171 insertions(+)

diff --git a/media-sound/supercollider/files/supercollider-3.13.0-no-ccache.patch b/media-sound/supercollider/files/supercollider-3.13.0-no-ccache.patch
new file mode 100644
index 000000000000..ad3b03509e61
--- /dev/null
+++ b/media-sound/supercollider/files/supercollider-3.13.0-no-ccache.patch
@@ -0,0 +1,169 @@
+From bab60d91bd362fd1e46b79d64aaba747fe7c60fa Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Wed, 31 Jan 2024 00:31:11 +0100
+Subject: [PATCH] Make ccache detection an option
+
+Arguably it should not even be enabled by default,
+but at least it should be optional.
+
+Consolidate ccache detection in one block.
+
+Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
+---
+ CMakeLists.txt | 122 +++++++++++++++++++++++++------------------------
+ 1 file changed, 62 insertions(+), 60 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index ad5ea5b49..73411ae9e 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -46,32 +46,6 @@ CONFIGURE_FILE(
+   "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
+   IMMEDIATE @ONLY)
+ 
+-# workaround for using ccache with Xcode generator
+-# thanks to Craig Scott: https://crascit.com/2016/04/09/using-ccache-with-cmake/
+-get_property(RULE_LAUNCH_COMPILE GLOBAL PROPERTY RULE_LAUNCH_COMPILE)
+-if(RULE_LAUNCH_COMPILE AND CMAKE_GENERATOR STREQUAL "Xcode")
+-
+-    # find ccache
+-    find_program(CCACHE_PROGRAM ccache)
+-
+-    message(STATUS "Xcode and ccache detected: using ccache to speed up build process")
+-
+-    # Set up wrapper scripts
+-    set(SC_LAUNCH_C_SCRIPT   "${CMAKE_BINARY_DIR}/launch-c")
+-    set(SC_LAUNCH_CXX_SCRIPT "${CMAKE_BINARY_DIR}/launch-cxx")
+-
+-    configure_file("cmake_modules/launch-c.in"   launch-c)
+-    configure_file("cmake_modules/launch-cxx.in" launch-cxx)
+-    execute_process(COMMAND chmod a+rx "${SC_LAUNCH_C_SCRIPT}" "${SC_LAUNCH_CXX_SCRIPT}")
+-
+-    # Set Xcode project attributes to route compilation and linking
+-    # through our scripts
+-    set(CMAKE_XCODE_ATTRIBUTE_CC         "${SC_LAUNCH_C_SCRIPT}")
+-    set(CMAKE_XCODE_ATTRIBUTE_CXX        "${SC_LAUNCH_CXX_SCRIPT}")
+-    set(CMAKE_XCODE_ATTRIBUTE_LD         "${SC_LAUNCH_C_SCRIPT}")
+-    set(CMAKE_XCODE_ATTRIBUTE_LDPLUSPLUS "${SC_LAUNCH_CXX_SCRIPT}")
+-endif()
+-
+ ADD_CUSTOM_TARGET(uninstall
+   "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")
+ 
+@@ -147,44 +121,11 @@ endif()
+ 
+ add_definitions(-DBOOST_CHRONO_HEADER_ONLY -DBOOST_CONFIG_SUPPRESS_OUTDATED_MESSAGE)
+ 
+-
+-#############################################
+-# Detect CCache
+-
+-find_program(CCacheExectuable ccache)
+-if( CCacheExectuable )
+-  # only used with >=cmake-3.4
+-  set( CMAKE_C_COMPILER_LAUNCHER   "${CCacheExectuable}" )
+-  set( CMAKE_CXX_COMPILER_LAUNCHER "${CCacheExectuable}" )
+-  if(NOT CMAKE_GENERATOR MATCHES "Xcode" AND (NOT CMAKE_GENERATOR MATCHES "Visual Studio")) # we already post a message when using Xcode or MSVC
+-    message(STATUS "Found ccache at ${CCacheExectuable}: using ccache to speed up build process")
+-  endif()
+-
+-  # fix for Visual Studio adapted from https://github.com/ccache/ccache/wiki/MS-Visual-Studio#usage
+-  # NOTE: there is an issue with ccache installed from chocolatey
+-  # since chocolatey puts a "shim" as opposed to the actual executable in the PATH
+-  # the solution is to add the path to the actual ccache executable earlier in the path
+-  # e.g. in bash: export PATH=`echo c:/ProgramData/chocolatey/lib/ccache/tools/ccache*`:$PATH
+-  if (MSVC)
+-    message(STATUS "Found ccache at ${CCacheExectuable}: using ccache with MSVC to speed up build process")
+-    file(COPY_FILE
+-      ${CCacheExectuable} ${CMAKE_BINARY_DIR}/cl.exe
+-      ONLY_IF_DIFFERENT)
+-
+-    set(CMAKE_VS_GLOBALS
+-      "CLToolExe=cl.exe"
+-      "CLToolPath=${CMAKE_BINARY_DIR}"
+-      "TrackFileAccess=false"
+-      "UseMultiToolTask=true"
+-      "DebugInformationFormat=OldStyle"
+-    )
+-  endif()
+-endif()
+-
+ #############################################
+ # Options
+ option(NOVA_SIMD "Build with nova-simd support." ON)
+ option(FINAL_BUILD "Build as single source file." OFF)
++option(USE_CCACHE "Use ccache if available." ON)
+ 
+ option(FFT_GREEN "Use internal 'Green' FFT lib rather than FFTW. (Not recommended.)" OFF)
+ 
+@@ -285,6 +226,67 @@ if(APPLE)
+     option(SC_VERIFY_APP "Run verify_app on the app bundle" OFF)
+ endif()
+ 
++#############################################
++# Detect CCache
++
++if(USE_CCACHE)
++    # workaround for using ccache with Xcode generator
++    # thanks to Craig Scott: https://crascit.com/2016/04/09/using-ccache-with-cmake/
++    get_property(RULE_LAUNCH_COMPILE GLOBAL PROPERTY RULE_LAUNCH_COMPILE)
++    if(RULE_LAUNCH_COMPILE AND CMAKE_GENERATOR STREQUAL "Xcode")
++
++        # find ccache
++        find_program(CCACHE_PROGRAM ccache)
++
++        message(STATUS "Xcode and ccache detected: using ccache to speed up build process")
++
++        # Set up wrapper scripts
++        set(SC_LAUNCH_C_SCRIPT   "${CMAKE_BINARY_DIR}/launch-c")
++        set(SC_LAUNCH_CXX_SCRIPT "${CMAKE_BINARY_DIR}/launch-cxx")
++
++        configure_file("cmake_modules/launch-c.in"   launch-c)
++        configure_file("cmake_modules/launch-cxx.in" launch-cxx)
++        execute_process(COMMAND chmod a+rx "${SC_LAUNCH_C_SCRIPT}" "${SC_LAUNCH_CXX_SCRIPT}")
++
++        # Set Xcode project attributes to route compilation and linking
++        # through our scripts
++        set(CMAKE_XCODE_ATTRIBUTE_CC         "${SC_LAUNCH_C_SCRIPT}")
++        set(CMAKE_XCODE_ATTRIBUTE_CXX        "${SC_LAUNCH_CXX_SCRIPT}")
++        set(CMAKE_XCODE_ATTRIBUTE_LD         "${SC_LAUNCH_C_SCRIPT}")
++        set(CMAKE_XCODE_ATTRIBUTE_LDPLUSPLUS "${SC_LAUNCH_CXX_SCRIPT}")
++    endif()
++
++    find_program(CCacheExectuable ccache)
++    if( CCacheExectuable )
++        # only used with >=cmake-3.4
++        set( CMAKE_C_COMPILER_LAUNCHER   "${CCacheExectuable}" )
++        set( CMAKE_CXX_COMPILER_LAUNCHER "${CCacheExectuable}" )
++        if(NOT CMAKE_GENERATOR MATCHES "Xcode" AND (NOT CMAKE_GENERATOR MATCHES "Visual Studio")) # we already post a message when using Xcode or MSVC
++            message(STATUS "Found ccache at ${CCacheExectuable}: using ccache to speed up build process")
++        endif()
++
++        # fix for Visual Studio adapted from https://github.com/ccache/ccache/wiki/MS-Visual-Studio#usage
++        # NOTE: there is an issue with ccache installed from chocolatey
++        # since chocolatey puts a "shim" as opposed to the actual executable in the PATH
++        # the solution is to add the path to the actual ccache executable earlier in the path
++        # e.g. in bash: export PATH=`echo c:/ProgramData/chocolatey/lib/ccache/tools/ccache*`:$PATH
++        if (MSVC)
++            message(STATUS "Found ccache at ${CCacheExectuable}: using ccache with MSVC to speed up build process")
++            file(COPY_FILE
++            ${CCacheExectuable} ${CMAKE_BINARY_DIR}/cl.exe
++            ONLY_IF_DIFFERENT)
++
++            set(CMAKE_VS_GLOBALS
++            "CLToolExe=cl.exe"
++            "CLToolPath=${CMAKE_BINARY_DIR}"
++            "TrackFileAccess=false"
++            "UseMultiToolTask=true"
++            "DebugInformationFormat=OldStyle"
++            )
++        endif()
++    endif()
++endif()
++
+ #############################################
+ # some default libraries
+ 
+-- 
+2.43.0
+

diff --git a/media-sound/supercollider/supercollider-3.13.0.ebuild b/media-sound/supercollider/supercollider-3.13.0.ebuild
index b0e05051ca89..2b8ee8636dd3 100644
--- a/media-sound/supercollider/supercollider-3.13.0.ebuild
+++ b/media-sound/supercollider/supercollider-3.13.0.ebuild
@@ -64,6 +64,7 @@ DEPEND="${RDEPEND}
 PATCHES=(
 	"${FILESDIR}/${P}-boost-1.84.patch" # bug 921595
 	"${FILESDIR}/${P}-gcc-13.patch" # bug 905127
+	"${FILESDIR}/${P}-no-ccache.patch" # bug 922095
 )
 
 src_configure() {
@@ -72,6 +73,7 @@ src_configure() {
 		-DINSTALL_HELP=ON
 		-DSYSTEM_BOOST=ON
 		-DSYSTEM_YAMLCPP=ON
+		-DUSE_CCACHE=OFF
 		-DSC_ABLETON_LINK=$(usex ableton-link)
 		-DSSE=$(usex cpu_flags_x86_sse)
 		-DSSE2=$(usex cpu_flags_x86_sse2)


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/supercollider/files/, media-sound/supercollider/
@ 2025-01-22 23:16 Andreas Sturmlechner
  0 siblings, 0 replies; 10+ messages in thread
From: Andreas Sturmlechner @ 2025-01-22 23:16 UTC (permalink / raw
  To: gentoo-commits

commit:     b2a88ced8cbf57a332712706cc302c8d87d11ad6
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 22 22:45:16 2025 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Jan 22 23:14:36 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b2a88ced

media-sound/supercollider: Fix build w/ boost-1.87

Closes: https://bugs.gentoo.org/946624
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../files/supercollider-3.13.0-boost-1.87-1.patch  | 584 +++++++++++++++++++++
 .../files/supercollider-3.13.0-boost-1.87-2.patch  |  37 ++
 .../supercollider/supercollider-3.13.0-r2.ebuild   |   3 +-
 3 files changed, 623 insertions(+), 1 deletion(-)

diff --git a/media-sound/supercollider/files/supercollider-3.13.0-boost-1.87-1.patch b/media-sound/supercollider/files/supercollider-3.13.0-boost-1.87-1.patch
new file mode 100644
index 000000000000..e3aaee971e98
--- /dev/null
+++ b/media-sound/supercollider/files/supercollider-3.13.0-boost-1.87-1.patch
@@ -0,0 +1,584 @@
+From 1bdc50ab4172c229e130120e9e075e5c3319f9f0 Mon Sep 17 00:00:00 2001
+From: Dennis Scheiba <git@dennis-scheiba.com>
+Date: Thu, 19 Dec 2024 15:58:01 +0100
+Subject: [PATCH 1/5] replace deprecated `boost::asio::io_service` with
+ `boost::asio::io_context` (#6572)
+
+---
+ QtCollider/LanguageClient.cpp             |  2 +-
+ lang/LangPrimSource/OSCData.cpp           |  2 +-
+ lang/LangPrimSource/PyrSerialPrim.cpp     |  4 ++--
+ lang/LangPrimSource/SC_ComPort.cpp        | 20 +++++++++----------
+ lang/LangPrimSource/SC_ComPort.h          |  2 +-
+ lang/LangSource/SC_TerminalClient.cpp     | 24 +++++++++++------------
+ lang/LangSource/SC_TerminalClient.h       |  8 ++++----
+ server/scsynth/SC_ComPort.cpp             | 18 ++++++++---------
+ server/supernova/sc/sc_osc_handler.hpp    |  6 +++---
+ server/supernova/utilities/osc_server.hpp | 13 ++++++------
+ 10 files changed, 49 insertions(+), 50 deletions(-)
+
+diff --git a/QtCollider/LanguageClient.cpp b/QtCollider/LanguageClient.cpp
+index 00576ebd04a..83c73a5bf83 100644
+--- a/QtCollider/LanguageClient.cpp
++++ b/QtCollider/LanguageClient.cpp
+@@ -70,7 +70,7 @@ void LangClient::customEvent(QEvent* e) {
+ 
+     case Event_SCRequest_Work:
+         QApplication::removePostedEvents(this, Event_SCRequest_Work);
+-        mIoService.poll();
++        mIoContext.poll();
+         break;
+     case Event_SCRequest_Quit: {
+         int code = static_cast<SCRequestEvent*>(e)->data.toInt();
+diff --git a/lang/LangPrimSource/OSCData.cpp b/lang/LangPrimSource/OSCData.cpp
+index 0c0d7f9f7ff..bbb3caa8006 100644
+--- a/lang/LangPrimSource/OSCData.cpp
++++ b/lang/LangPrimSource/OSCData.cpp
+@@ -934,7 +934,7 @@ void cleanup_OSC() {
+ #endif
+ }
+ 
+-extern boost::asio::io_service ioService;
++extern boost::asio::io_context ioContext;
+ 
+ static int prGetHostByName(VMGlobals* g, int numArgsPushed) {
+     PyrSlot* a = g->sp;
+diff --git a/lang/LangPrimSource/PyrSerialPrim.cpp b/lang/LangPrimSource/PyrSerialPrim.cpp
+index cc56abdcead..bcfbeda5551 100644
+--- a/lang/LangPrimSource/PyrSerialPrim.cpp
++++ b/lang/LangPrimSource/PyrSerialPrim.cpp
+@@ -49,7 +49,7 @@
+ using boost::uint8_t;
+ using boost::asio::serial_port;
+ 
+-extern boost::asio::io_service ioService; // defined in SC_ComPort.cpp
++extern boost::asio::io_context ioContext; // defined in SC_ComPort.cpp
+ 
+ /**
+  * \brief Serial port abstraction
+@@ -104,7 +104,7 @@ class SerialPort {
+      */
+     SerialPort(PyrObject* obj, const char* serialport, const Options& options):
+         m_obj(obj),
+-        m_port(ioService, serialport),
++        m_port(ioContext, serialport),
+         m_options(options),
+         m_rxErrors(0) {
+         using namespace boost::asio;
+diff --git a/lang/LangPrimSource/SC_ComPort.cpp b/lang/LangPrimSource/SC_ComPort.cpp
+index 78f01b389d9..aa48e078311 100644
+--- a/lang/LangPrimSource/SC_ComPort.cpp
++++ b/lang/LangPrimSource/SC_ComPort.cpp
+@@ -46,12 +46,12 @@ void ProcessRawMessage(std::unique_ptr<char[]> inData, size_t inSize, ReplyAddre
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////
+ 
+ SC_Thread gAsioThread;
+-boost::asio::io_service ioService;
++boost::asio::io_context ioContext;
+ 
+ 
+ static void asioFunction() {
+-    boost::asio::io_service::work work(ioService);
+-    ioService.run();
++    boost::asio::io_context::work work(ioContext);
++    ioContext.run();
+ }
+ 
+ void startAsioThread() {
+@@ -60,7 +60,7 @@ void startAsioThread() {
+ }
+ 
+ void stopAsioThread() {
+-    ioService.stop();
++    ioContext.stop();
+     gAsioThread.join();
+ }
+ 
+@@ -66,7 +66,7 @@
+ 
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////
+ 
+-SC_UdpInPort::SC_UdpInPort(int inPortNum, int portsToCheck): mPortNum(inPortNum), udpSocket(ioService) {
++SC_UdpInPort::SC_UdpInPort(int inPortNum, int portsToCheck): mPortNum(inPortNum), udpSocket(ioContext) {
+     using namespace boost::asio;
+ 
+     BOOST_AUTO(protocol, ip::udp::v4());
+@@ -142,7 +142,7 @@
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////
+ 
+ SC_TcpInPort::SC_TcpInPort(int inPortNum, int inMaxConnections, int inBacklog):
+-    acceptor(ioService, boost::asio::ip::tcp::endpoint(boost::asio::ip::tcp::v4(), inPortNum)),
++    acceptor(ioContext, boost::asio::ip::tcp::endpoint(boost::asio::ip::tcp::v4(), inPortNum)),
+     mPortNum(inPortNum) {
+     // FIXME: handle max connections
+     // FIXME: backlog???
+@@ -151,7 +151,7 @@
+ }
+ 
+ void SC_TcpInPort::startAccept() {
+-    SC_TcpConnection::pointer newConnection(new SC_TcpConnection(ioService, this));
++    SC_TcpConnection::pointer newConnection(new SC_TcpConnection(ioContext, this));
+ 
+     acceptor.async_accept(
+         newConnection->socket,
+@@ -210,7 +210,7 @@
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////
+ 
+ SC_TcpClientPort::SC_TcpClientPort(unsigned long inAddress, int inPort, ClientNotifyFunc notifyFunc, void* clientData):
+-    socket(ioService),
++    socket(ioContext),
+     endpoint(boost::asio::ip::address_v4(inAddress), inPort),
+     mClientNotifyFunc(notifyFunc),
+     mClientData(clientData) {
+diff --git a/lang/LangPrimSource/SC_ComPort.h b/lang/LangPrimSource/SC_ComPort.h
+index 0e192e91914..99d23b3b27b 100644
+--- a/lang/LangPrimSource/SC_ComPort.h
++++ b/lang/LangPrimSource/SC_ComPort.h
+@@ -63,8 +63,8 @@
+     typedef boost::shared_ptr<SC_TcpConnection> pointer;
+     boost::asio::ip::tcp::socket socket;
+ 
+-    SC_TcpConnection(boost::asio::io_service& ioService, class SC_TcpInPort* parent):
+-        socket(ioService),
++    SC_TcpConnection(boost::asio::io_context& ioContext, class SC_TcpInPort* parent):
++        socket(ioContext),
+         mParent(parent) {}
+ 
+     void start();
+diff --git a/lang/LangSource/SC_TerminalClient.cpp b/lang/LangSource/SC_TerminalClient.cpp
+index 13f11a11176..3a091514ab5 100644
+--- a/lang/LangSource/SC_TerminalClient.cpp
++++ b/lang/LangSource/SC_TerminalClient.cpp
+@@ -75,12 +75,12 @@ SC_TerminalClient::SC_TerminalClient(const char* name):
+     SC_LanguageClient(name),
+     mReturnCode(0),
+     mUseReadline(false),
+-    mWork(mIoService),
+-    mTimer(mIoService),
++    mWork(mIoContext),
++    mTimer(mIoContext),
+ #ifndef _WIN32
+-    mStdIn(mInputService, STDIN_FILENO)
++    mStdIn(mInputContext, STDIN_FILENO)
+ #else
+-    mStdIn(mInputService, GetStdHandle(STD_INPUT_HANDLE))
++    mStdIn(mInputContext, GetStdHandle(STD_INPUT_HANDLE))
+ #endif
+ {
+ }
+@@ -360,19 +360,19 @@ void SC_TerminalClient::onLibraryStartup() {
+ void SC_TerminalClient::sendSignal(Signal sig) {
+     switch (sig) {
+     case sig_input:
+-        mIoService.post(boost::bind(&SC_TerminalClient::interpretInput, this));
++        mIoContext.post(boost::bind(&SC_TerminalClient::interpretInput, this));
+         break;
+ 
+     case sig_recompile:
+-        mIoService.post(boost::bind(&SC_TerminalClient::recompileLibrary, this));
++        mIoContext.post(boost::bind(&SC_TerminalClient::recompileLibrary, this));
+         break;
+ 
+     case sig_sched:
+-        mIoService.post(boost::bind(&SC_TerminalClient::tick, this, boost::system::error_code()));
++        mIoContext.post(boost::bind(&SC_TerminalClient::tick, this, boost::system::error_code()));
+         break;
+ 
+     case sig_stop:
+-        mIoService.post(boost::bind(&SC_TerminalClient::stopMain, this));
++        mIoContext.post(boost::bind(&SC_TerminalClient::stopMain, this));
+         break;
+     }
+ }
+@@ -447,7 +447,7 @@ void SC_TerminalClient::tick(const boost::system::error_code& error) {
+     }
+ }
+ 
+-void SC_TerminalClient::commandLoop() { mIoService.run(); }
++void SC_TerminalClient::commandLoop() { mIoContext.run(); }
+ 
+ void SC_TerminalClient::daemonLoop() { commandLoop(); }
+ 
+@@ -614,8 +614,8 @@ void SC_TerminalClient::inputThreadFn() {
+ 
+     startInputRead();
+ 
+-    boost::asio::io_service::work work(mInputService);
+-    mInputService.run();
++    boost::asio::io_context::work work(mInputContext);
++    mInputContext.run();
+ }
+ 
+ 
+@@ -662,7 +662,7 @@ void SC_TerminalClient::startInput() {
+ }
+ 
+ void SC_TerminalClient::endInput() {
+-    mInputService.stop();
++    mInputContext.stop();
+     mStdIn.cancel();
+ #ifdef _WIN32
+     // Note this breaks Windows XP compatibility, since this function is only defined in Vista and later
+diff --git a/lang/LangSource/SC_TerminalClient.h b/lang/LangSource/SC_TerminalClient.h
+index 373e82bb830..0ea3cdc35b3 100644
+--- a/lang/LangSource/SC_TerminalClient.h
++++ b/lang/LangSource/SC_TerminalClient.h
+@@ -91,7 +91,7 @@ class SCLANG_DLLEXPORT SC_TerminalClient : public SC_LanguageClient {
+     // NOTE: It may be called from any thread, and with interpreter locked.
+     virtual void sendSignal(Signal code);
+ 
+-    void stop() { mIoService.stop(); }
++    void stop() { mIoContext.stop(); }
+ 
+ protected:
+     bool parseOptions(int& argc, char**& argv, Options& opt);
+@@ -151,14 +151,14 @@ class SCLANG_DLLEXPORT SC_TerminalClient : public SC_LanguageClient {
+ 
+     // app-clock io service
+ protected:
+-    boost::asio::io_service mIoService;
++    boost::asio::io_context mIoContext;
+ 
+ private:
+-    boost::asio::io_service::work mWork;
++    boost::asio::io_context::work mWork;
+     boost::asio::basic_waitable_timer<std::chrono::system_clock> mTimer;
+ 
+     // input io service
+-    boost::asio::io_service mInputService;
++    boost::asio::io_context mInputContext;
+     SC_Thread mInputThread;
+     void inputThreadFn();
+ 
+diff --git a/server/scsynth/SC_ComPort.cpp b/server/scsynth/SC_ComPort.cpp
+index 5541f509bbd..a8ebbfe71c6 100644
+--- a/server/scsynth/SC_ComPort.cpp
++++ b/server/scsynth/SC_ComPort.cpp
+@@ -145,7 +145,7 @@ static bool UnrollOSCPacket(World* inWorld, int inSize, char* inData, OSC_Packet
+ /////////////////////////////////////////////////////////////////////////////////////////////////////////
+ 
+ SC_Thread gAsioThread;
+-boost::asio::io_service ioService;
++boost::asio::io_context ioContext;
+ 
+ const int kTextBufSize = 65536;
+ 
+@@ -252,7 +252,7 @@ class SC_UdpInPort {
+         mWorld(world),
+         mPortNum(inPortNum),
+         mbindTo(bindTo),
+-        udpSocket(ioService) {
++        udpSocket(ioContext) {
+         using namespace boost::asio;
+         BOOST_AUTO(protocol, ip::udp::v4());
+         udpSocket.open(protocol);
+@@ -282,9 +282,9 @@ class SC_TcpConnection : public boost::enable_shared_from_this<SC_TcpConnection>
+     typedef boost::shared_ptr<SC_TcpConnection> pointer;
+     boost::asio::ip::tcp::socket socket;
+ 
+-    SC_TcpConnection(struct World* world, boost::asio::io_service& ioService, class SC_TcpInPort* parent):
++    SC_TcpConnection(struct World* world, boost::asio::io_context& ioContext, class SC_TcpInPort* parent):
+         mWorld(world),
+-        socket(ioService),
++        socket(ioContext),
+         mParent(parent) {}
+ 
+     ~SC_TcpConnection();
+@@ -400,7 +400,7 @@ class SC_TcpInPort {
+ public:
+     SC_TcpInPort(struct World* world, const std::string& bindTo, int inPortNum, int inMaxConnections, int inBacklog):
+         mWorld(world),
+-        acceptor(ioService, boost::asio::ip::tcp::endpoint(boost::asio::ip::address::from_string(bindTo), inPortNum)),
++        acceptor(ioContext, boost::asio::ip::tcp::endpoint(boost::asio::ip::address::from_string(bindTo), inPortNum)),
+         mAvailableConnections(inMaxConnections) {
+         // FIXME: backlog???
+ 
+@@ -419,7 +419,7 @@ class SC_TcpInPort {
+     void startAccept() {
+         if (mAvailableConnections > 0) {
+             --mAvailableConnections;
+-            SC_TcpConnection::pointer newConnection(new SC_TcpConnection(mWorld, ioService, this));
++            SC_TcpConnection::pointer newConnection(new SC_TcpConnection(mWorld, ioContext, this));
+ 
+             acceptor.async_accept(
+                 newConnection->socket,
+@@ -453,8 +453,8 @@ static void asioFunction() {
+     nova::thread_set_priority_rt(priority);
+ #endif
+ 
+-    boost::asio::io_service::work work(ioService);
+-    ioService.run();
++    boost::asio::io_context::work work(ioContext);
++    ioContext.run();
+ }
+ 
+ void startAsioThread() {
+@@ -463,7 +463,7 @@ void startAsioThread() {
+ }
+ 
+ void stopAsioThread() {
+-    ioService.stop();
++    ioContext.stop();
+     gAsioThread.join();
+ }
+ 
+diff --git a/server/supernova/sc/sc_osc_handler.hpp b/server/supernova/sc/sc_osc_handler.hpp
+index ae75c9dc05a..ce342c419e1 100644
+--- a/server/supernova/sc/sc_osc_handler.hpp
++++ b/server/supernova/sc/sc_osc_handler.hpp
+@@ -95,7 +95,7 @@ class sc_notify_observers {
+ public:
+     typedef enum { no_error = 0, already_registered = -1, not_registered = -2 } error_code;
+ 
+-    sc_notify_observers(boost::asio::io_service& io_service): udp_socket(io_service) {}
++    sc_notify_observers(boost::asio::io_context& io_context): udp_socket(io_context) {}
+ 
+     int add_observer(endpoint_ptr const& ep);
+     int remove_observer(endpoint_ptr const& ep);
+@@ -186,8 +186,8 @@ class sc_osc_handler : private detail::network_thread, public sc_notify_observer
+ 
+ public:
+     sc_osc_handler(server_arguments const& args):
+-        sc_notify_observers(detail::network_thread::io_service_),
+-        tcp_acceptor_(detail::network_thread::io_service_),
++        sc_notify_observers(detail::network_thread::io_context_),
++        tcp_acceptor_(detail::network_thread::io_context_),
+         tcp_password_(args.server_password.size() ? args.server_password.c_str() : nullptr) {
+         if (!args.non_rt) {
+             if (args.tcp_port && !open_socket(IPPROTO_TCP, args.socket_address, args.tcp_port))
+diff --git a/server/supernova/utilities/osc_server.hpp b/server/supernova/utilities/osc_server.hpp
+index 1746fa172b3..d209fed8983 100644
+--- a/server/supernova/utilities/osc_server.hpp
++++ b/server/supernova/utilities/osc_server.hpp
+@@ -30,7 +30,6 @@
+ #    define BOOST_ASIO_HAS_STD_STRING_VIEW 1
+ #endif
+ 
+-#include <boost/asio/io_service.hpp>
+ #include <boost/asio/ip/udp.hpp>
+ 
+ #include "branch_hints.hpp"
+@@ -56,8 +55,8 @@ class network_thread {
+             name_thread("Network Receive");
+ 
+             sem.post();
+-            io_service::work work(io_service_);
+-            io_service_.run();
++            io_context::work work(io_context_);
++            io_context_.run();
+         });
+         sem.wait();
+     }
+@@ -65,20 +64,20 @@ class network_thread {
+     ~network_thread(void) {
+         if (!thread_.joinable())
+             return;
+-        io_service_.stop();
++        io_context_.stop();
+         thread_.join();
+     }
+ 
+-    io_service& get_io_service(void) { return io_service_; }
++    io_context& get_io_context(void) { return io_context_; }
+ 
+     void send_udp(const char* data, unsigned int size, udp::endpoint const& receiver) {
+-        udp::socket socket(io_service_);
++        udp::socket socket(io_context_);
+         socket.open(udp::v4());
+         socket.send_to(boost::asio::buffer(data, size), receiver);
+     }
+ 
+ protected:
+-    io_service io_service_;
++    io_context io_context_;
+ 
+ private:
+     semaphore sem;
+
+From 8015d8ebf26c1f95a0a646775f1e75397966b294 Mon Sep 17 00:00:00 2001
+From: Dennis Scheiba <git@dennis-scheiba.com>
+Date: Thu, 19 Dec 2024 16:41:44 +0100
+Subject: [PATCH 2/5] replace deprecated `boost::asio::io_context::work` with
+ `boost::asio::make_work_guard`
+
+---
+ lang/LangPrimSource/SC_ComPort.cpp        | 3 ++-
+ lang/LangSource/SC_TerminalClient.cpp     | 5 +++--
+ lang/LangSource/SC_TerminalClient.h       | 2 +-
+ server/scsynth/SC_ComPort.cpp             | 3 ++-
+ server/supernova/utilities/osc_server.hpp | 3 ++-
+ 5 files changed, 10 insertions(+), 6 deletions(-)
+
+diff --git a/lang/LangPrimSource/SC_ComPort.cpp b/lang/LangPrimSource/SC_ComPort.cpp
+index aa48e078311..57b0fc5e89f 100644
+--- a/lang/LangPrimSource/SC_ComPort.cpp
++++ b/lang/LangPrimSource/SC_ComPort.cpp
+@@ -50,7 +50,8 @@ boost::asio::io_context ioContext;
+ 
+ 
+ static void asioFunction() {
+-    boost::asio::io_context::work work(ioContext);
++    boost::asio::executor_work_guard<boost::asio::io_context::executor_type> work =
++        boost::asio::make_work_guard(ioContext);
+     ioContext.run();
+ }
+ 
+diff --git a/lang/LangSource/SC_TerminalClient.cpp b/lang/LangSource/SC_TerminalClient.cpp
+index 3a091514ab5..2c2a1a2eaac 100644
+--- a/lang/LangSource/SC_TerminalClient.cpp
++++ b/lang/LangSource/SC_TerminalClient.cpp
+@@ -75,7 +75,7 @@ SC_TerminalClient::SC_TerminalClient(const char* name):
+     SC_LanguageClient(name),
+     mReturnCode(0),
+     mUseReadline(false),
+-    mWork(mIoContext),
++    mWork(boost::asio::make_work_guard(mIoContext)),
+     mTimer(mIoContext),
+ #ifndef _WIN32
+     mStdIn(mInputContext, STDIN_FILENO)
+@@ -614,7 +614,8 @@ void SC_TerminalClient::inputThreadFn() {
+ 
+     startInputRead();
+ 
+-    boost::asio::io_context::work work(mInputContext);
++    boost::asio::executor_work_guard<boost::asio::io_context::executor_type> work =
++        boost::asio::make_work_guard(mInputContext);
+     mInputContext.run();
+ }
+ 
+diff --git a/lang/LangSource/SC_TerminalClient.h b/lang/LangSource/SC_TerminalClient.h
+index 0ea3cdc35b3..b4cf0e96482 100644
+--- a/lang/LangSource/SC_TerminalClient.h
++++ b/lang/LangSource/SC_TerminalClient.h
+@@ -154,7 +154,7 @@ class SCLANG_DLLEXPORT SC_TerminalClient : public SC_LanguageClient {
+     boost::asio::io_context mIoContext;
+ 
+ private:
+-    boost::asio::io_context::work mWork;
++    boost::asio::executor_work_guard<boost::asio::io_context::executor_type> mWork;
+     boost::asio::basic_waitable_timer<std::chrono::system_clock> mTimer;
+ 
+     // input io service
+diff --git a/server/scsynth/SC_ComPort.cpp b/server/scsynth/SC_ComPort.cpp
+index a8ebbfe71c6..1e6f6d0784e 100644
+--- a/server/scsynth/SC_ComPort.cpp
++++ b/server/scsynth/SC_ComPort.cpp
+@@ -453,7 +453,8 @@ static void asioFunction() {
+     nova::thread_set_priority_rt(priority);
+ #endif
+ 
+-    boost::asio::io_context::work work(ioContext);
++    boost::asio::executor_work_guard<boost::asio::io_context::executor_type> work =
++        boost::asio::make_work_guard(ioContext);
+     ioContext.run();
+ }
+ 
+diff --git a/server/supernova/utilities/osc_server.hpp b/server/supernova/utilities/osc_server.hpp
+index d209fed8983..cbecfc23d7c 100644
+--- a/server/supernova/utilities/osc_server.hpp
++++ b/server/supernova/utilities/osc_server.hpp
+@@ -55,7 +55,8 @@ class network_thread {
+             name_thread("Network Receive");
+ 
+             sem.post();
+-            io_context::work work(io_context_);
++            boost::asio::executor_work_guard<boost::asio::io_context::executor_type> work =
++                boost::asio::make_work_guard(io_context_);
+             io_context_.run();
+         });
+         sem.wait();
+
+From ec58a79c2f6bc474d6835d6228ccb7e397465fe5 Mon Sep 17 00:00:00 2001
+From: Dennis Scheiba <git@dennis-scheiba.com>
+Date: Fri, 20 Dec 2024 00:00:20 +0100
+Subject: [PATCH 3/5] replace deprecated `address::from_string` with
+ `make_address`
+
+---
+ server/scsynth/SC_ComPort.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/server/scsynth/SC_ComPort.cpp b/server/scsynth/SC_ComPort.cpp
+index 1e6f6d0784e..272eeebfbc2 100644
+--- a/server/scsynth/SC_ComPort.cpp
++++ b/server/scsynth/SC_ComPort.cpp
+@@ -257,7 +257,7 @@ class SC_UdpInPort {
+         BOOST_AUTO(protocol, ip::udp::v4());
+         udpSocket.open(protocol);
+ 
+-        udpSocket.bind(ip::udp::endpoint(boost::asio::ip::address::from_string(bindTo), inPortNum));
++        udpSocket.bind(ip::udp::endpoint(boost::asio::ip::make_address(bindTo), inPortNum));
+ 
+         boost::asio::socket_base::send_buffer_size option(65536);
+         udpSocket.set_option(option);
+@@ -400,7 +400,7 @@ class SC_TcpInPort {
+ public:
+     SC_TcpInPort(struct World* world, const std::string& bindTo, int inPortNum, int inMaxConnections, int inBacklog):
+         mWorld(world),
+-        acceptor(ioContext, boost::asio::ip::tcp::endpoint(boost::asio::ip::address::from_string(bindTo), inPortNum)),
++        acceptor(ioContext, boost::asio::ip::tcp::endpoint(boost::asio::ip::make_address(bindTo), inPortNum)),
+         mAvailableConnections(inMaxConnections) {
+         // FIXME: backlog???
+ 
+
+From 2cadfb7de577defb1664d7cc846d379721f13fa7 Mon Sep 17 00:00:00 2001
+From: Dennis Scheiba <git@dennis-scheiba.com>
+Date: Fri, 20 Dec 2024 00:16:23 +0100
+Subject: [PATCH 4/5] replace deprecated `io_context.post` with
+ `boost::asio::post`
+
+---
+ lang/LangSource/SC_TerminalClient.cpp | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/lang/LangSource/SC_TerminalClient.cpp b/lang/LangSource/SC_TerminalClient.cpp
+index 2c2a1a2eaac..551369304a9 100644
+--- a/lang/LangSource/SC_TerminalClient.cpp
++++ b/lang/LangSource/SC_TerminalClient.cpp
+@@ -360,19 +360,19 @@ void SC_TerminalClient::onLibraryStartup() {
+ void SC_TerminalClient::sendSignal(Signal sig) {
+     switch (sig) {
+     case sig_input:
+-        mIoContext.post(boost::bind(&SC_TerminalClient::interpretInput, this));
++        boost::asio::post(boost::bind(&SC_TerminalClient::interpretInput, this));
+         break;
+ 
+     case sig_recompile:
+-        mIoContext.post(boost::bind(&SC_TerminalClient::recompileLibrary, this));
++        boost::asio::post(boost::bind(&SC_TerminalClient::recompileLibrary, this));
+         break;
+ 
+     case sig_sched:
+-        mIoContext.post(boost::bind(&SC_TerminalClient::tick, this, boost::system::error_code()));
++        boost::asio::post(boost::bind(&SC_TerminalClient::tick, this, boost::system::error_code()));
+         break;
+ 
+     case sig_stop:
+-        mIoContext.post(boost::bind(&SC_TerminalClient::stopMain, this));
++        boost::asio::post(boost::bind(&SC_TerminalClient::stopMain, this));
+         break;
+     }
+ }
+
+From e085858742c1afcc9af9a3ecb6a98cc6f5a9269c Mon Sep 17 00:00:00 2001
+From: Dennis Scheiba <git@dennis-scheiba.com>
+Date: Fri, 20 Dec 2024 00:27:36 +0100
+Subject: [PATCH 5/5] replace deprecated `to_ulong` with `to_uint`
+
+---
+ lang/LangPrimSource/OSCData.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lang/LangPrimSource/OSCData.cpp b/lang/LangPrimSource/OSCData.cpp
+index bbb3caa8006..65229f1c3a7 100644
+--- a/lang/LangPrimSource/OSCData.cpp
++++ b/lang/LangPrimSource/OSCData.cpp
+@@ -745,7 +745,7 @@ static PyrObject* ConvertReplyAddress(ReplyAddress* inReply) {
+     VMGlobals* g = gMainVMGlobals;
+     PyrObject* obj = instantiateObject(g->gc, s_netaddr->u.classobj, 2, true, false);
+     PyrSlot* slots = obj->slots;
+-    SetInt(slots + 0, inReply->mAddress.to_v4().to_ulong());
++    SetInt(slots + 0, inReply->mAddress.to_v4().to_uint());
+     SetInt(slots + 1, inReply->mPort);
+     return obj;
+ }

diff --git a/media-sound/supercollider/files/supercollider-3.13.0-boost-1.87-2.patch b/media-sound/supercollider/files/supercollider-3.13.0-boost-1.87-2.patch
new file mode 100644
index 000000000000..87fdefce19db
--- /dev/null
+++ b/media-sound/supercollider/files/supercollider-3.13.0-boost-1.87-2.patch
@@ -0,0 +1,37 @@
+From 7d481eff478b1da1dc7048c90021f5fd7a83b35c Mon Sep 17 00:00:00 2001
+From: Dennis Scheiba <git@dennis-scheiba.com>
+Date: Wed, 15 Jan 2025 14:22:27 +0100
+Subject: [PATCH] fix asio post invocation for SC_TerminalClient
+
+---
+ lang/LangSource/SC_TerminalClient.cpp | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/lang/LangSource/SC_TerminalClient.cpp b/lang/LangSource/SC_TerminalClient.cpp
+index 551369304a9..330716467a3 100644
+--- a/lang/LangSource/SC_TerminalClient.cpp
++++ b/lang/LangSource/SC_TerminalClient.cpp
+@@ -360,19 +360,19 @@ void SC_TerminalClient::onLibraryStartup() {
+ void SC_TerminalClient::sendSignal(Signal sig) {
+     switch (sig) {
+     case sig_input:
+-        boost::asio::post(boost::bind(&SC_TerminalClient::interpretInput, this));
++        boost::asio::post(mIoContext, [this] { this->interpretInput(); });
+         break;
+ 
+     case sig_recompile:
+-        boost::asio::post(boost::bind(&SC_TerminalClient::recompileLibrary, this));
++        boost::asio::post(mIoContext, [this] { this->recompileLibrary(); });
+         break;
+ 
+     case sig_sched:
+-        boost::asio::post(boost::bind(&SC_TerminalClient::tick, this, boost::system::error_code()));
++        boost::asio::post(mIoContext, [this] { this->tick(boost::system::error_code()); });
+         break;
+ 
+     case sig_stop:
+-        boost::asio::post(boost::bind(&SC_TerminalClient::stopMain, this));
++        boost::asio::post(mIoContext, [this] { this->stopMain(); });
+         break;
+     }
+ }

diff --git a/media-sound/supercollider/supercollider-3.13.0-r2.ebuild b/media-sound/supercollider/supercollider-3.13.0-r2.ebuild
index e31a4a33287e..568869c31a37 100644
--- a/media-sound/supercollider/supercollider-3.13.0-r2.ebuild
+++ b/media-sound/supercollider/supercollider-3.13.0-r2.ebuild
@@ -58,7 +58,8 @@ PATCHES=(
 	"${FILESDIR}/${P}-boost-1.84.patch" # bug 921595
 	"${FILESDIR}/${P}-gcc-13.patch" # bug 905127
 	"${FILESDIR}/${P}-no-ccache.patch" # bug 922095
-	"${WORKDIR}/${PN}-3.13.0-boost-1.85.patch" # bug 932793
+	"${WORKDIR}/${P}-boost-1.85.patch" # bug 932793
+	"${FILESDIR}"/${P}-boost-1.87-{1,2}.patch # bug 946624
 )
 
 src_configure() {


^ permalink raw reply related	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2025-01-22 23:16 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-31 11:16 [gentoo-commits] repo/gentoo:master commit in: media-sound/supercollider/files/, media-sound/supercollider/ Andreas Sturmlechner
  -- strict thread matches above, loose matches on Subject: below --
2025-01-22 23:16 Andreas Sturmlechner
2024-01-31 11:16 Andreas Sturmlechner
2024-01-31 11:16 Andreas Sturmlechner
2021-01-23 17:55 Andreas Sturmlechner
2021-01-23 17:55 Andreas Sturmlechner
2019-07-16 15:57 Andreas Sturmlechner
2019-06-28  1:17 Andreas Sturmlechner
2018-01-06  2:14 Andreas Sturmlechner
2018-01-06  2:14 Andreas Sturmlechner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox