summaryrefslogtreecommitdiff
path: root/media-sound
diff options
context:
space:
mode:
Diffstat (limited to 'media-sound')
-rw-r--r--media-sound/Manifest.gzbin57262 -> 57267 bytes
-rw-r--r--media-sound/supercollider/Manifest6
-rw-r--r--media-sound/supercollider/files/supercollider-3.13.0-boost-1.87-1.patch584
-rw-r--r--media-sound/supercollider/files/supercollider-3.13.0-boost-1.87-2.patch37
-rw-r--r--media-sound/supercollider/metadata.xml1
-rw-r--r--media-sound/supercollider/supercollider-3.13.0-r2.ebuild (renamed from media-sound/supercollider/supercollider-3.13.0-r1.ebuild)21
6 files changed, 631 insertions, 18 deletions
diff --git a/media-sound/Manifest.gz b/media-sound/Manifest.gz
index 6eb1265fdde2..89f47a584110 100644
--- a/media-sound/Manifest.gz
+++ b/media-sound/Manifest.gz
Binary files differ
diff --git a/media-sound/supercollider/Manifest b/media-sound/supercollider/Manifest
index 34875bd66fe7..dfc76d1f5038 100644
--- a/media-sound/supercollider/Manifest
+++ b/media-sound/supercollider/Manifest
@@ -1,7 +1,9 @@
AUX supercollider-3.13.0-boost-1.84.patch 3799 BLAKE2B 3c333d4b0b63d2c67167be6abe954a843cdd4c73b3cc28a9d7e011162dbb3ddf475ad75f03a780abb7cbf8a54ee0b308e02a7a752532f5f1c110a1e3d8152753 SHA512 1b530d60570729a0b4dd13fbb9059b45288d4ff71391db6290b5e686985ad749267252c15eb63c81bf7bc01ca1141c163e3c7e30e6de1fc43c7b26ed66ab20cf
+AUX supercollider-3.13.0-boost-1.87-1.patch 22501 BLAKE2B c7dd692ab7b463bffa785b83e55d73a57704278709366514406523e8831355a82a0e5cf2fff11f121f68fa7b233d75ed1a0edf2f4af629123d5bff8527111370 SHA512 f470e449d9f918bc02936b588af01031fa4d986b82ec4da3468dd7844e9cb90cf62e513187fa8a9f8bf8b1447d3a4d57d804b47ab472be2efcadc13464773fb6
+AUX supercollider-3.13.0-boost-1.87-2.patch 1511 BLAKE2B fe1a0363b6f064dece2bb144fce82f5aa01f53e9ce49afa99494f9705a0de0265b321a56d7a909371f2ede38c684e24ac2c3b21f95e25d8405c51be2e7f5fb68 SHA512 bc472f99352670399e08cf29c2c17bd1feb791f6830d7e855d3ef63c3daa4a7d134d9001145b97fe3d0a33767d68fe32f7cd0c5b418a4b4f12e4f40c26844c70
AUX supercollider-3.13.0-gcc-13.patch 416 BLAKE2B 8dc097605bebd61d739389f0390970ec882188625d3a5ecbc98eab59baa314e0da9f1ae5b77b2025ce4fee4761f10e5444250f757e8c17cadbf019bd40bc1c86 SHA512 91189e8fe03fca1fb3f75cee3fa5813bc24a99ca9dc1426bfd48276193517b81f47fbcb38a7953f0e2b49d0bee8f98d33bab15c6de0289cd8c83d70b4ae50702
AUX supercollider-3.13.0-no-ccache.patch 6959 BLAKE2B 2b6bba13ff75c5e1557027586a4b01ac5e55e42c3c90756106dbba0d501fcbfc4cc3db9b000b05ecdfc2bbf645099b16e8129a5099d923a3b6a8dc202fd12423 SHA512 6d6e2d81ce43f47985e9539cfaffef571ff8b2f467ce1edceea3e42c319f13c6326beaa8a02aa4c527be2bcdb624f45674e4fad3ed330d2a2f7b64c4a94c2b83
DIST SuperCollider-3.13.0-Source.tar.bz2 18685091 BLAKE2B a5e57a17f93e40848b2044ee0791179f857d144eabb7f4d74580b2eebd49a31d6ec671a0526236c5b906aadeb455e5a7ad18cacb79ed214076d6bceca39ea2ae SHA512 a60a128f7646f077f91adae666fa4014529aa9df78cf0dfe5d68c9bd6447f008af7da2970b8736f3f29d0adbaf67bce680a8201fcbe7e1aba29c3499a57f89cd
DIST supercollider-3.13.0-boost-1.85.patch.xz 11500 BLAKE2B 51a5210927df9199790ea64bbcdfe68aa233fb5777b57576295e2be7f7abd48baa9091e4139eef9ae23cbbc22613961ebd2ab60f26f0e02a8a62d68baa712af6 SHA512 dacd6fa4686a11ad06f2257155ee434173e343279170a3173a8173563309337f9a58075125acfaa53620e2a0a8fb445b5698f295ce53ac9f188e1502cebcb14f
-EBUILD supercollider-3.13.0-r1.ebuild 3536 BLAKE2B c122237170ebc63a0947c00506bf6a486c1fd279e714e33ce725645f79168f6fba01c3527790d06b36f4e835da6b5cb5a767ba8f591f17e5dbe814ebe62efff8 SHA512 09c9e7c0f7604c2ec0f63e59ce79d4303e5df83df69a365fca2fa1d4239da1af0b250db24c090785d6097a42111c8b4dfee94ccbace67d68d85a1961be9129ad
-MISC metadata.xml 1220 BLAKE2B d81b2a8d8b2961d02cc369074221f97c00da866464bd3d142dfe56dc6f926225438a584cdb87227bbee9c11037240ae1b4e48b4aecc7de91c29f1367b0feaab1 SHA512 1c5627589db83212a15f74e9ce32893c317a21bad2ba54b1ab202e32dd5097fb8207e412b03572aa3c24356ec2f04b2c2525fc019bdec01d65a87a02e9d8a4d4
+EBUILD supercollider-3.13.0-r2.ebuild 3450 BLAKE2B 2398b9241f2ec0b0eb254059947aa8b442d8269fb95f40346caa77428d51927e1b803e2c4dd18ac09b32576e654a274ca223976924e73e735763eb6d0d87c6c9 SHA512 1515be25b28c2c4c476a93c16463b8b46608d60068a2125a32788d369556a0d8998885d7ce812af57790512355ea46f7e92c997c2c32c2a4e9fc77bd6282571b
+MISC metadata.xml 1138 BLAKE2B 81e89527a80205502a32c9b45d5754f5cc7c42f5b0250d6aa8e46b1029fe787c74b2392ed261db99c2e6316c136af522ea1fcbf44378b057d61df62b485550e0 SHA512 e506c7ec3ad8bc965b81df134301bb01becdcee70c49774d8a355943d01f7a39a2242f5df50de719540511650b1312f12f547bc17ef0a676104f2d72402eebc1
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/metadata.xml b/media-sound/supercollider/metadata.xml
index 78543acc071f..e74f14682cf5 100644
--- a/media-sound/supercollider/metadata.xml
+++ b/media-sound/supercollider/metadata.xml
@@ -25,6 +25,5 @@
<flag name="gedit">Enable the SCED user interface</flag>
<flag name="gpl3">Build GPL-3 licensed code (recommended)</flag>
<flag name="server">Build with internal server</flag>
- <flag name="webengine">Enable the internal help system using QtWebengine</flag>
</use>
</pkgmetadata>
diff --git a/media-sound/supercollider/supercollider-3.13.0-r1.ebuild b/media-sound/supercollider/supercollider-3.13.0-r2.ebuild
index 9849a2115bba..568869c31a37 100644
--- a/media-sound/supercollider/supercollider-3.13.0-r1.ebuild
+++ b/media-sound/supercollider/supercollider-3.13.0-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -14,12 +14,9 @@ S="${WORKDIR}/SuperCollider-${PV}-Source"
LICENSE="GPL-2 gpl3? ( GPL-3 )"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE="ableton-link cpu_flags_x86_sse cpu_flags_x86_sse2 debug emacs +fftw gedit +gpl3 jack qt5 server +sndfile static-libs vim webengine X +zeroconf"
+IUSE="ableton-link 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 )
- webengine? ( qt5 )
-"
+REQUIRED_USE="qt5? ( X )"
BDEPEND="
virtual/pkgconfig
@@ -43,11 +40,6 @@ RDEPEND="
dev-qt/qtwidgets:5
)
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
@@ -66,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() {
@@ -101,9 +94,7 @@ src_configure() {
-DNO_AVAHI=$(usex !zeroconf)
)
- use qt5 && mycmakeargs+=(
- -DSC_USE_QTWEBENGINE=$(usex webengine)
- )
+ use qt5 && mycmakeargs+=( -DSC_USE_QTWEBENGINE=OFF ) # bug 926680
use debug && mycmakeargs+=(
-DSC_MEMORY_DEBUGGING=ON