3
0
Fork 0
forked from mirrors/nixpkgs
nixpkgs/pkgs/development/tools/build-managers/gnumake/3.82/default.nix
aszlig 492ca7be2b
gnumake3: Fix build against glibc-2.27
This has already been patched against gnumake4 (519f0b8db2)
but we still have packages depending on gnumake3, so let's also apply
the same patch to gnumake 3.

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @shlevy, @vcunat
2018-04-12 16:21:30 +02:00

63 lines
2 KiB
Nix

{stdenv, fetchurl}:
let version = "3.82"; in
stdenv.mkDerivation {
name = "gnumake-${version}";
src = fetchurl {
url = "mirror://gnu/make/make-${version}.tar.bz2";
sha256 = "0ri98385hsd7li6rh4l5afcq92v8l2lgiaz85wgcfh4w2wzsghg2";
};
/* On Darwin, there are 3 test failures that haven't been investigated
yet. On cygwin at least parallelsim test hangs. */
doCheck = !stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.isCygwin;
patches =
[
# 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
# a bunch of patches from Gentoo, mostly should be from upstream (unreleased)
./archives-many-objs.patch
./MAKEFLAGS-reexec.patch
./memory-corruption.patch
./glob-speedup.patch
./copy-on-expand.patch
./oneshell.patch
./parallel-remake.patch
./intermediate-parallel.patch
./construct-command-line.patch
./long-command-line.patch
./darwin-library_search-dylib.patch
# Fix support for glibc 2.27's glob
../4.2/glibc-2.27-glob.patch
];
patchFlags = "-p0";
meta = {
description = "GNU Make, a program controlling 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 = http://www.gnu.org/software/make/;
license = stdenv.lib.licenses.gpl3Plus;
maintainers = [ ];
platforms = stdenv.lib.platforms.all;
};
}