diff options
author | Vladimír Čunát <v@cunat.cz> | 2021-07-20 22:07:53 +0200 |
---|---|---|
committer | Vladimír Čunát <v@cunat.cz> | 2021-07-20 22:07:53 +0200 |
commit | 586a9e6bffb1b4e0e444bf4013169d8f415f2987 (patch) | |
tree | df9aa9db3c83cd53a80f3f75aa2118bcfa0e283a /pkgs/development/tools/build-managers | |
parent | 1916bd87173c3af6efa077da53180a16f3697139 (diff) | |
parent | 61eb7e2e9e36e062a3bd323155441f78e9fcd7ed (diff) | |
download | nixpkgs-586a9e6bffb1b4e0e444bf4013169d8f415f2987.tar nixpkgs-586a9e6bffb1b4e0e444bf4013169d8f415f2987.tar.gz nixpkgs-586a9e6bffb1b4e0e444bf4013169d8f415f2987.tar.bz2 nixpkgs-586a9e6bffb1b4e0e444bf4013169d8f415f2987.tar.lz nixpkgs-586a9e6bffb1b4e0e444bf4013169d8f415f2987.tar.xz nixpkgs-586a9e6bffb1b4e0e444bf4013169d8f415f2987.tar.zst nixpkgs-586a9e6bffb1b4e0e444bf4013169d8f415f2987.zip |
Merge #129506: 'staging-next' branch
Diffstat (limited to 'pkgs/development/tools/build-managers')
9 files changed, 107 insertions, 33 deletions
diff --git a/pkgs/development/tools/build-managers/gnumake/0001-No-impure-bin-sh.patch b/pkgs/development/tools/build-managers/gnumake/0001-No-impure-bin-sh.patch new file mode 100644 index 00000000000..58ee2d6fe09 --- /dev/null +++ b/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/pkgs/development/tools/build-managers/gnumake/0002-remove-impure-dirs.patch b/pkgs/development/tools/build-managers/gnumake/0002-remove-impure-dirs.patch new file mode 100644 index 00000000000..e62aee7d999 --- /dev/null +++ b/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/pkgs/development/tools/build-managers/gnumake/4.2/default.nix b/pkgs/development/tools/build-managers/gnumake/4.2/default.nix index 5d0a9127331..7d56e55ebdb 100644 --- a/pkgs/development/tools/build-managers/gnumake/4.2/default.nix +++ b/pkgs/development/tools/build-managers/gnumake/4.2/default.nix @@ -20,6 +20,7 @@ stdenv.mkDerivation rec { ./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/pkgs/development/tools/build-managers/gnumake/4.2/glibc-2.33-glob.patch b/pkgs/development/tools/build-managers/gnumake/4.2/glibc-2.33-glob.patch new file mode 100644 index 00000000000..d3e424d1c49 --- /dev/null +++ b/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/pkgs/development/tools/build-managers/gnumake/default.nix b/pkgs/development/tools/build-managers/gnumake/default.nix index b6d5d8e1548..3b9f0add879 100644 --- a/pkgs/development/tools/build-managers/gnumake/default.nix +++ b/pkgs/development/tools/build-managers/gnumake/default.nix @@ -9,11 +9,14 @@ stdenv.mkDerivation rec { 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/pkgs/development/tools/build-managers/gnumake/impure-dirs.patch b/pkgs/development/tools/build-managers/gnumake/impure-dirs.patch deleted file mode 100644 index 6c7d9d2463c..00000000000 --- a/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/pkgs/development/tools/build-managers/jam/default.nix b/pkgs/development/tools/build-managers/jam/default.nix index 859497345ff..8db882711fc 100644 --- a/pkgs/development/tools/build-managers/jam/default.nix +++ b/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/pkgs/development/tools/build-managers/mk/default.nix b/pkgs/development/tools/build-managers/mk/default.nix index 1eaa51a5de0..afc0b6f1ec0 100644 --- a/pkgs/development/tools/build-managers/mk/default.nix +++ b/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/pkgs/development/tools/build-managers/redo/default.nix b/pkgs/development/tools/build-managers/redo/default.nix index 48fbffc3940..f16e91d3bfb 100644 --- a/pkgs/development/tools/build-managers/redo/default.nix +++ b/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"; }; |