gnumake: Fix build against glibc 2.27.

+29 -1
+2
pkgs/development/libraries/glibc/common-2.27.nix
··· 192 maintainers = [ lib.maintainers.eelco ]; 193 platforms = lib.platforms.linux; 194 } // meta; 195 } 196 197 // lib.optionalAttrs (cross != null) {
··· 192 maintainers = [ lib.maintainers.eelco ]; 193 platforms = lib.platforms.linux; 194 } // meta; 195 + 196 + passthru = { inherit version; }; 197 } 198 199 // lib.optionalAttrs (cross != null) {
+3 -1
pkgs/development/tools/build-managers/gnumake/4.2/default.nix
··· 4 5 let 6 version = "4.2.1"; 7 in 8 stdenv.mkDerivation { 9 name = "gnumake-${version}"; ··· 20 # included Makefiles, don't look in /usr/include and friends. 21 ./impure-dirs.patch 22 ./pselect.patch 23 - ]; 24 25 nativeBuildInputs = stdenv.lib.optionals guileSupport [ pkgconfig ]; 26 buildInputs = stdenv.lib.optionals guileSupport [ guile ];
··· 4 5 let 6 version = "4.2.1"; 7 + 8 + needGlibcPatch = (stdenv.cc.libc.version or "") == "2.27"; 9 in 10 stdenv.mkDerivation { 11 name = "gnumake-${version}"; ··· 22 # included Makefiles, don't look in /usr/include and friends. 23 ./impure-dirs.patch 24 ./pselect.patch 25 + ] ++ stdenv.lib.optional needGlibcPatch ./glibc-2.27.patch; 26 27 nativeBuildInputs = stdenv.lib.optionals guileSupport [ pkgconfig ]; 28 buildInputs = stdenv.lib.optionals guileSupport [ guile ];
+24
pkgs/development/tools/build-managers/gnumake/4.2/glibc-2.27.patch
···
··· 1 + From 48c8a116a914a325a0497721f5d8b58d5bba34d4 Mon Sep 17 00:00:00 2001 2 + From: Paul Smith <psmith@gnu.org> 3 + Date: Sun, 19 Nov 2017 15:09:16 -0500 4 + Subject: * configure.ac: Support GLIBC glob interface version 2 5 + 6 + --- 7 + configure.ac | 3 +-- 8 + 1 file changed, 1 insertion(+), 2 deletions(-) 9 + 10 + diff -Naur a/configure b/configure 11 + --- configure 2016-06-10 19:03:21.000000000 -0400 12 + +++ configure 2018-02-18 04:40:32.971371555 -0500 13 + @@ -11481,10 +11481,9 @@ 14 + #include <glob.h> 15 + #include <fnmatch.h> 16 + 17 + -#define GLOB_INTERFACE_VERSION 1 18 + #if !defined _LIBC && defined __GNU_LIBRARY__ && __GNU_LIBRARY__ > 1 19 + # include <gnu-versions.h> 20 + -# if _GNU_GLOB_INTERFACE_VERSION == GLOB_INTERFACE_VERSION 21 + +# if _GNU_GLOB_INTERFACE_VERSION == 1 || _GNU_GLOB_INTERFACE_VERSION == 2 22 + gnu glob 23 + # endif 24 + #endif