gnumake44: revert "reintrocude older 4.4 version for openjdk"
This reverts commit d78148fb39.
openjdk{11,17,19} were ported to latest gnumake-4.4.1.
This commit is contained in:
@@ -1,35 +0,0 @@
|
||||
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
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
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
|
||||
|
||||
@@ -1,75 +0,0 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, guileSupport ? false, guile
|
||||
# avoid guile depend on bootstrap to prevent dependency cycles
|
||||
, inBootstrap ? false
|
||||
, pkg-config
|
||||
, gnumake
|
||||
}:
|
||||
|
||||
let
|
||||
guileEnabled = guileSupport && !inBootstrap;
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gnumake";
|
||||
version = "4.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/make/make-${version}.tar.gz";
|
||||
hash = "sha256-WB9NToctp0s5Qch0IViYp9NYAvA3Mr3M7h1KeXkQXRg=";
|
||||
};
|
||||
|
||||
# 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.
|
||||
./0002-remove-impure-dirs.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = lib.optionals guileEnabled [ pkg-config ];
|
||||
buildInputs = lib.optionals guileEnabled [ guile ];
|
||||
|
||||
configureFlags = lib.optional guileEnabled "--with-guile"
|
||||
|
||||
# Make uses this test to decide whether it should keep track of
|
||||
# subseconds. Apple made this possible with APFS and macOS 10.13.
|
||||
# However, we still support macOS 10.11 and 10.12. Binaries built
|
||||
# in Nixpkgs will be unable to use futimens to set mtime less than
|
||||
# a second. So, tell Make to ignore nanoseconds in mtime here by
|
||||
# overriding the autoconf test for the struct.
|
||||
# See https://github.com/NixOS/nixpkgs/issues/51221 for discussion.
|
||||
++ lib.optional stdenv.isDarwin "ac_cv_struct_st_mtim_nsec=no";
|
||||
|
||||
outputs = [ "out" "man" "info" ];
|
||||
separateDebugInfo = true;
|
||||
|
||||
passthru.tests = {
|
||||
# make sure that the override doesn't break bootstrapping
|
||||
gnumakeWithGuile = gnumake.override { guileSupport = true; };
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "A tool to control the generation of non-source files from sources";
|
||||
longDescription = ''
|
||||
Make is a tool which controls the generation of executables and
|
||||
other non-source files of a program from the program's source files.
|
||||
|
||||
Make gets its knowledge of how to build your program from a file
|
||||
called the makefile, which lists each of the non-source files and
|
||||
how to compute it from other files. When you write a program, you
|
||||
should write a makefile for it, so that it is possible to use Make
|
||||
to build and install the program.
|
||||
'';
|
||||
homepage = "https://www.gnu.org/software/make/";
|
||||
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = [ maintainers.vrthra ];
|
||||
mainProgram = "make";
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
@@ -18068,8 +18068,6 @@ with pkgs;
|
||||
|
||||
gnumake = callPackage ../development/tools/build-managers/gnumake { };
|
||||
gnumake42 = callPackage ../development/tools/build-managers/gnumake/4.2 { };
|
||||
# openjdk-17 fails on 4.4.1. Provide 4.4 until we fix it.
|
||||
gnumake44 = callPackage ../development/tools/build-managers/gnumake/4.4 { };
|
||||
|
||||
go-licenses = callPackage ../development/tools/misc/go-licenses { };
|
||||
|
||||
|
||||
Reference in New Issue
Block a user