From 9d79ccef1b16cfc4afa0599026a3d4261f5742f4 Mon Sep 17 00:00:00 2001 From: QuantMint Date: Mon, 24 Jan 2022 10:26:55 +0100 Subject: [PATCH] roc-toolkit: bump scons --- .../0001-Remove-deprecated-scons-call.patch | 24 ++++++++++++++ ...002-Fix-compatibility-with-new-SCons.patch | 31 +++++++++++++++++++ .../libraries/audio/roc-toolkit/default.nix | 11 +++++-- 3 files changed, 64 insertions(+), 2 deletions(-) create mode 100644 pkgs/development/libraries/audio/roc-toolkit/0001-Remove-deprecated-scons-call.patch create mode 100644 pkgs/development/libraries/audio/roc-toolkit/0002-Fix-compatibility-with-new-SCons.patch diff --git a/pkgs/development/libraries/audio/roc-toolkit/0001-Remove-deprecated-scons-call.patch b/pkgs/development/libraries/audio/roc-toolkit/0001-Remove-deprecated-scons-call.patch new file mode 100644 index 000000000000..e13dda549705 --- /dev/null +++ b/pkgs/development/libraries/audio/roc-toolkit/0001-Remove-deprecated-scons-call.patch @@ -0,0 +1,24 @@ +From abdfbb94df98fe88be4dd92ca587500126558411 Mon Sep 17 00:00:00 2001 +From: Victor Gaydov +Date: Sun, 26 Jul 2020 11:54:52 +0300 +Subject: [PATCH] Remove deprecated scons call + +--- + SConstruct | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/SConstruct b/SConstruct +index 407025d8..04afa91f 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -49,7 +49,6 @@ env = Environment(ENV=os.environ, tools=[ + # performance tuning + env.Decider('MD5-timestamp') + env.SetOption('implicit_cache', 1) +-env.SourceCode('.', None) + + # provide absolute path to force single sconsign file + # per-directory sconsign files seems to be buggy with generated sources +-- +2.34.1 + diff --git a/pkgs/development/libraries/audio/roc-toolkit/0002-Fix-compatibility-with-new-SCons.patch b/pkgs/development/libraries/audio/roc-toolkit/0002-Fix-compatibility-with-new-SCons.patch new file mode 100644 index 000000000000..097f1b3ff479 --- /dev/null +++ b/pkgs/development/libraries/audio/roc-toolkit/0002-Fix-compatibility-with-new-SCons.patch @@ -0,0 +1,31 @@ +From 15b37bb12a362c7889ac431eca4a47d6b2bdb97c Mon Sep 17 00:00:00 2001 +From: Victor Gaydov +Date: Sat, 5 Dec 2020 18:38:36 +0300 +Subject: [PATCH] Fix compatibility with new SCons + +--- + site_scons/site_tools/roc/config.py | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/site_scons/site_tools/roc/config.py b/site_scons/site_tools/roc/config.py +index b42b3adb..03b76be7 100644 +--- a/site_scons/site_tools/roc/config.py ++++ b/site_scons/site_tools/roc/config.py +@@ -13,7 +13,13 @@ def _run_prog(context, src, suffix): + # RunProg may incorrectly use cached results from a previous run saved for + # different file contents but the same invocation number. To prevent this, we + # monkey patch its global counter with a hashsum of the file contents. +- SCons.SConf._ac_build_counter = int(hashlib.md5(src.encode()).hexdigest(), 16) ++ # The workaround is needed only for older versions of SCons, where ++ # _ac_build_counter was an integer. ++ try: ++ if type(SCons.SConf._ac_build_counter) is int: ++ SCons.SConf._ac_build_counter = int(hashlib.md5(src.encode()).hexdigest(), 16) ++ except: ++ pass + return context.RunProg(src, suffix) + + def CheckLibWithHeaderExt(context, libs, headers, language, expr='1', run=True): +-- +2.34.1 + diff --git a/pkgs/development/libraries/audio/roc-toolkit/default.nix b/pkgs/development/libraries/audio/roc-toolkit/default.nix index 728e52b26701..98c088ed5495 100644 --- a/pkgs/development/libraries/audio/roc-toolkit/default.nix +++ b/pkgs/development/libraries/audio/roc-toolkit/default.nix @@ -1,7 +1,7 @@ { stdenv, lib, fetchFromGitHub, - sconsPackages, + scons, ragel, gengetopt, pkg-config, @@ -26,7 +26,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ - sconsPackages.scons_3_0_1 + scons ragel gengetopt pkg-config @@ -44,6 +44,7 @@ stdenv.mkDerivation rec { "--host=${stdenv.hostPlatform.config}" "--prefix=${placeholder "out"}" "--disable-sox" + "--disable-doc" "--disable-tests" ] ++ lib.optional (!libunwindSupport) "--disable-libunwind" ++ lib.optional (!pulseaudioSupport) "--disable-pulseaudio" ++ @@ -55,6 +56,12 @@ stdenv.mkDerivation rec { prePatch = lib.optionalString stdenv.isAarch64 "sed -i 's/c++98/c++11/g' SConstruct"; + # TODO: Remove these patches in the next version. + patches = [ + ./0001-Remove-deprecated-scons-call.patch + ./0002-Fix-compatibility-with-new-SCons.patch + ]; + meta = with lib; { description = "Roc is a toolkit for real-time audio streaming over the network"; homepage = "https://github.com/roc-streaming/roc-toolkit";