supercollider: 3.13.1 -> 3.14.1 (#527684)
This commit is contained in:
@@ -12,13 +12,9 @@
|
||||
fftw,
|
||||
curl,
|
||||
gcc,
|
||||
libsForQt5,
|
||||
qt6,
|
||||
libxt,
|
||||
qtbase,
|
||||
qttools,
|
||||
readline,
|
||||
qtwebsockets,
|
||||
qtwayland,
|
||||
useSCEL ? false,
|
||||
emacs,
|
||||
gitUpdater,
|
||||
@@ -30,27 +26,18 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "supercollider";
|
||||
version = "3.13.1";
|
||||
version = "3.14.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/supercollider/supercollider/releases/download/Version-${version}/SuperCollider-${version}-Source.tar.bz2";
|
||||
sha256 = "sha256-aXnAFdqs/bVZMovoDV1P4mv2PtdFD2QuXHjnsnEyMSs=";
|
||||
sha256 = "sha256-7mQMaHd65pdoIGbOXEqLflbFsiPnbHnBO1vlOH7lW7I=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# add support for SC_DATA_DIR and SC_PLUGIN_DIR env vars to override compile-time values
|
||||
./supercollider-3.12.0-env-dirs.patch
|
||||
|
||||
# Fixes the build with CMake 4
|
||||
# add support for Qt 6.11 in SuperCollider 3.14.1
|
||||
(fetchpatch {
|
||||
url = "https://github.com/supercollider/supercollider/commit/7d1f3fbe54e122889489a2f60bbc6cd6bb3bce28.patch";
|
||||
hash = "sha256-gyE0B2qTbj0ppbLlYTMa2ooY3FHzzIrdrpWYr81Hy1Y=";
|
||||
})
|
||||
|
||||
# Fixes the build with GCC 15
|
||||
(fetchpatch {
|
||||
url = "https://github.com/supercollider/supercollider/commit/edfac5e24959b12286938a9402326e521c2d2b63.patch";
|
||||
hash = "sha256-8DNCO5VEX6V0Q29A/v5tFC7u835bwNHvcNlZzmS0ADg=";
|
||||
url = "https://github.com/supercollider/supercollider/commit/e997e47890a9cee137756dede664811a58dbf85a.patch";
|
||||
hash = "sha256-Koh5CwkedDEXwvSFyZSrdKyVIKpX7nPrIcsr2FXaejo=";
|
||||
})
|
||||
];
|
||||
|
||||
@@ -63,8 +50,8 @@ stdenv.mkDerivation rec {
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
qttools
|
||||
libsForQt5.wrapQtAppsHook
|
||||
qt6.qttools
|
||||
qt6.wrapQtAppsHook
|
||||
]
|
||||
++ lib.optionals useSCEL [ emacs ];
|
||||
|
||||
@@ -75,9 +62,9 @@ stdenv.mkDerivation rec {
|
||||
fftw
|
||||
curl
|
||||
libxt
|
||||
qtbase
|
||||
qtwebsockets
|
||||
qtwayland
|
||||
qt6.qtbase
|
||||
qt6.qtwebsockets
|
||||
qt6.qtwayland
|
||||
readline
|
||||
]
|
||||
++ lib.optional (!stdenv.hostPlatform.isDarwin) alsa-lib;
|
||||
|
||||
@@ -11,26 +11,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "sc3-plugins";
|
||||
version = "3.13.0";
|
||||
version = "3.14.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/supercollider/sc3-plugins/releases/download/Version-${version}/sc3-plugins-${version}-Source.tar.bz2";
|
||||
sha256 = "sha256-+N7rhh1ALipy21HUC0jEQ2kCYbWlOveJg9TPe6dnF6I=";
|
||||
sha256 = "sha256-CW9JVVdgeITg2/0TLprw1V8WW4VhBmCN2Ns8XmiZKh0=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch2 {
|
||||
url = "https://github.com/supercollider/sc3-plugins/commit/3dc56bf7fcc1f2261afc13f96da762b78bcbfa51.patch";
|
||||
hash = "sha256-lvXvGunfmjt6i+XPog14IKdnH1Qk8vefxplSDkXXXHU=";
|
||||
})
|
||||
|
||||
# Fix build with GCC 15
|
||||
(fetchpatch2 {
|
||||
url = "https://github.com/supercollider/sc3-plugins/commit/deaa55a7204bedf65a2000a463ae87a481bf3eb8.patch";
|
||||
hash = "sha256-d8+4ZmedAwVt/AlU/YKqQF+80shEa8DiPnvMwJtW/RM=";
|
||||
})
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
@@ -1,65 +0,0 @@
|
||||
diff --git a/common/SC_Filesystem_unix.cpp b/common/SC_Filesystem_unix.cpp
|
||||
index 52dc1fd2d..aae09ed9c 100644
|
||||
--- a/common/SC_Filesystem_unix.cpp
|
||||
+++ b/common/SC_Filesystem_unix.cpp
|
||||
@@ -94,6 +94,10 @@ bool SC_Filesystem::isNonHostPlatformDirectoryName(const std::string& s) {
|
||||
}
|
||||
|
||||
Path SC_Filesystem::defaultSystemAppSupportDirectory() {
|
||||
+ const char* sc_data_dir = getenv("SC_DATA_DIR");
|
||||
+ if (sc_data_dir)
|
||||
+ return Path(sc_data_dir);
|
||||
+
|
||||
# ifdef SC_DATA_DIR
|
||||
return Path(SC_DATA_DIR);
|
||||
# else
|
||||
@@ -125,6 +129,10 @@ Path SC_Filesystem::defaultUserConfigDirectory() {
|
||||
}
|
||||
|
||||
Path SC_Filesystem::defaultResourceDirectory() {
|
||||
+ const char* sc_data_dir = getenv("SC_DATA_DIR");
|
||||
+ if (sc_data_dir)
|
||||
+ return Path(sc_data_dir);
|
||||
+
|
||||
# ifdef SC_DATA_DIR
|
||||
return Path(SC_DATA_DIR);
|
||||
# else
|
||||
diff --git a/server/scsynth/SC_Lib_Cintf.cpp b/server/scsynth/SC_Lib_Cintf.cpp
|
||||
index f6219307e..28e13eb98 100644
|
||||
--- a/server/scsynth/SC_Lib_Cintf.cpp
|
||||
+++ b/server/scsynth/SC_Lib_Cintf.cpp
|
||||
@@ -178,9 +178,13 @@ void initialize_library(const char* uGensPluginPath) {
|
||||
using DirName = SC_Filesystem::DirName;
|
||||
|
||||
if (loadUGensExtDirs) {
|
||||
+ const char* sc_plugin_dir = getenv("SC_PLUGIN_DIR");
|
||||
+ if (sc_plugin_dir) {
|
||||
+ PlugIn_LoadDir(sc_plugin_dir, true);
|
||||
+ }
|
||||
#ifdef SC_PLUGIN_DIR
|
||||
// load globally installed plugins
|
||||
- if (bfs::is_directory(SC_PLUGIN_DIR)) {
|
||||
+ else if (bfs::is_directory(SC_PLUGIN_DIR)) {
|
||||
PlugIn_LoadDir(SC_PLUGIN_DIR, true);
|
||||
}
|
||||
#endif // SC_PLUGIN_DIR
|
||||
diff --git a/server/supernova/server/main.cpp b/server/supernova/server/main.cpp
|
||||
index b2b5adf4e..6cb8c411c 100644
|
||||
--- a/server/supernova/server/main.cpp
|
||||
+++ b/server/supernova/server/main.cpp
|
||||
@@ -224,8 +224,14 @@ void set_plugin_paths(server_arguments const& args, nova::sc_ugen_factory* facto
|
||||
}
|
||||
}
|
||||
} else {
|
||||
+ const char* sc_plugin_dir = getenv("SC_PLUGIN_DIR");
|
||||
+ if (sc_plugin_dir) {
|
||||
+ factory->load_plugin_folder(sc_plugin_dir);
|
||||
+ }
|
||||
#ifdef SC_PLUGIN_DIR
|
||||
- factory->load_plugin_folder(SC_PLUGIN_DIR);
|
||||
+ else {
|
||||
+ factory->load_plugin_folder(SC_PLUGIN_DIR);
|
||||
+ }
|
||||
#endif
|
||||
factory->load_plugin_folder(SC_Filesystem::instance().getDirectory(DirName::Resource) / SC_PLUGIN_DIR_NAME);
|
||||
factory->load_plugin_folder(SC_Filesystem::instance().getDirectory(DirName::SystemExtension));
|
||||
Reference in New Issue
Block a user