From f434e83d62f8cc887309670ae551f24fec95611b Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sun, 20 Aug 2023 08:50:53 +0100 Subject: [PATCH] angsd: pull patch pending upstream inclusion for parallel build fix Without the change rapallel builds fail occasionally as: $ make --shuffle -j ... g++ -c -O3 -D__STDC_FORMAT_MACROS argStruct.cpp g++ -c -O3 -D__STDC_FORMAT_MACROS ancestral_likes.cpp gcc -c -O3 -D__STDC_FORMAT_MACROS fet.c g++ -c -O3 -D__STDC_FORMAT_MACROS abcGL.cpp g++ -c -O3 -D__STDC_FORMAT_MACROS pop1_read.cpp g++ -c -O3 -D__STDC_FORMAT_MACROS angsd.cpp g++ -c -O3 -D__STDC_FORMAT_MACROS abcHWE_F.cpp gcc -c -O3 -D__STDC_FORMAT_MACROS kprobaln.c g++ -c -O3 -D__STDC_FORMAT_MACROS mpileup.cpp argStruct.cpp:3:10: fatal error: version.h: No such file or directory 3 | #include "version.h" | ^~~~~~~~~~~ compilation terminated. angsd.cpp:11:10: fatal error: version.h: No such file or directory 11 | #include "version.h" | ^~~~~~~~~~~ --- .../science/biology/angsd/default.nix | 24 ++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/science/biology/angsd/default.nix b/pkgs/applications/science/biology/angsd/default.nix index 035cb2ca2b27..71366dc0d364 100644 --- a/pkgs/applications/science/biology/angsd/default.nix +++ b/pkgs/applications/science/biology/angsd/default.nix @@ -1,4 +1,14 @@ -{ lib, stdenv, fetchFromGitHub, htslib, zlib, bzip2, xz, curl, openssl }: +{ lib +, stdenv +, fetchFromGitHub +, fetchpatch +, htslib +, zlib +, bzip2 +, xz +, curl +, openssl +}: stdenv.mkDerivation rec { pname = "angsd"; @@ -11,8 +21,20 @@ stdenv.mkDerivation rec { rev = version; }; + patches = [ + # Pull pending inclusion upstream patch for parallel buil fixes: + # https://github.com/ANGSD/angsd/pull/590 + (fetchpatch { + name = "parallel-make.patch"; + url = "https://github.com/ANGSD/angsd/commit/89fd1d898078016df390e07e25b8a3eeadcedf43.patch"; + hash = "sha256-KQgUfr3v8xc+opAm4qcSV2eaupztv4gzJJHyzJBCxqA="; + }) + ]; + buildInputs = [ htslib zlib bzip2 xz curl openssl ]; + enableParallelBuilding = true; + makeFlags = [ "HTSSRC=systemwide" "prefix=$(out)" ]; meta = with lib; {