From 29e14f8a72530d059a1eed65ab2c772cc91e76be Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Sun, 17 Oct 2021 19:04:58 +0200 Subject: [PATCH] polyml*: fix build w/glibc-2.34 Failing Hydra build: https://hydra.nixos.org/build/156205993 --- pkgs/development/compilers/polyml/5.6.nix | 10 +++++++++- pkgs/development/compilers/polyml/5.7.nix | 12 ++++++++++-- pkgs/development/compilers/polyml/default.nix | 8 ++++++++ 3 files changed, 27 insertions(+), 3 deletions(-) diff --git a/pkgs/development/compilers/polyml/5.6.nix b/pkgs/development/compilers/polyml/5.6.nix index 7858e3f6dc1..4354ce7e2d6 100644 --- a/pkgs/development/compilers/polyml/5.6.nix +++ b/pkgs/development/compilers/polyml/5.6.nix @@ -1,4 +1,4 @@ -{lib, stdenv, fetchurl, autoreconfHook}: +{lib, stdenv, fetchurl, autoreconfHook, fetchpatch }: let version = "5.6"; @@ -12,6 +12,14 @@ stdenv.mkDerivation { substituteInPlace configure.ac --replace stdc++ c++ ''; + patches = [ + # glibc 2.34 compat + (fetchpatch { + url = "https://src.fedoraproject.org/rpms/polyml/raw/4d8868ca5a1ce3268f212599a321f8011c950496/f/polyml-pthread-stack-min.patch"; + sha256 = "1h5ihg2sxld9ymrl3f2mpnbn2242ka1fsa0h4gl9h90kndvg6kby"; + }) + ]; + buildInputs = lib.optional stdenv.isDarwin autoreconfHook; src = fetchurl { diff --git a/pkgs/development/compilers/polyml/5.7.nix b/pkgs/development/compilers/polyml/5.7.nix index 5ac6990383c..efd3d1bfd40 100644 --- a/pkgs/development/compilers/polyml/5.7.nix +++ b/pkgs/development/compilers/polyml/5.7.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, autoreconfHook, gmp, libffi }: +{ lib, stdenv, fetchFromGitHub, autoreconfHook, gmp, libffi, fetchpatch }: stdenv.mkDerivation rec { pname = "polyml"; @@ -8,7 +8,15 @@ stdenv.mkDerivation rec { substituteInPlace configure.ac --replace stdc++ c++ ''; - patches = [ ./5.7-new-libffi-FFI_SYSV.patch ]; + patches = [ + ./5.7-new-libffi-FFI_SYSV.patch + + # glibc 2.34 compat + (fetchpatch { + url = "https://src.fedoraproject.org/rpms/polyml/raw/4d8868ca5a1ce3268f212599a321f8011c950496/f/polyml-pthread-stack-min.patch"; + sha256 = "1h5ihg2sxld9ymrl3f2mpnbn2242ka1fsa0h4gl9h90kndvg6kby"; + }) + ]; buildInputs = [ libffi gmp ]; diff --git a/pkgs/development/compilers/polyml/default.nix b/pkgs/development/compilers/polyml/default.nix index 8a283bb6cf9..63506b8f07f 100644 --- a/pkgs/development/compilers/polyml/default.nix +++ b/pkgs/development/compilers/polyml/default.nix @@ -12,6 +12,14 @@ stdenv.mkDerivation rec { nativeBuildInputs = lib.optional stdenv.isDarwin autoreconfHook; + patches = [ + # glibc 2.34 compat + (fetchpatch { + url = "https://src.fedoraproject.org/rpms/polyml/raw/4d8868ca5a1ce3268f212599a321f8011c950496/f/polyml-pthread-stack-min.patch"; + sha256 = "1h5ihg2sxld9ymrl3f2mpnbn2242ka1fsa0h4gl9h90kndvg6kby"; + }) + ]; + configureFlags = [ "--enable-shared" "--with-system-libffi"