perlPackages.Tk: fix build with clang 16

The jpeg `configure` script fails to detect clang as a functioning C
compiler because it uses a test with a `main` that returns an implicit
`int`, which results in an error with clang 16.
This commit is contained in:
Randy Eckenrode 2023-09-05 23:40:34 -04:00
parent dba6d77ad2
commit 42f749145d
No known key found for this signature in database
GPG key ID: 64C1CD4EC2A600D9
2 changed files with 16 additions and 0 deletions

View file

@ -0,0 +1,11 @@
--- a/JPEG/jpeg/configure 2013-11-15 18:50:03.000000000 -0500
+++ b/JPEG/jpeg/configure 2023-09-05 23:36:12.675151164 -0400
@@ -623,7 +623,7 @@
cat > conftest.$ac_ext <<EOF
#line 625 "configure"
#include "confdefs.h"
-main(){return(0);}
+int main(){return(0);}
EOF
if { (eval echo configure:629: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
ac_cv_prog_cc_works=yes

View file

@ -26585,6 +26585,11 @@ with self; {
url = "mirror://cpan/authors/id/S/SR/SREZIC/Tk-804.036.tar.gz";
hash = "sha256-Mqpycaa9/twzMBGbOCXa3dCqS1yTb4StdOq7kyogCl4=";
};
patches = [
# Fix failing configure test due to implicit int return value of main, which results
# in an error with clang 16.
../development/perl-modules/tk-configure-implicit-int-fix.patch
];
makeMakerFlags = [ "X11INC=${pkgs.xorg.libX11.dev}/include" "X11LIB=${pkgs.xorg.libX11.out}/lib" ];
buildInputs = [ pkgs.xorg.libX11 pkgs.libpng ];
doCheck = false; # Expects working X11.