Wed Sep 20 22:37:40 2023 UTC ()
lang/racket: fix build on NetBSD.

* Package uses terminfo, so include "mk/terminfo.buildlink3.mk".
* Patch to not require ncurses on NetBSD. Builds fine with netbsd-curses
  and apparently doesn't require extra features.
* Replace all instances of `-lncurses` with `-lcurses -lterminfo` in
  patch files.
* Replace "devel/ncurses/buildlink3.mk" with "mk/curses.buildlink3.mk"
  in Makefile to reflect above change.
* Bump revision.

Tested on NetBSD-10.0_BETA/amd64.


(vins)
diff -r1.95 -r1.96 pkgsrc/lang/racket/Makefile
diff -r1.27 -r1.28 pkgsrc/lang/racket/distinfo
diff -r0 -r1.1 pkgsrc/lang/racket/patches/patch-src_ChezScheme_c_expeditor.c
diff -r1.1 -r1.2 pkgsrc/lang/racket/patches/patch-src_ChezScheme_configure
diff -r1.1 -r1.2 pkgsrc/lang/racket/patches/patch-src_bc_configure
diff -r1.1 -r1.2 pkgsrc/lang/racket/patches/patch-src_bc_configure.ac
diff -r1.1 -r1.2 pkgsrc/lang/racket/patches/patch-src_cs_c_configure
diff -r1.1 -r1.2 pkgsrc/lang/racket/patches/patch-src_cs_c_configure.ac
Thu Sep 21 07:37:40 2023
Thu Jan 1 09:00:00 1970
pkgsrc/lang/racket/patches/patch-src_ChezScheme_c_expeditor.c,v

anoncvs not yet been updated
Thu Sep 21 07:37:40 2023
Thu Jan 1 09:00:00 1970
pkgsrc/lang/racket/patches/patch-src_ChezScheme_configure,v

anoncvs not yet been updated

cvs diff -r1.95 -r1.96 pkgsrc/lang/racket/Makefile (expand / switch to unified diff)

--- pkgsrc/lang/racket/Makefile 2023/09/20 16:27:37 1.95
+++ pkgsrc/lang/racket/Makefile 2023/09/20 22:37:39 1.96
@@ -1,18 +1,18 @@ @@ -1,18 +1,18 @@
1# $NetBSD: Makefile,v 1.95 2023/09/20 16:27:37 wiz Exp $ 1# $NetBSD: Makefile,v 1.96 2023/09/20 22:37:39 vins Exp $
2 2
3DISTNAME= racket-8.10-src 3DISTNAME= racket-8.10-src
4PKGNAME= ${DISTNAME:S/-src$//} 4PKGNAME= ${DISTNAME:S/-src$//}
5PKGREVISION= 1 5PKGREVISION= 2
6CATEGORIES= lang 6CATEGORIES= lang
7MASTER_SITES_PLT= https://download.racket-lang.org/installers/${PKGVERSION_NOREV}/ 7MASTER_SITES_PLT= https://download.racket-lang.org/installers/${PKGVERSION_NOREV}/
8MASTER_SITES_PLT+= https://mirror.racket-lang.org/installers/${PKGVERSION_NOREV}/ 8MASTER_SITES_PLT+= https://mirror.racket-lang.org/installers/${PKGVERSION_NOREV}/
9MASTER_SITES_PLT+= https://plt.eecs.northwestern.edu/racket-mirror/${PKGVERSION_NOREV}/ 9MASTER_SITES_PLT+= https://plt.eecs.northwestern.edu/racket-mirror/${PKGVERSION_NOREV}/
10MASTER_SITES_PLT+= https://www.cs.utah.edu/plt/installers/${PKGVERSION_NOREV}/ 10MASTER_SITES_PLT+= https://www.cs.utah.edu/plt/installers/${PKGVERSION_NOREV}/
11MASTER_SITES_PLT+= http://mirror.informatik.uni-tuebingen.de/mirror/racket/${PKGVERSION_NOREV}/ 11MASTER_SITES_PLT+= http://mirror.informatik.uni-tuebingen.de/mirror/racket/${PKGVERSION_NOREV}/
12MASTER_SITES_PLT+= http://mirror.csclub.uwaterloo.ca/racket/racket-installers/${PKGVERSION_NOREV}/ 12MASTER_SITES_PLT+= http://mirror.csclub.uwaterloo.ca/racket/racket-installers/${PKGVERSION_NOREV}/
13MASTER_SITES_PLT+= https://racket.infogroep.be/${PKGVERSION_NOREV}/ 13MASTER_SITES_PLT+= https://racket.infogroep.be/${PKGVERSION_NOREV}/
14# Pre-release: 14# Pre-release:
15#MASTER_SITES_PLT= http://pre-release.racket-lang.org/installers/ 15#MASTER_SITES_PLT= http://pre-release.racket-lang.org/installers/
16MASTER_SITES= ${MASTER_SITES_PLT} 16MASTER_SITES= ${MASTER_SITES_PLT}
17EXTRACT_SUFX= .tgz 17EXTRACT_SUFX= .tgz
18 18
@@ -54,26 +54,27 @@ REPLACE.racket.new= ${PREFIX}/bin/racket @@ -54,26 +54,27 @@ REPLACE.racket.new= ${PREFIX}/bin/racket
54REPLACE_FILES.racket= ${REPLACE_RACKET} 54REPLACE_FILES.racket= ${REPLACE_RACKET}
55 55
56EGDIR= share/examples/racket 56EGDIR= share/examples/racket
57INSTALLATION_DIRS+= ${EGDIR} 57INSTALLATION_DIRS+= ${EGDIR}
58OWN_DIRS+= ${PKG_SYSCONFDIR}/racket 58OWN_DIRS+= ${PKG_SYSCONFDIR}/racket
59CONF_FILES+= ${EGDIR}/config.rktd \ 59CONF_FILES+= ${EGDIR}/config.rktd \
60 ${PKG_SYSCONFDIR}/racket/config.rktd 60 ${PKG_SYSCONFDIR}/racket/config.rktd
61 61
62post-install: 62post-install:
63 ${MV} -f ${DESTDIR:Q}${PKG_SYSCONFDIR:Q}/racket/config.rktd \ 63 ${MV} -f ${DESTDIR:Q}${PKG_SYSCONFDIR:Q}/racket/config.rktd \
64 ${DESTDIR:Q}${PREFIX:Q}/${EGDIR:Q} 64 ${DESTDIR:Q}${PREFIX:Q}/${EGDIR:Q}
65 65
66.include "../../databases/sqlite3/buildlink3.mk" 66.include "../../databases/sqlite3/buildlink3.mk"
67.include "../../devel/ncurses/buildlink3.mk" 
68.include "../../devel/pango/buildlink3.mk" 67.include "../../devel/pango/buildlink3.mk"
69.include "../../graphics/cairo/buildlink3.mk" 68.include "../../graphics/cairo/buildlink3.mk"
70.include "../../graphics/png/buildlink3.mk" 69.include "../../graphics/png/buildlink3.mk"
71.include "../../mk/jpeg.buildlink3.mk" 70.include "../../mk/jpeg.buildlink3.mk"
72.include "../../x11/libXaw/buildlink3.mk" 71.include "../../x11/libXaw/buildlink3.mk"
73.include "../../x11/libXext/buildlink3.mk" 72.include "../../x11/libXext/buildlink3.mk"
74.include "../../x11/libXt/buildlink3.mk" 73.include "../../x11/libXt/buildlink3.mk"
75.include "../../sysutils/desktop-file-utils/desktopdb.mk" 74.include "../../sysutils/desktop-file-utils/desktopdb.mk"
76 75
77PTHREAD_AUTO_VARS= yes 76PTHREAD_AUTO_VARS= yes
78.include "../../mk/pthread.buildlink3.mk" 77.include "../../mk/pthread.buildlink3.mk"
 78.include "../../mk/terminfo.buildlink3.mk"
 79.include "../../mk/curses.buildlink3.mk"
79.include "../../mk/bsd.pkg.mk" 80.include "../../mk/bsd.pkg.mk"

cvs diff -r1.27 -r1.28 pkgsrc/lang/racket/distinfo (expand / switch to unified diff)

--- pkgsrc/lang/racket/distinfo 2023/09/01 19:48:28 1.27
+++ pkgsrc/lang/racket/distinfo 2023/09/20 22:37:40 1.28
@@ -1,10 +1,11 @@ @@ -1,10 +1,11 @@
1$NetBSD: distinfo,v 1.27 2023/09/01 19:48:28 riastradh Exp $ 1$NetBSD: distinfo,v 1.28 2023/09/20 22:37:40 vins Exp $
2 2
3BLAKE2s (racket-8.10-src.tgz) = 75ead0b8bd75edebf7743eaeba1465ac99d4559fdb97df7f485713331a6022f4 3BLAKE2s (racket-8.10-src.tgz) = 75ead0b8bd75edebf7743eaeba1465ac99d4559fdb97df7f485713331a6022f4
4SHA512 (racket-8.10-src.tgz) = 75df87b1322ebe10e9d3de3661a64ae4aea41f68af2a4941570fbe53c7047e67b74f126e532fba244e2593eaeef740ded3736e3b6eab77b9a4f1b8a0ee850894 4SHA512 (racket-8.10-src.tgz) = 75df87b1322ebe10e9d3de3661a64ae4aea41f68af2a4941570fbe53c7047e67b74f126e532fba244e2593eaeef740ded3736e3b6eab77b9a4f1b8a0ee850894
5Size (racket-8.10-src.tgz) = 33960563 bytes 5Size (racket-8.10-src.tgz) = 33960563 bytes
6SHA1 (patch-src_ChezScheme_configure) = 2ca8a7f3de569ccfdc4296916774fd9a2276275d 6SHA1 (patch-src_ChezScheme_c_expeditor.c) = b31d795ec9202762d56a0add7c2cd010bdcf6817
7SHA1 (patch-src_bc_configure) = 4d4c75686c3170617ba216438f5815d238f44ff8 7SHA1 (patch-src_ChezScheme_configure) = c0e0e3a9f68bbae18693d26c45a401f2add8a408
8SHA1 (patch-src_bc_configure.ac) = 8f86d669f203ecde18c5cce1c544718f1c5938e4 8SHA1 (patch-src_bc_configure) = de3b834b7528a41f07f52602b7c3ab0f8700a538
9SHA1 (patch-src_cs_c_configure) = 0c0a087da9e21aacbad64cf00a6a877ab161b7b7 9SHA1 (patch-src_bc_configure.ac) = cf8f61e2268c7a206c8c17fe32dc96d548672009
10SHA1 (patch-src_cs_c_configure.ac) = f9d24bb3c829aecc1a33864d9d7a5e0268fbc6af 10SHA1 (patch-src_cs_c_configure) = 103c94e23fa81c8da786b9e6a345c06a0d3f6919
 11SHA1 (patch-src_cs_c_configure.ac) = 999bd30c818efe83e9f53eff8498646fe477ca67

File Added: pkgsrc/lang/racket/patches/patch-src_ChezScheme_c_expeditor.c

cvs diff -r1.1 -r1.2 pkgsrc/lang/racket/patches/patch-src_ChezScheme_configure (expand / switch to unified diff)

--- pkgsrc/lang/racket/patches/patch-src_ChezScheme_configure 1.1
+++ pkgsrc/lang/racket/patches/patch-src_ChezScheme_configure 1.2

cvs diff -r1.1 -r1.2 pkgsrc/lang/racket/patches/patch-src_bc_configure (expand / switch to unified diff)

--- pkgsrc/lang/racket/patches/patch-src_bc_configure 2023/09/01 19:48:28 1.1
+++ pkgsrc/lang/racket/patches/patch-src_bc_configure 2023/09/20 22:37:40 1.2
@@ -1,22 +1,22 @@ @@ -1,22 +1,22 @@
1$NetBSD: patch-src_bc_configure,v 1.1 2023/09/01 19:48:28 riastradh Exp $ 1$NetBSD: patch-src_bc_configure,v 1.2 2023/09/20 22:37:40 vins Exp $
2 2
3Link against ncurses with -lncurses, not by hard-coding the static 3Directly link against ncurses and terminfo libraries, not by
4library path out of /usr/pkg. 4hard-coding the static library path out of /usr/pkg.
5https://github.com/racket/racket/issues/4734 5https://github.com/racket/racket/issues/4734
6 6
7Allow CONFIGURE_ENV to set PAXCTL so user need not have /usr/sbin in 7Allow CONFIGURE_ENV to set PAXCTL so user need not have /usr/sbin in
8PATH. 8PATH.
9 9
10--- src/bc/configure.orig 2023-07-18 00:36:36.000000000 +0000 10--- src/bc/configure.orig 2023-07-18 00:36:36.000000000 +0000
11+++ src/bc/configure 11+++ src/bc/configure
12@@ -5017,8 +5017,8 @@ case "$host_os" in 12@@ -5017,8 +5017,8 @@ case "$host_os" in
13 netbsd*) 13 netbsd*)
14 LIBS="$LIBS -rdynamic" 14 LIBS="$LIBS -rdynamic"
15 skip_curses_check=yes 15 skip_curses_check=yes
16- add_curses_lib="/usr/pkg/lib/libncurses.a" 16- add_curses_lib="/usr/pkg/lib/libncurses.a"
17- default_post_linker="paxctl +m" 17- default_post_linker="paxctl +m"
18+ add_curses_lib="-lncurses" 18+ add_curses_lib="-lcurses -lterminfo"
19+ default_post_linker="${PAXCTL:-paxctl} +m" 19+ default_post_linker="${PAXCTL:-paxctl} +m"
20 ;; 20 ;;
21 irix*) 21 irix*)
22 enable_cgcdefault="yes" 22 enable_cgcdefault="yes"

cvs diff -r1.1 -r1.2 pkgsrc/lang/racket/patches/patch-src_bc_configure.ac (expand / switch to unified diff)

--- pkgsrc/lang/racket/patches/patch-src_bc_configure.ac 2023/09/01 19:48:28 1.1
+++ pkgsrc/lang/racket/patches/patch-src_bc_configure.ac 2023/09/20 22:37:40 1.2
@@ -1,22 +1,22 @@ @@ -1,22 +1,22 @@
1$NetBSD: patch-src_bc_configure.ac,v 1.1 2023/09/01 19:48:28 riastradh Exp $ 1$NetBSD: patch-src_bc_configure.ac,v 1.2 2023/09/20 22:37:40 vins Exp $
2 2
3Link against ncurses with -lncurses, not by hard-coding the static 3Directly link against ncurses and terminfo libraries, not by
4library path out of /usr/pkg. 4hard-coding the static library path out of /usr/pkg.
5https://github.com/racket/racket/issues/4734 5https://github.com/racket/racket/issues/4734
6 6
7Allow CONFIGURE_ENV to set PAXCTL so user need not have /usr/sbin in 7Allow CONFIGURE_ENV to set PAXCTL so user need not have /usr/sbin in
8PATH. 8PATH.
9 9
10--- src/bc/configure.ac.orig 2023-07-18 00:36:36.000000000 +0000 10--- src/bc/configure.ac.orig 2023-07-18 00:36:36.000000000 +0000
11+++ src/bc/configure.ac 11+++ src/bc/configure.ac
12@@ -547,8 +547,8 @@ case "$host_os" in 12@@ -547,8 +547,8 @@ case "$host_os" in
13 netbsd*) 13 netbsd*)
14 LIBS="$LIBS -rdynamic" 14 LIBS="$LIBS -rdynamic"
15 skip_curses_check=yes 15 skip_curses_check=yes
16- add_curses_lib="/usr/pkg/lib/libncurses.a" 16- add_curses_lib="/usr/pkg/lib/libncurses.a"
17- default_post_linker="paxctl +m" 17- default_post_linker="paxctl +m"
18+ add_curses_lib="-lncurses" 18+ add_curses_lib="-lcurses -lterminfo"
19+ default_post_linker="${PAXCTL:-paxctl} +m" 19+ default_post_linker="${PAXCTL:-paxctl} +m"
20 ;; 20 ;;
21 irix*) 21 irix*)
22 enable_cgcdefault="yes" 22 enable_cgcdefault="yes"

cvs diff -r1.1 -r1.2 pkgsrc/lang/racket/patches/patch-src_cs_c_configure (expand / switch to unified diff)

--- pkgsrc/lang/racket/patches/patch-src_cs_c_configure 2023/09/01 19:48:28 1.1
+++ pkgsrc/lang/racket/patches/patch-src_cs_c_configure 2023/09/20 22:37:40 1.2
@@ -1,27 +1,27 @@ @@ -1,27 +1,27 @@
1$NetBSD: patch-src_cs_c_configure,v 1.1 2023/09/01 19:48:28 riastradh Exp $ 1$NetBSD: patch-src_cs_c_configure,v 1.2 2023/09/20 22:37:40 vins Exp $
2 2
3Don't link against libiconv_std.a. 3Don't link against libiconv_std.a.
4https://github.com/racket/racket/issues/4736 4https://github.com/racket/racket/issues/4736
5 5
6Link against ncurses with -lncurses, not by hard-coding the static 6Directly link against ncurses and terminfo libraries, not by
7library path out of /usr/pkg. 7hard-coding the static library path out of /usr/pkg.
8https://github.com/racket/racket/issues/4734 8https://github.com/racket/racket/issues/4734
9 9
10Allow CONFIGURE_ENV to set PAXCTL so user need not have /usr/sbin in 10Allow CONFIGURE_ENV to set PAXCTL so user need not have /usr/sbin in
11PATH. 11PATH.
12 12
13--- src/cs/c/configure.orig 2023-07-18 00:36:40.000000000 +0000 13--- src/cs/c/configure.orig 2023-07-18 00:36:40.000000000 +0000
14+++ src/cs/c/configure 14+++ src/cs/c/configure
15@@ -4457,10 +4457,9 @@ case "$host_os" in 15@@ -4457,10 +4457,9 @@ case "$host_os" in
16 MACH_OS=nb 16 MACH_OS=nb
17 LIBS="${LIBS} -lm -lpthread" 17 LIBS="${LIBS} -lm -lpthread"
18 LINK_DYNAMIC="-rdynamic" 18 LINK_DYNAMIC="-rdynamic"
19- add_iconv_lib="/usr/lib/i18n/libiconv_std.a" 19- add_iconv_lib="/usr/lib/i18n/libiconv_std.a"
20 skip_curses_check=yes 20 skip_curses_check=yes
21- add_curses_lib="/usr/pkg/lib/libncurses.a" 21- add_curses_lib="/usr/pkg/lib/libncurses.a"
22- default_post_linker="paxctl +m" 22- default_post_linker="paxctl +m"
23+ add_curses_lib="-lncurses" 23+ add_curses_lib="-lcurses -lterminfo"
24+ default_post_linker="${PAXCTL:-paxctl} +m" 24+ default_post_linker="${PAXCTL:-paxctl} +m"
25 ;; 25 ;;
26 irix*) 26 irix*)
27 ;; 27 ;;

cvs diff -r1.1 -r1.2 pkgsrc/lang/racket/patches/patch-src_cs_c_configure.ac (expand / switch to unified diff)

--- pkgsrc/lang/racket/patches/patch-src_cs_c_configure.ac 2023/09/01 19:48:28 1.1
+++ pkgsrc/lang/racket/patches/patch-src_cs_c_configure.ac 2023/09/20 22:37:40 1.2
@@ -1,27 +1,27 @@ @@ -1,27 +1,27 @@
1$NetBSD: patch-src_cs_c_configure.ac,v 1.1 2023/09/01 19:48:28 riastradh Exp $ 1$NetBSD: patch-src_cs_c_configure.ac,v 1.2 2023/09/20 22:37:40 vins Exp $
2 2
3Don't link against libiconv_std.a. 3Don't link against libiconv_std.a.
4https://github.com/racket/racket/issues/4736 4https://github.com/racket/racket/issues/4736
5 5
6Link against ncurses with -lncurses, not by hard-coding the static 6Directly link against ncurses and terminfo libraries, not by
7library path out of /usr/pkg. 7hard-coding the static library path out of /usr/pkg.
8https://github.com/racket/racket/issues/4734 8https://github.com/racket/racket/issues/4734
9 9
10Allow CONFIGURE_ENV to set PAXCTL so user need not have /usr/sbin in 10Allow CONFIGURE_ENV to set PAXCTL so user need not have /usr/sbin in
11PATH. 11PATH.
12 12
13--- src/cs/c/configure.ac.orig 2023-07-18 00:36:40.000000000 +0000 13--- src/cs/c/configure.ac.orig 2023-07-18 00:36:40.000000000 +0000
14+++ src/cs/c/configure.ac 14+++ src/cs/c/configure.ac
15@@ -270,10 +270,9 @@ case "$host_os" in 15@@ -270,10 +270,9 @@ case "$host_os" in
16 MACH_OS=nb 16 MACH_OS=nb
17 LIBS="${LIBS} -lm -lpthread" 17 LIBS="${LIBS} -lm -lpthread"
18 LINK_DYNAMIC="-rdynamic" 18 LINK_DYNAMIC="-rdynamic"
19- add_iconv_lib="/usr/lib/i18n/libiconv_std.a" 19- add_iconv_lib="/usr/lib/i18n/libiconv_std.a"
20 skip_curses_check=yes 20 skip_curses_check=yes
21- add_curses_lib="/usr/pkg/lib/libncurses.a" 21- add_curses_lib="/usr/pkg/lib/libncurses.a"
22- default_post_linker="paxctl +m" 22- default_post_linker="paxctl +m"
23+ add_curses_lib="-lncurses" 23+ add_curses_lib="-lcurses -lterminfo"
24+ default_post_linker="${PAXCTL:-paxctl} +m" 24+ default_post_linker="${PAXCTL:-paxctl} +m"
25 ;; 25 ;;
26 irix*) 26 irix*)
27 ;; 27 ;;