Attached is a port for erlang26 along with a few related changes to the erlang port.

1. Prepare erlang/Makefile.inc for 26
See also https://marc.info/?l=openbsd-ports&m=168433772724808&w=2

2. New port for erlang26
Tests are passing, but dependent ports at their current releases are
either cautiously compatible (lang/elixir) or straightforward
incompatible (net/rabbitmq). For devel/rebar3 there is a new release,
update proposal to follow.

Includes additional patch to make CHACHA20_POLY1305 and CHACHA20
available with LibreSSL. Submitted, but not yet included upstream.

Other patches are adapted from erlang25.

3. Change rc-script naming from epmd.rc to epmd25.rc for the erlang25
port for consistency reasons.
Index: Makefile.inc
===================================================================
RCS file: /cvs/ports/lang/erlang/Makefile.inc,v
retrieving revision 1.27
diff -u -p -r1.27 Makefile.inc
--- Makefile.inc	1 Sep 2022 20:03:37 -0000	1.27
+++ Makefile.inc	17 May 2023 15:34:17 -0000
@@ -11,8 +11,9 @@ MAJ_V =		${V:C/\.[0-9]+//g}
 
 MAINTAINER =	Volker Schlecht <openbsd-po...@schlecht.dev>
 
+DOCDISTNAME ?=  otp_doc_man_${V}
 DISTFILES ?=	${DISTNAME}.tar.gz \
-		otp_doc_man_${V}.tar.gz
+		${DOCDISTNAME}.tar.gz
 
 EXTRACT_ONLY ?=	${DISTNAME}.tar.gz
 
@@ -80,7 +81,6 @@ gen-versions: extract
 	@find ${WRKSRC} -name 'vsn.mk' -exec awk -F'=' '/_VSN=/ { print $$1"\t"$$2 " \\" }' {} \; | grep -v 'PRE_' | grep -v 'APP_' | sort
 	@grep VSN ${WRKSRC}/erts/vsn.mk |awk '/^VSN/ { print "ERTS_VSN\t" $$3 }' | sort
 
-# Erlang >= 25 uses configure.ac instead of configure.in
 pre-configure:
 	${SUBST_CMD} ${WRKSRC}/make/install_bin \
 		     ${WRKSRC}/Makefile.in \
@@ -88,9 +88,12 @@ pre-configure:
 		     ${WRKSRC}/erts/etc/common/dialyzer.c \
 		     ${WRKSRC}/erts/etc/common/erlc.c \
 		     ${WRKSRC}/erts/etc/common/escript.c \
-		     ${WRKSRC}/erts/etc/common/typer.c \
-		     ${WRKSRC}/lib/dialyzer/src/dialyzer_plt.erl 
-	if [ -f ${WRKSRC}/lib/wx/configure.in ]; then ${SUBST_CMD} ${WRKSRC}/lib/wx/configure.in ; fi;
+		     ${WRKSRC}/erts/etc/common/typer.c
+.if ${MAJ_V} == 25
+	${SUBST_CMD} ${WRKSRC}/lib/dialyzer/src/dialyzer_plt.erl
+.else
+	${SUBST_CMD} ${WRKSRC}/lib/dialyzer/src/dialyzer_cplt.erl
+.endif
 	if [ -f ${WRKSRC}/lib/wx/configure.ac ]; then ${SUBST_CMD} ${WRKSRC}/lib/wx/configure.ac ; fi;
 
 
@@ -112,7 +115,7 @@ post-test:
 
 post-install:
 	ln -sf ../lib/erlang${MAJ_V}/lib/${ERL_EI}/bin/erl_call ${PREFIX}/bin/erl_call${MAJ_V}
-	tar zxf ${FULLDISTDIR}/otp_doc_man_${V}.tar.gz -C ${DOC_DIR}
+	tar zxf ${FULLDISTDIR}/${DOCDISTNAME}.tar.gz -C ${DOC_DIR}
 	rm -r ${DOC_DIR}/man/man7/*MIB.7
 	rm -r ${DOC_DIR}/man/man7/*TM.7
 	if [ ! -x ${PREFIX}/lib/erlang${MAJ_V}/${ERL_ERTS}/bin/beam.smp ]; then \
Index: Makefile
===================================================================
RCS file: /cvs/ports/lang/erlang/25/Makefile,v
retrieving revision 1.16
diff -u -p -r1.16 Makefile
--- Makefile	17 May 2023 13:39:46 -0000	1.16
+++ Makefile	19 May 2023 06:35:03 -0000
@@ -10,6 +10,7 @@ PKGNAME=	erlang-$V
 PKGNAME-main=	erlang-$V
 PKGNAME-wx=	erlang-wx-$V
 EPOCH=		0
+REVISION=	0
 
 VERSION_SPEC=	>=25v0,<26v0
 PKGSPEC-main=	erlang-${VERSION_SPEC}
Index: pkg/PLIST-main
===================================================================
RCS file: /cvs/ports/lang/erlang/25/pkg/PLIST-main,v
retrieving revision 1.9
diff -u -p -r1.9 PLIST-main
--- pkg/PLIST-main	17 May 2023 13:39:46 -0000	1.9
+++ pkg/PLIST-main	19 May 2023 06:35:03 -0000
@@ -6,7 +6,7 @@
 @pkgpath lang/erlang/21,-main
 @newgroup _epmd:888
 @newuser _epmd:888:_epmd::Erlang EPMD Account:/var/empty:/sbin/nologin
-@rcscript ${RCDIR}/epmd
+@rcscript ${RCDIR}/epmd25
 bin/ct_run25
 bin/dialyzer25
 bin/epmd25
Index: pkg/epmd.rc
===================================================================
RCS file: pkg/epmd.rc
diff -N pkg/epmd.rc
--- pkg/epmd.rc	31 Jan 2023 01:59:09 -0000	1.2
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,11 +0,0 @@
-#!/bin/ksh
-
-daemon="${TRUEPREFIX}/bin/epmd${MAJ_V} -daemon"
-daemon_flags="-address 127.0.0.1"
-daemon_user=_epmd
-
-. /etc/rc.d/rc.subr
-
-rc_reload=NO
-
-rc_cmd $1
Index: pkg/epmd25.rc
===================================================================
RCS file: pkg/epmd25.rc
diff -N pkg/epmd25.rc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ pkg/epmd25.rc	19 May 2023 06:35:03 -0000
@@ -0,0 +1,11 @@
+#!/bin/ksh
+
+daemon="${TRUEPREFIX}/bin/epmd${MAJ_V} -daemon"
+daemon_flags="-address 127.0.0.1"
+daemon_user=_epmd
+
+. /etc/rc.d/rc.subr
+
+rc_reload=NO
+
+rc_cmd $1

Attachment: erlang26.tar.gz
Description: application/gzip

Reply via email to