diff --git a/pkgs/applications/science/biology/kent/kent-utils.patch b/pkgs/applications/science/biology/kent/kent-utils.patch deleted file mode 100644 index be33125de5fb..000000000000 --- a/pkgs/applications/science/biology/kent/kent-utils.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- ./src/utils/bigWigCat/makefile.orig 2023-03-27 14:03:01.585896516 +0000 -+++ ./src/utils/bigWigCat/makefile 2023-03-27 14:03:27.716180479 +0000 -@@ -1,3 +1,4 @@ - kentSrc = ../.. - A = bigWigCat - include $(kentSrc)/inc/userApp.mk -+L += -lz - ---- ./src/utils/pslLiftSubrangeBlat/makefile.orig 1970-01-01 00:00:01.000000000 +0000 -+++ ./src/utils/pslLiftSubrangeBlat/makefile 2023-03-27 14:36:59.044600213 +0000 -@@ -3,7 +3,7 @@ - preMyLibs += ../../lib/$(MACHTYPE)/jkhgap.a - include $(kentSrc)/inc/userApp.mk - HG_INC += -I../../hg/inc --L += $(MYSQLLIBS) -lm -+L += $(MYSQLLIBS) -lm -lz - - test:: - cd tests && ${MAKE} test - ---- ./src/utils/bigWigCorrelate/makefile.orig 2023-03-27 14:36:23.117545553 +0000 -+++ ./src/utils/bigWigCorrelate/makefile 2023-03-27 14:36:33.854328176 +0000 -@@ -1,3 +1,4 @@ - kentSrc = ../.. - A = bigWigCorrelate - include $(kentSrc)/inc/userApp.mk -+L += -lz diff --git a/pkgs/development/perl-modules/Bio-BigFile/default.nix b/pkgs/development/perl-modules/Bio-BigFile/default.nix index a84b21823978..516b6d014c5a 100644 --- a/pkgs/development/perl-modules/Bio-BigFile/default.nix +++ b/pkgs/development/perl-modules/Bio-BigFile/default.nix @@ -25,7 +25,7 @@ buildPerlModule rec { # Only kent 335 works with Bio-BigFile, see # - official documentation: https://www.ensembl.org/info/docs/tools/vep/script/vep_download.html#bigfile # - one of the developer's answer: https://github.com/Ensembl/ensembl-vep/issues/1412 - # KENT_SRC is needed for building BioBigfil + # BioBigfile needs the environment variable KENT_SRC to find kent KENT_SRC = kent.overrideAttrs (old: rec { pname = "kent"; version = "335"; @@ -37,13 +37,12 @@ buildPerlModule rec { sha256 = "1455dwzpaq4hyhcqj3fpwgq5a39kp46qarfbr6ms6l2lz583r083"; }; - # The first patch is a custom fix for linking error with zlib. patches = [ + # Fix for linking error with zlib. Adding zlib as a dependency is not enough ./kent-utils.patch - (fetchpatch { - url = "https://github.com/ucscGenomeBrowser/kent/commit/316e4fd40f53c96850128fd65097a42623d1e736.patch"; - sha256 = "sha256-wr3NP5qoSonKz1TLKtQyrTPErCOk2gC1RimcX0tE7cM="; - })]; + # Vendoring upstream patch (not merged in uscsGenomeBrowser/kent) + ./kent-316e4fd40f53c96850128fd65097a42623d1e736.patch + ]; }); @@ -55,12 +54,13 @@ buildPerlModule rec { openssl ]; + # Ensure compatibility with GCC-11 (compilation fails if -Wno-format-security) hardeningDisable = [ "format" ]; meta = with lib; { homepage = "https://metacpan.org/dist/Bio-BigFile"; description = "Manipulate Jim Kent's BigWig and BigBed index files for genomic features"; - license = licenses.unfree; + license = licenses.artistic2; maintainers = with maintainers; [ apraga ]; }; } diff --git a/pkgs/development/perl-modules/Bio-BigFile/kent-316e4fd40f53c96850128fd65097a42623d1e736.patch b/pkgs/development/perl-modules/Bio-BigFile/kent-316e4fd40f53c96850128fd65097a42623d1e736.patch new file mode 100644 index 000000000000..42d122a8b0f7 --- /dev/null +++ b/pkgs/development/perl-modules/Bio-BigFile/kent-316e4fd40f53c96850128fd65097a42623d1e736.patch @@ -0,0 +1,25 @@ +From 316e4fd40f53c96850128fd65097a42623d1e736 Mon Sep 17 00:00:00 2001 +From: Marcel Bargull +Date: Sat, 27 Mar 2021 16:23:34 +0100 +Subject: [PATCH] Fix linking Clang 11 compiled objects + +With Clang 11 htmlRecover from lib/htmshell.h is picked up as a +definition, not just declaration of the jmp_buf. As such both +lib/htmshell.c and hg/lib/cart.c export two symbols with the same name. +--- + src/inc/htmshell.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/inc/htmshell.h b/src/inc/htmshell.h +index 9d85f45b936..dd586db761c 100644 +--- a/src/inc/htmshell.h ++++ b/src/inc/htmshell.h +@@ -160,7 +160,7 @@ void htmlBadVar(char *varName); + void htmlImage(char *fileName, int width, int height); + /* Display centered image file. */ + +-jmp_buf htmlRecover; /* Error recovery jump. Exposed for cart's use. */ ++extern jmp_buf htmlRecover; /* Error recovery jump. Exposed for cart's use. */ + + void htmlVaWarn(char *format, va_list args); + /* Write an error message. (Generally you just call warn() or errAbort().