pkgsrc/lang/erlang/options.mk
nia 79e25acf2c erlang: Update to 22.1.7
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.
2019-11-18 20:46:01 +00:00

77 lines
2 KiB
Makefile

# $NetBSD: options.mk,v 1.11 2019/11/18 20:46:01 nia Exp $
PKG_OPTIONS_VAR= PKG_OPTIONS.erlang
PKG_SUPPORTED_OPTIONS= java erlang-hipe
PKG_OPTIONS_OPTIONAL_GROUPS= odbc
PKG_OPTIONS_GROUP.odbc= iodbc unixodbc
PKG_SUGGESTED_OPTIONS= # empty
###
### Activate HiPE by default on some systems or if the user has
### defined the erlang-hipe option in mk.conf
###
.if (${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64") && \
(${OPSYS} == "FreeBSD" || ${OPSYS} == "Linux" || \
${OPSYS} == "NetBSD" || ${OPSYS} == "OpenBSD")
PKG_SUGGESTED_OPTIONS+= erlang-hipe
.endif
.if ${OPSYS} == "SunOS" || ${OPSYS} == "Darwin" || ${OPSYS} == "FreeBSD" || \
${OPSYS} == "Linux"
PKG_SUPPORTED_OPTIONS+= dtrace
.endif
.include "../../mk/bsd.options.mk"
PLIST_SRC= ${PLIST_SRC_DFLT}
PLIST_VARS+= odbc dtrace
.if !empty(PKG_OPTIONS:Mjava)
USE_JAVA= yes
USE_JAVA2= yes
.include "../../mk/java-vm.mk"
PLIST_SRC+= PLIST.java
.else
CONFIGURE_ARGS+= --without-javac
.endif
.if !empty(PKG_OPTIONS:Merlang-hipe)
CONFIGURE_ARGS+= --enable-hipe
PLIST_SRC+= PLIST.hipe
USE_TOOLS+= m4
.else
CONFIGURE_ARGS+= --disable-hipe
.endif
###
### Provide iodbc/unixodbc option support
###
.if !empty(PKG_OPTIONS:Miodbc)
. include "../../databases/iodbc/buildlink3.mk"
CONFIGURE_ARGS+= --with-odbc=${BUILDLINK_PREFIX.iodbc}
PLIST.odbc= yes
.elif !empty(PKG_OPTIONS:Munixodbc)
. include "../../databases/unixodbc/buildlink3.mk"
CONFIGURE_ARGS+= --with-odbc=${BUILDLINK_PREFIX.unixodbc}
PLIST.odbc= yes
.else
CONFIGURE_ARGS+= --without-odbc
.endif
###
### DTrace support
###
.if !empty(PKG_OPTIONS:Mdtrace)
. if ${OPSYS} == "SunOS" || ${OPSYS} == "Darwin" || ${OPSYS} == "FreeBSD"
CONFIGURE_ARGS+= --with-dynamic-trace=dtrace
. elif ${OPSYS} == "Linux"
CONFIGURE_ARGS+= --with-dynamic-trace=systemtap
. endif
PLIST.dtrace= yes
.else
CONFIGURE_ARGS+= --without-dynamic-trace
.endif
# Help generate optional PLIST parts:
PRINT_PLIST_AWK+= {if ($$0 ~ /dtrace_user/) {$$0 = "$${PLIST.dtrace}" $$0;}}
PRINT_PLIST_AWK+= {if ($$0 ~ /\/erlang\/lib\/odbc-${VERSION.odbc}\//) {$$0 = "$${PLIST.odbc}" $$0;}}