diff options
Diffstat (limited to 'nixpkgs/pkgs/development/tools/build-managers')
16 files changed, 164 insertions, 71 deletions
diff --git a/nixpkgs/pkgs/development/tools/build-managers/apache-ant/1.9.nix b/nixpkgs/pkgs/development/tools/build-managers/apache-ant/1.9.nix index 93644caa5a4e..80f8f1f886c2 100644 --- a/nixpkgs/pkgs/development/tools/build-managers/apache-ant/1.9.nix +++ b/nixpkgs/pkgs/development/tools/build-managers/apache-ant/1.9.nix @@ -1,16 +1,14 @@ { fetchurl, lib, stdenv, coreutils, makeWrapper }: -let version = "1.9.15"; in - -stdenv.mkDerivation { +stdenv.mkDerivation rec { pname = "ant"; - inherit version; + version = "1.9.16"; nativeBuildInputs = [ makeWrapper ]; src = fetchurl { url = "mirror://apache/ant/binaries/apache-ant-${version}-bin.tar.bz2"; - sha256 = "0yfx5qsvrg12lar4908ndbnlpppy7g7qk8ay41y4sz9g873v07mr"; + sha256 = "0rif9kj6njajy951w3aapk27y1mbaxb08whs126v533h96rb1kjp"; }; contrib = fetchurl { diff --git a/nixpkgs/pkgs/development/tools/build-managers/apache-ant/default.nix b/nixpkgs/pkgs/development/tools/build-managers/apache-ant/default.nix index d2ef8361ec0e..7c05fcf60a37 100644 --- a/nixpkgs/pkgs/development/tools/build-managers/apache-ant/default.nix +++ b/nixpkgs/pkgs/development/tools/build-managers/apache-ant/default.nix @@ -1,16 +1,14 @@ { fetchurl, lib, stdenv, coreutils, makeWrapper }: -let version = "1.10.9"; in - -stdenv.mkDerivation { +stdenv.mkDerivation rec { pname = "ant"; - inherit version; + version = "1.10.11"; nativeBuildInputs = [ makeWrapper ]; src = fetchurl { url = "mirror://apache/ant/binaries/apache-ant-${version}-bin.tar.bz2"; - sha256 = "1ab8ybczvk12501dnj450a3d4v43ca0pjhk33s175hax46s58z47"; + sha256 = "19m8xb7h6xm4jykzb79kakbx1pa4awaglw6z31pbfg8m5pmwkipz"; }; contrib = fetchurl { diff --git a/nixpkgs/pkgs/development/tools/build-managers/cmake/default.nix b/nixpkgs/pkgs/development/tools/build-managers/cmake/default.nix index 702652db878b..2de586f97cbf 100644 --- a/nixpkgs/pkgs/development/tools/build-managers/cmake/default.nix +++ b/nixpkgs/pkgs/development/tools/build-managers/cmake/default.nix @@ -7,11 +7,11 @@ , useSharedLibraries ? (!isBootstrap && !stdenv.isCygwin) , useOpenSSL ? !isBootstrap, openssl , useNcurses ? false, ncurses -, withQt5 ? false, qtbase +, withQt5 ? false, qtbase, wrapQtAppsHook , buildDocs ? (!isBootstrap && (useNcurses || withQt5)), sphinx, texinfo }: -stdenv.mkDerivation (rec { +stdenv.mkDerivation rec { pname = "cmake" + lib.optionalString isBootstrap "-boot" + lib.optionalString useNcurses "-cursesUI" @@ -19,7 +19,7 @@ stdenv.mkDerivation (rec { version = "3.19.7"; src = fetchurl { - url = "${meta.homepage}files/v${lib.versions.majorMinor version}/cmake-${version}.tar.gz"; + url = "https://cmake.org/files/v${lib.versions.majorMinor version}/cmake-${version}.tar.gz"; # compare with https://cmake.org/files/v${lib.versions.majorMinor version}/cmake-${version}-SHA-256.txt sha256 = "sha256-WKFfDVagr8zDzFNxI0/Oc/zGyPnb13XYmOUQuDF1WI4="; }; @@ -45,7 +45,8 @@ stdenv.mkDerivation (rec { depsBuildBuild = [ buildPackages.stdenv.cc ]; nativeBuildInputs = [ setupHook pkg-config ] - ++ lib.optionals buildDocs [ texinfo ]; + ++ lib.optionals buildDocs [ texinfo ] + ++ lib.optionals withQt5 [ wrapQtAppsHook ]; buildInputs = [] ++ lib.optionals useSharedLibraries [ bzip2 curlMinimal expat libarchive xz zlib libuv rhash ] @@ -130,5 +131,4 @@ stdenv.mkDerivation (rec { maintainers = with maintainers; [ ttuegel lnl7 ]; license = licenses.bsd3; }; -} // (if withQt5 then { dontWrapQtApps = true; } else {}) -) +} diff --git a/nixpkgs/pkgs/development/tools/build-managers/gnumake/0001-No-impure-bin-sh.patch b/nixpkgs/pkgs/development/tools/build-managers/gnumake/0001-No-impure-bin-sh.patch new file mode 100644 index 000000000000..58ee2d6fe09b --- /dev/null +++ b/nixpkgs/pkgs/development/tools/build-managers/gnumake/0001-No-impure-bin-sh.patch @@ -0,0 +1,35 @@ +From e00a5257a6ca5fedbf68b09eee7df3502971a057 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io> +Date: Sat, 24 Apr 2021 10:11:40 +0200 +Subject: [PATCH 1/2] No impure bin sh + +default_shell is used to populuate default shell used to execute jobs. +Unless SHELL is set to a different value this would be /bin/sh. +Our stdenv provides sh in form of bash anyway. Having this value not +hard-coded has some advantages: + +- It would ensure that on all systems it uses sh from its PATH rather + than /bin/sh, which helps as different systems might have different + shells there (bash vs. dash) +- In the past I had issues with LD_PRELOAD with BEAR, where /bin/sh + used a different glibc than BEAR which came from my development shell. +--- + src/job.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/job.c b/src/job.c +index ae1f18b..6b4ddb3 100644 +--- a/src/job.c ++++ b/src/job.c +@@ -77,7 +77,7 @@ char * vms_strsignal (int status); + + #else + +-const char *default_shell = "/bin/sh"; ++const char *default_shell = "sh"; + int batch_mode_shell = 0; + + #endif +-- +2.31.1 + diff --git a/nixpkgs/pkgs/development/tools/build-managers/gnumake/0002-remove-impure-dirs.patch b/nixpkgs/pkgs/development/tools/build-managers/gnumake/0002-remove-impure-dirs.patch new file mode 100644 index 000000000000..e62aee7d9993 --- /dev/null +++ b/nixpkgs/pkgs/development/tools/build-managers/gnumake/0002-remove-impure-dirs.patch @@ -0,0 +1,40 @@ +From 795d63d3c8b5c0dbb7e544954f75507b371b7228 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io> +Date: Sat, 24 Apr 2021 10:20:16 +0200 +Subject: [PATCH 2/2] remove impure dirs + +--- + src/read.c | 3 --- + src/remake.c | 2 -- + 2 files changed, 5 deletions(-) + +diff --git a/src/read.c b/src/read.c +index fa197fb..defacfb 100644 +--- a/src/read.c ++++ b/src/read.c +@@ -109,9 +109,6 @@ static const char *default_include_directories[] = + #endif + INCLUDEDIR, + #ifndef _AMIGA +- "/usr/gnu/include", +- "/usr/local/include", +- "/usr/include", + #endif + 0 + }; +diff --git a/src/remake.c b/src/remake.c +index fb237c5..94bff7d 100644 +--- a/src/remake.c ++++ b/src/remake.c +@@ -1601,8 +1601,6 @@ library_search (const char *lib, FILE_TIMESTAMP *mtime_ptr) + static const char *dirs[] = + { + #ifndef _AMIGA +- "/lib", +- "/usr/lib", + #endif + #if defined(WINDOWS32) && !defined(LIBDIR) + /* +-- +2.31.1 + diff --git a/nixpkgs/pkgs/development/tools/build-managers/gnumake/4.2/default.nix b/nixpkgs/pkgs/development/tools/build-managers/gnumake/4.2/default.nix index 387650e85ab7..7d56e55ebdb3 100644 --- a/nixpkgs/pkgs/development/tools/build-managers/gnumake/4.2/default.nix +++ b/nixpkgs/pkgs/development/tools/build-managers/gnumake/4.2/default.nix @@ -2,12 +2,9 @@ assert guileSupport -> ( pkg-config != null && guile != null ); -let - version = "4.2.1"; -in -stdenv.mkDerivation { +stdenv.mkDerivation rec { pname = "gnumake"; - inherit version; + version = "4.2.1"; src = fetchurl { url = "mirror://gnu/make/make-${version}.tar.bz2"; @@ -23,6 +20,7 @@ stdenv.mkDerivation { ./pselect.patch # Fix support for glibc 2.27's glob, inspired by http://www.linuxfromscratch.org/lfs/view/8.2/chapter05/make.html ./glibc-2.27-glob.patch + ./glibc-2.33-glob.patch ]; nativeBuildInputs = lib.optionals guileSupport [ pkg-config ]; diff --git a/nixpkgs/pkgs/development/tools/build-managers/gnumake/4.2/glibc-2.33-glob.patch b/nixpkgs/pkgs/development/tools/build-managers/gnumake/4.2/glibc-2.33-glob.patch new file mode 100644 index 000000000000..d3e424d1c499 --- /dev/null +++ b/nixpkgs/pkgs/development/tools/build-managers/gnumake/4.2/glibc-2.33-glob.patch @@ -0,0 +1,17 @@ +diff --git glob/glob.c glob/glob.c +index 924f2b3..d4ef0c5 100644 +--- glob/glob.c ++++ glob/glob.c +@@ -212,8 +212,8 @@ my_realloc (p, n) + # define __alloca alloca + + +-#ifndef __GNU_LIBRARY__ + # define __stat stat ++#ifndef __GNU_LIBRARY__ + # ifdef STAT_MACROS_BROKEN + # undef S_ISDIR + # endif +-- +2.31.1 + diff --git a/nixpkgs/pkgs/development/tools/build-managers/gnumake/default.nix b/nixpkgs/pkgs/development/tools/build-managers/gnumake/default.nix index fb9dab54049a..3b9f0add8796 100644 --- a/nixpkgs/pkgs/development/tools/build-managers/gnumake/default.nix +++ b/nixpkgs/pkgs/development/tools/build-managers/gnumake/default.nix @@ -1,24 +1,22 @@ -{ lib, stdenv, fetchurl, guileSupport ? false, pkg-config ? null , guile ? null }: +{ lib, stdenv, fetchurl, guileSupport ? false, pkg-config, guile }: -assert guileSupport -> ( pkg-config != null && guile != null ); - -let - version = "4.3"; -in -stdenv.mkDerivation { +stdenv.mkDerivation rec { pname = "gnumake"; - inherit version; + version = "4.3"; src = fetchurl { url = "mirror://gnu/make/make-${version}.tar.gz"; sha256 = "06cfqzpqsvdnsxbysl5p2fgdgxgl9y4p7scpnrfa8z2zgkjdspz0"; }; + # to update apply these patches with `git am *.patch` to https://git.savannah.gnu.org/git/make.git patches = [ + # Replaces /bin/sh with sh, see patch file for reasoning + ./0001-No-impure-bin-sh.patch # Purity: don't look for library dependencies (of the form `-lfoo') in /lib # and /usr/lib. It's a stupid feature anyway. Likewise, when searching for # included Makefiles, don't look in /usr/include and friends. - ./impure-dirs.patch + ./0002-remove-impure-dirs.patch ]; nativeBuildInputs = lib.optionals guileSupport [ pkg-config ]; diff --git a/nixpkgs/pkgs/development/tools/build-managers/gnumake/impure-dirs.patch b/nixpkgs/pkgs/development/tools/build-managers/gnumake/impure-dirs.patch deleted file mode 100644 index 6c7d9d2463c3..000000000000 --- a/nixpkgs/pkgs/development/tools/build-managers/gnumake/impure-dirs.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff -Naur a/src/read.c b/src/read.c ---- a/src/read.c -+++ b/src/read.c -@@ -109,9 +109,6 @@ - #endif - INCLUDEDIR, - #ifndef _AMIGA -- "/usr/gnu/include", -- "/usr/local/include", -- "/usr/include", - #endif - 0 - }; -diff -Naur a/src/remake.c b/src/remake.c ---- a/src/remake.c -+++ b/src/remake.c -@@ -1601,8 +1601,6 @@ - static const char *dirs[] = - { - #ifndef _AMIGA -- "/lib", -- "/usr/lib", - #endif - #if defined(WINDOWS32) && !defined(LIBDIR) - /* diff --git a/nixpkgs/pkgs/development/tools/build-managers/jam/default.nix b/nixpkgs/pkgs/development/tools/build-managers/jam/default.nix index 859497345ff6..8db882711fc2 100644 --- a/nixpkgs/pkgs/development/tools/build-managers/jam/default.nix +++ b/nixpkgs/pkgs/development/tools/build-managers/jam/default.nix @@ -1,10 +1,11 @@ { lib, stdenv, fetchurl, bison }: stdenv.mkDerivation rec { - name = "jam-2.6.1"; + pname = "jam"; + version = "2.6.1"; src = fetchurl { - url = "https://swarm.workshop.perforce.com/projects/perforce_software-jam/download/main/${name}.tar"; + url = "https://swarm.workshop.perforce.com/projects/perforce_software-jam/download/main/${pname}-${version}.tar"; sha256 = "19xkvkpycxfsncxvin6yqrql3x3z9ypc1j8kzls5k659q4kv5rmc"; }; diff --git a/nixpkgs/pkgs/development/tools/build-managers/mill/default.nix b/nixpkgs/pkgs/development/tools/build-managers/mill/default.nix index 4682fab41db1..27a21619c1d7 100644 --- a/nixpkgs/pkgs/development/tools/build-managers/mill/default.nix +++ b/nixpkgs/pkgs/development/tools/build-managers/mill/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "mill"; - version = "0.9.8"; + version = "0.9.9"; src = fetchurl { - url = "https://github.com/com-lihaoyi/mill/releases/download/${version}/${version}"; - sha256 = "sha256-vWCzjit7MPrKqEYgJfQHAkam9J9NgMObOQ/A+OQr24o="; + url = "https://github.com/com-lihaoyi/mill/releases/download/${version}/${version}-assembly"; + sha256 = "sha256-HIT7bxMEz7jpSsYvohN9+zYuyCf/ARE7hd48YMTo9/4="; }; nativeBuildInputs = [ makeWrapper ]; @@ -15,6 +15,9 @@ stdenv.mkDerivation rec { dontConfigure = true; dontBuild = true; + # this is mostly downloading a pre-built artifact + preferLocal = true; + installPhase = '' runHook preInstall install -Dm555 "$src" "$out/bin/.mill-wrapped" @@ -25,6 +28,13 @@ stdenv.mkDerivation rec { runHook postInstall ''; + doInstallCheck = true; + # The default release is a script which will do an impure download + # just ensure that the application can run without network + installCheckPhase = '' + $out/bin/mill --help > /dev/null + ''; + meta = with lib; { homepage = "https://www.lihaoyi.com/mill"; license = licenses.mit; diff --git a/nixpkgs/pkgs/development/tools/build-managers/mk/default.nix b/nixpkgs/pkgs/development/tools/build-managers/mk/default.nix index 1eaa51a5de0b..afc0b6f1ec01 100644 --- a/nixpkgs/pkgs/development/tools/build-managers/mk/default.nix +++ b/nixpkgs/pkgs/development/tools/build-managers/mk/default.nix @@ -1,9 +1,10 @@ {lib, stdenv, fetchurl}: -stdenv.mkDerivation { - name = "mk-2006-01-31"; +stdenv.mkDerivation rec { + pname = "mk"; + version = "unstable-2006-01-31"; src = fetchurl { - url = "http://tarballs.nixos.org/mk-20060131.tar.gz"; + url = "http://tarballs.nixos.org/${pname}-20060131.tar.gz"; sha256 = "0za8dp1211bdp4584xb59liqpww7w1ql0cmlv34p9y928nibcxsr"; }; builder = ./builder.sh; diff --git a/nixpkgs/pkgs/development/tools/build-managers/rebar/default.nix b/nixpkgs/pkgs/development/tools/build-managers/rebar/default.nix index 30c55dbca373..c6e74a8ebb2c 100644 --- a/nixpkgs/pkgs/development/tools/build-managers/rebar/default.nix +++ b/nixpkgs/pkgs/development/tools/build-managers/rebar/default.nix @@ -1,12 +1,8 @@ { lib, stdenv, fetchurl, erlang }: - -let - version = "2.6.4"; -in -stdenv.mkDerivation { +stdenv.mkDerivation rec { pname = "rebar"; - inherit version; + version = "2.6.4"; src = fetchurl { url = "https://github.com/rebar/rebar/archive/${version}.tar.gz"; diff --git a/nixpkgs/pkgs/development/tools/build-managers/rebar3/default.nix b/nixpkgs/pkgs/development/tools/build-managers/rebar3/default.nix index 9be3d232fb89..3b775eeaef1c 100644 --- a/nixpkgs/pkgs/development/tools/build-managers/rebar3/default.nix +++ b/nixpkgs/pkgs/development/tools/build-managers/rebar3/default.nix @@ -39,6 +39,14 @@ let HOME=. escript bootstrap ''; + + patches = [] + # Skips test that can write outside the designated tmp directory, potentially resulting in build failures + # due to file ownership issues if ran without sandbox (eg. Mac M1 default). This patch can be Removed when + # rebar3 releases with the following commit: + # https://github.com/erlang/rebar3/commit/11055384dbd5bf7d181bca83a33b0e100275ff21 + ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [ ./tmp-tests-skip.patch ]; + checkPhase = '' HOME=. escript ./rebar3 ct ''; diff --git a/nixpkgs/pkgs/development/tools/build-managers/rebar3/tmp-tests-skip.patch b/nixpkgs/pkgs/development/tools/build-managers/rebar3/tmp-tests-skip.patch new file mode 100644 index 000000000000..b90e0f9d2bb6 --- /dev/null +++ b/nixpkgs/pkgs/development/tools/build-managers/rebar3/tmp-tests-skip.patch @@ -0,0 +1,17 @@ +diff --git a/test/rebar_file_utils_SUITE.erl b/test/rebar_file_utils_SUITE.erl +index d771a82..05cfbf7 100644 +--- a/test/rebar_file_utils_SUITE.erl ++++ b/test/rebar_file_utils_SUITE.erl +@@ -34,13 +34,11 @@ + + all() -> + [{group, tmpdir}, +- {group, reset_dir}, + {group, mv}, + path_from_ancestor, + canonical_path, + absolute_path, + normalized_path, +- resolve_link, + split_dirname, + mv_warning_is_ignored]. diff --git a/nixpkgs/pkgs/development/tools/build-managers/redo/default.nix b/nixpkgs/pkgs/development/tools/build-managers/redo/default.nix index 48fbffc39406..f16e91d3bfb1 100644 --- a/nixpkgs/pkgs/development/tools/build-managers/redo/default.nix +++ b/nixpkgs/pkgs/development/tools/build-managers/redo/default.nix @@ -1,9 +1,10 @@ {lib, stdenv, fetchurl, perl }: stdenv.mkDerivation rec { - name = "redo-1.4"; + pname = "redo"; + version = "1.4"; src = fetchurl { - url = "https://jdebp.eu./Repository/freebsd/${name}.tar.gz"; + url = "https://jdebp.eu./Repository/freebsd/${pname}-${version}.tar.gz"; sha256 = "1c8gr5h77v4fw78zkhbm9z9adqs3kd7xvxwnmci2zvlf4bqqk4jv"; }; |