79e25acf2c
Potential Incompatibilities Mnesia: Transactions with sticky locks could with async_asym transactions be committed in the wrong order, since asym transactions are spawned on the remote nodes. To fix this bug the communication protocol between mnesia nodes had to be updated, thus mnesia will no longer be able to connect to nodes earlier than mnesia-4.14 ,first realeased in OTP-19.0. Stdlib: Debugging of time-outs in gen_statem has been improved. Starting a time-out is now logged in sys:log and sys:trace. Running time-outs are visible in server crash logs, and with sys:get_status. Due to this system events {start_timer, Action, State} and {insert_timout, Event, State} have been added, which may surprise tools that rely on the format of these events. New features: The EventContent of a running time-out can be updated with {TimeoutType, update, NewEventContent}. Running time-outs can be cancelled with {TimeoutType, cancel} which is more readable than using Time = infinity.{rel, Name, Vsn, RelApps, Opts}. Highlights Compiler: erlc can now automatically use a compile server to avoid starting an Erlang system for each file to be compiled in a multi-file project. See the documentation for how to enable it. Standard libraries: SSL: Basic support for TLS 1.3 Client for experimental use. For more information see the Standards Compliance chapter of the User's Guide. crypto: The Message Authentication Codes (MAC) CMAC, HMAC and Poly1305 are unified into common functions in the New Crypto API. See the manual for CRYPTO. cipher_info/1 functions returns maps with information about the hash or cipher in the argument.
104 lines
2.9 KiB
Makefile
104 lines
2.9 KiB
Makefile
# $NetBSD: Makefile,v 1.97 2019/11/18 20:46:01 nia Exp $
|
|
|
|
DISTNAME= erlang-${DIST_VERSION_MAJOR}.${DIST_VERSION_MINOR}${!empty(DIST_VERSION_PATCH):?.:}${DIST_VERSION_PATCH}
|
|
PKGNAME= ${DISTNAME:S/OTP-/erlang-/}
|
|
CATEGORIES= lang
|
|
MASTER_SITES= ${MASTER_SITE_GITHUB:=erlang/}
|
|
GITHUB_PROJECT= otp
|
|
GITHUB_TAG= OTP-${PKGVERSION_NOREV}
|
|
|
|
MAINTAINER= pkgsrc-users@NetBSD.org
|
|
HOMEPAGE= https://www.erlang.org/
|
|
COMMENT= Concurrent functional programming language
|
|
LICENSE= apache-2.0
|
|
|
|
EXTRACT_USING= bsdtar
|
|
|
|
WRKSRC= ${WRKDIR}/otp-${GITHUB_TAG}
|
|
GNU_CONFIGURE= yes
|
|
USE_TOOLS+= autoconf awk gmake perl:run flex
|
|
|
|
.include "../../mk/bsd.prefs.mk"
|
|
|
|
.if !empty(MACHINE_ARCH:M*armv6*) || !empty(MACHINE_ARCH:M*armv7*)
|
|
MAKE_FLAGS+= ARCH=arm
|
|
.endif
|
|
|
|
USE_GNU_CONFIGURE_HOST= ${USE_CROSS_COMPILE}
|
|
OVERRIDE_DIRDEPTH= 4
|
|
|
|
CONFIGURE_ARGS+= --with-ssl=${BUILDLINK_PREFIX.openssl}
|
|
|
|
PTHREAD_OPTS+= require native
|
|
CONFIGURE_ARGS+= --enable-threads
|
|
|
|
MAKE_ENV+= DESTDIR=${DESTDIR}
|
|
|
|
do-configure-post-hook: replace-interpreter
|
|
|
|
REPLACE_INTERPRETER+= escript
|
|
REPLACE.escript.old= .*escript
|
|
REPLACE.escript.new= ${PREFIX}/bin/escript
|
|
REPLACE_FILES.escript= \
|
|
lib/diameter/bin/diameterc \
|
|
lib/erl_docgen/priv/bin/codeline_preprocessing.escript \
|
|
lib/erl_docgen/priv/bin/xml_from_edoc.escript \
|
|
lib/reltool/examples/display_args \
|
|
lib/reltool/examples/mnesia_core_dump_viewer \
|
|
lib/snmp/bin/snmpc \
|
|
lib/snmp/src/compile/snmpc.src
|
|
|
|
SUBST_CLASSES+= target
|
|
SUBST_STAGE.target= pre-configure
|
|
SUBST_FILES.target= make/target.mk
|
|
SUBST_SED.target= -e "s|=.*config.guess)|= ${MACHINE_GNU_PLATFORM}|"
|
|
SUBST_MESSAGE.target= Fixing target name.
|
|
|
|
TEST_TARGET= tests
|
|
TEST_MAKE_FLAGS= ERL_TOP=${WRKSRC}
|
|
REPLACE_PERL+= make/make_emakefile
|
|
|
|
SMF_NAME= epmd
|
|
|
|
CONFIGURE_ARGS.DragonFly+= --disable-sctp
|
|
|
|
###
|
|
### XXX There may be others here.
|
|
###
|
|
.if ${OPSYS} == "NetBSD" || ${OPSYS} == "OpenBSD" || ${OPSYS} == "Darwin"
|
|
CONFIGURE_ARGS+= --enable-kernel-poll
|
|
.endif
|
|
|
|
CHECK_RELRO_SKIP+= lib/erlang/lib/megaco-${VERSION.megaco}/priv/lib/megaco_flex_scanner_drv.so
|
|
CHECK_RELRO_SKIP+= lib/erlang/lib/megaco-${VERSION.megaco}/priv/lib/megaco_flex_scanner_drv_mt.so
|
|
|
|
.include "options.mk"
|
|
|
|
pre-configure:
|
|
cd ${WRKSRC} && ./otp_build autoconf
|
|
|
|
###
|
|
### Ensure this gets rebuilt.
|
|
###
|
|
pre-build:
|
|
${RUN} ${RM} -f ${WRKSRC}/lib/stdlib/ebin/dets_v9.beam
|
|
|
|
###
|
|
### Generate a list of module versions.
|
|
###
|
|
.PHONY: versions
|
|
versions: do-extract
|
|
@${ECHO} "# \$$NetBSD\$$" > ${.CURDIR}/versions.mk
|
|
@${ECHO} "# Do not edit, regenerate using 'make versions'" >> ${.CURDIR}/versions.mk
|
|
${AWK} -F: '/OTP-${PKGVERSION_NOREV} :/{print $$2}' ${WRKSRC}/otp_versions.table |\
|
|
${SED} -e 's/# //g' -e 's/-/ /g' -e 's,^ ,_VERSIONS= ,' >> ${.CURDIR}/versions.mk
|
|
|
|
post-install:
|
|
chmod -R go-w ${DESTDIR}${PREFIX}/lib/erlang/lib
|
|
|
|
.include "Makefile.versions"
|
|
|
|
.include "../../security/openssl/buildlink3.mk"
|
|
.include "../../mk/termcap.buildlink3.mk"
|
|
.include "../../mk/pthread.buildlink3.mk"
|
|
.include "../../mk/bsd.pkg.mk"
|