From 88966bc47e8ff39788447f9b36d895d0a7f1e0a8 Mon Sep 17 00:00:00 2001 From: Anderson Torres Date: Sat, 28 Oct 2023 15:08:44 -0300 Subject: [PATCH] scons_3_1_2: detach from sconsPackages --- .../tools/build-managers/scons/3.1.2.nix | 38 +++++++++++++++++++ .../tools/build-managers/scons/default.nix | 4 -- pkgs/top-level/all-packages.nix | 2 + 3 files changed, 40 insertions(+), 4 deletions(-) create mode 100644 pkgs/development/tools/build-managers/scons/3.1.2.nix diff --git a/pkgs/development/tools/build-managers/scons/3.1.2.nix b/pkgs/development/tools/build-managers/scons/3.1.2.nix new file mode 100644 index 000000000000..097a8ffd519e --- /dev/null +++ b/pkgs/development/tools/build-managers/scons/3.1.2.nix @@ -0,0 +1,38 @@ +{ lib, fetchurl, python3 }: + +let + pname = "scons"; + version = "3.1.2"; + src = fetchurl { + url = "mirror://sourceforge/scons/scons-${version}.tar.gz"; + hash = "sha256-eAHz9i9lRSjict94C+EMDpM36JdlC2Ldzunzn94T+Ps="; + }; +in +python3.pkgs.buildPythonApplication { + inherit pname version src; + + setupHook = ./setup-hook.sh; + + doCheck = true; + + passthru = { + # expose the used python version so tools using this (and extensing scos + # with other python modules) can use the exact same python version. + inherit python3; + python = python3; + }; + + meta = { + description = "An improved, cross-platform substitute for Make"; + longDescription = '' + SCons is an Open Source software construction tool. Think of SCons as an + improved, cross-platform substitute for the classic Make utility with + integrated functionality similar to autoconf/automake and compiler caches + such as ccache. In short, SCons is an easier, more reliable and faster way + to build software. + ''; + homepage = "https://scons.org/"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ AndersonTorres ]; + }; +} diff --git a/pkgs/development/tools/build-managers/scons/default.nix b/pkgs/development/tools/build-managers/scons/default.nix index 8b0a10dbcf55..7bfc392e3e22 100644 --- a/pkgs/development/tools/build-managers/scons/default.nix +++ b/pkgs/development/tools/build-managers/scons/default.nix @@ -5,10 +5,6 @@ let python = python3; }; in { - scons_3_1_2 = (mkScons { - version = "3.1.2"; - sha256 = "1yzq2gg9zwz9rvfn42v5jzl3g4qf1khhny6zfbi2hib55zvg60bq"; - }); scons_4_1_0 = mkScons { version = "4.1.0"; sha256 = "11axk03142ziax6i3wwy9qpqp7r3i7h5jg9y2xzph9i15rv8vlkj"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d90c14277442..943c3ec5f898 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -20064,6 +20064,8 @@ with pkgs; sca2d = callPackage ../development/tools/sca2d { }; + scons_3_1_2 = callPackage ../development/tools/build-managers/scons/3.1.2.nix { }; + sconsPackages = dontRecurseIntoAttrs (callPackage ../development/tools/build-managers/scons { }); scons = sconsPackages.scons_latest;