Update to 21.0.9. From the release announcements:

--- POTENTIAL INCOMPATIBILITIES -------------------------------------

   OTP-15225    Application(s): erts

                Fixed a bug causing some Erlang references to be
                inconsistently ordered. This could for example cause
                failure to look up certain elements with references as
                keys in search data structures. This bug was introduced
                in R13B02.

                Thanks to Simon Cornish for finding the bug and
                supplying a fix.


  --- compiler-7.2.4 --------------------------------------------------

  --- Fixed Bugs and Malfunctions ---

   OTP-15292    Application(s): compiler

                Fix a regression in OTP-15204 that removed .beam file
                metadata that some external build tools relied on.

   OTP-15204    Application(s): compiler
                Related Id(s): ERL-679

                Fixed an issue where files compiled with the
                +deterministic option differed if they were compiled in
                a different directory but were otherwise identical.

  OTP-15156    Application(s): compiler
               Related Id(s): ERL-655

               In rare cases involving matching of binary literal
               strings, the compiler could optimize away code that
               should be executed.


  OTP-15157    Application(s): compiler

               There could be an internal consistency check failure
               when compiling code that called map_get(Key, Map) and
               then updated the same map.


  OTP-15166    Application(s): compiler
               Related Id(s): ERL-660

               In rare circumstances, the compiler could crash in
               beam_jump when compiling a floating point operation.

  OTP-15150    Application(s): compiler
               Related Id(s): ERL-650

               The compiler could could crash when compiling a
               complicated function that used the binary syntax.

  Full runtime dependencies of compiler-7.2.4: crypto-3.6, erts-9.0,
  hipe-3.12, kernel-4.0, stdlib-2.5


  --- erts-10.0.8 -----------------------------------------------------

  --- Fixed Bugs and Malfunctions ---

   OTP-15289    Application(s): erts
                Related Id(s): ERIERL-235, ERL-576, OTP-14943

                As of ERTS version 10.0 (OTP 21.0) the erl_child_setup
                program, which creates port programs, ignores TERM
                signals. This setting was unintentionally inherited by
                port programs. Handling of TERM signals in port
                programs has now been restored to the default behavior.
                That is, terminate the process.

   OTP-15296    Application(s): erts
                Related Id(s): ERIERL-226, OTP-15279

                The fix made for OTP-15279 in erts-10.07 (OTP-21.0.8)
                was not complete. It could cause a new connection
                attempt to be incorrectly aborted in certain cases.
                This fix will amend that flaw.

   OTP-15275    Application(s): erts
                Related Id(s): PR-1943

                A process could get stuck in an infinite rescheduling
                loop between normal and dirty schedulers. This bug was
                introduced in ERTS version 10.0.

                Thanks to Maxim Fedorov for finding and fixing this
                issue.

   OTP-15279    Application(s): erts
                Related Id(s): ERIERL-226

                Garbage collection of a distribution entry could cause
                an emulator crash if net_kernel had not brought
                previous connection attempts on it down properly.

   OTP-15237    Application(s): erts

                A race between termination of a process and resume of
                the same process via erlang:resume_process/1 could
                cause the VM to crash. This bug was introduced in erts
                version 10.0 (OTP 21.0).

   OTP-15269    Application(s): erts
                Related Id(s): ERL-713

                When tracing on running, in trace events could be lost
                when a process was rescheduled between a dirty and a
                normal scheduler.

   OTP-15223    Application(s): erts

                Fixed a bug which caused an emulator crash when
                enif_send() was called by a NIF that executed on a
                dirty scheduler. The bug was either triggered when the
                NIF called enif_send() without a message environment,
                or when the process executing the NIF was send traced.

   OTP-15225    Application(s): erts

                *** POTENTIAL INCOMPATIBILITY ***

                Fixed a bug causing some Erlang references to be
                inconsistently ordered. This could for example cause
                failure to look up certain elements with references as
                keys in search data structures. This bug was introduced
                in R13B02.

                Thanks to Simon Cornish for finding the bug and
                supplying a fix.

  OTP-15169    Application(s): erts

               Fixed a bug that prevented the noshell option from
               working correctly on Mac OS X and BSD.

  OTP-15184    Application(s): erts

               Fixed a crash when matching directly against a literal
               map using a single key that had been saved on the
               stack.

  OTP-15196    Application(s): erts

               Fix node crash when passing a bad time option to
               file:read_file_info/2.

   OTP-15154    Application(s): erts

                Fixed a scheduler bug that caused normal schedulers to
                run dirty code.

   OTP-15183    Application(s): erts
                Related Id(s): ERL-670

                Fixed a bug in erlang:trace_info/2 which caused the
                emulator to crash when a bad argument was passed. The
                bug was introduced in ERTS version 10.0.

  OTP-15067    Application(s): erts
               Related Id(s): ERL-573

               Fixed a rare bug that could cause processes to be
               scheduled after they had been freed.

  OTP-15158    Application(s): erts
               Related Id(s): ERL-654

               Fixed a race condition in the inet driver that could
               cause receive to hang when the emulator was compiled
               with gcc 8.

  OTP-15147    Application(s): erts
               Related Id(s): ERL-644

               The keys used in os:getenv and os:putenv are
               case-insensitive again on Windows.

  Full runtime dependencies of erts-10.0.8: kernel-6.0, sasl-3.0.1,
  stdlib-3.5


  --- kernel-6.0.1 ----------------------------------------------------

  --- Fixed Bugs and Malfunctions ---

   OTP-15280    Application(s): kernel
                Related Id(s): ERIERL-226, OTP-15279

                Fixed bug in net_kernel that could cause an emulator
                crash if certain connection attempts failed. Bug exists
                since kernel-6.0 (OTP-21.0).

  Full runtime dependencies of kernel-6.0.1: erts-10.0, sasl-3.0,
  stdlib-3.5


 --- crypto-4.3.2 ----------------------------------------------------

 --- Fixed Bugs and Malfunctions ---

  OTP-15233    Application(s): crypto

               Update the crypto engine functions to handle multiple
               loads of an engine.

               engine_load/3/4 is updated so it doesn't add the engine
               ID to OpenSSLs internal list of engines which makes it
               possible to run the engine_load more than once if it
               doesn't contain global data.

               Added ensure_engine_loaded/2/3 which guarantees that
               the engine just is loaded once and the following calls
               just returns a reference to it. This is done by add the
               ID to the internal OpenSSL list and check if it is
               already registered when the function is called.

               Added ensure_engine_unloaded/1/2 to unload engines
               loaded with ensure_engine_loaded.

               Then some more utility functions are added.

               engine_add/1, adds the engine to OpenSSL internal list

               engine_remove/1, remove the engine from OpenSSL
               internal list

               engine_get_id/1, fetch the engines id

               engine_get_name/1, fetch the engine name

   OTP-15194    Application(s): crypto
                Related Id(s): ERL-673

                Fixed a node crash in crypto:compute_key(ecdh, ...)
                when passing a wrongly typed Others argument.

 Full runtime dependencies of crypto-4.3.2: erts-9.0, kernel-5.3,
 stdlib-3.4


 --- public_key-1.6.1 ------------------------------------------------

  OTP-15151    Application(s): public_key
               Related Id(s): OTP-15113

               Some of the keylengths in the newly generated moduli
               file in public_key are not universally supported. This
               could cause the SSH key exchange
               diffie-hellman-group-exchange-sha* to fail.

               Those keylengths are now removed.

 Full runtime dependencies of public_key-1.6.1: asn1-3.0, crypto-3.8,
 erts-6.0, kernel-3.0, stdlib-3.5


 --- stdlib-3.5.1 ----------------------------------------------------

  OTP-15159    Application(s): stdlib

               Fix a bug that could cause a crash when formatting a
               list of non-characters using the control sequences p or
               P and limiting the output with the option chars_limit.

 Full runtime dependencies of stdlib-3.5.1: compiler-5.0, crypto-3.3,
 erts-10.0, kernel-6.0, sasl-3.0
This commit is contained in:
schmonz 2018-09-12 20:01:12 +00:00
parent 97eec540ca
commit 474f2a9226
6 changed files with 35 additions and 31 deletions

View file

@ -1,10 +1,9 @@
# $NetBSD: Makefile,v 1.87 2018/08/22 09:45:19 wiz Exp $
# $NetBSD: Makefile,v 1.88 2018/09/12 20:01:12 schmonz Exp $
DISTNAME= otp_src_${DIST_VERSION_MAJOR}.${DIST_VERSION_MINOR}${!empty(DIST_VERSION_PATCH):?.:}${DIST_VERSION_PATCH}
PKGNAME= ${DISTNAME:S/otp_src_/erlang-/}
PKGREVISION= 1
DISTNAME= OTP-${DIST_VERSION_MAJOR}.${DIST_VERSION_MINOR}${!empty(DIST_VERSION_PATCH):?.:}${DIST_VERSION_PATCH}
PKGNAME= ${DISTNAME:S/OTP-/erlang-/}
CATEGORIES= lang
MASTER_SITES= http://www.erlang.org/download/
MASTER_SITES= https://github.com/erlang/otp/archive/
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= http://www.erlang.org/
@ -13,10 +12,12 @@ LICENSE= apache-2.0
DIST_SUBDIR= erlang
WRKSRC= ${WRKDIR}/otp-${DISTNAME}
GNU_CONFIGURE= yes
USE_GNU_CONFIGURE_HOST= ${USE_CROSS_COMPILE}
OVERRIDE_DIRDEPTH= 4
USE_TOOLS+= awk gmake perl:run flex
USE_TOOLS+= autoconf awk gmake perl:run flex
CONFIGURE_ARGS+= --with-ssl=${BUILDLINK_PREFIX.openssl}
@ -43,6 +44,8 @@ CONFIGURE_ARGS+= --disable-native-ethr-impls\
MAKE_ENV+= DESTDIR=${DESTDIR}
do-configure-post-hook: replace-interpreter
REPLACE_INTERPRETER+= escript
REPLACE.escript.old= .*escript
REPLACE.escript.new= ${PREFIX}/bin/escript
@ -81,6 +84,9 @@ CHECK_RELRO_SKIP+= lib/erlang/lib/megaco-${VERSION.megaco}/priv/lib/megaco_flex_
.include "options.mk"
pre-configure:
cd ${WRKSRC} && ./otp_build autoconf
###
### Ensure this gets rebuilt.
###

View file

@ -1,9 +1,9 @@
# $NetBSD: Makefile.versions,v 1.32 2018/07/03 11:01:21 fhajny Exp $
# $NetBSD: Makefile.versions,v 1.33 2018/09/12 20:01:12 schmonz Exp $
DIST_VERSION_MAJOR= 21
DIST_VERSION_MINOR= 0
# Only set when sources for patch level releases are published on erlang.org
DIST_VERSION_PATCH= #
DIST_VERSION_PATCH= 9
.include "versions.mk"

View file

@ -1,12 +1,12 @@
$NetBSD: distinfo,v 1.60 2018/08/14 18:40:42 nia Exp $
$NetBSD: distinfo,v 1.61 2018/09/12 20:01:12 schmonz Exp $
SHA1 (erlang/otp_src_21.0.tar.gz) = b9ba0909aef16f038b8c75e4d7fd0993ae4e3beb
RMD160 (erlang/otp_src_21.0.tar.gz) = 6a13f1f49fddeb4bb0d5567ffe31ab232d80855b
SHA512 (erlang/otp_src_21.0.tar.gz) = 8bbc02ef74baf166dae6cac414ddbd1f5366d4aba0dc07adcceef6422e62fc83b585ee01d6a608282f9a7b63703a8bfb4e358bb5b924eca68209014997c0f6f8
Size (erlang/otp_src_21.0.tar.gz) = 84146631 bytes
SHA1 (erlang/OTP-21.0.9.tar.gz) = 84a58190149566e51ca552921b09f9ac77771599
RMD160 (erlang/OTP-21.0.9.tar.gz) = 297898412640a17014f2bf019a4af2b95047c0cf
SHA512 (erlang/OTP-21.0.9.tar.gz) = 01bc5ce8d5c76823af1a17d389f326509c4ade5add0b0e66830e2c6aec2c7d93906cbbf9fb6b454178bddfa1c96355d632e4c557ab6da2bbdb8c6b0e05d87ee8
Size (erlang/OTP-21.0.9.tar.gz) = 52842736 bytes
SHA1 (patch-ab) = 5f1602f3a49c05fd4c45884a7cd6be8d3f287ac3
SHA1 (patch-ay) = f5f1accdb11e404ba4779b056228431e3080e4cd
SHA1 (patch-erts_configure) = dba8d72974e8c493cf2bb90e6b149a84dd9073da
SHA1 (patch-erts_configure.in) = 2154871858bab389509e908b38ae479a55709b97
SHA1 (patch-erts_emulator_drivers_common_inet__drv.c) = 854ae8d60f3f114da11306db425519a0063cacda
SHA1 (patch-erts_emulator_sys_unix_sys__uds.c) = a165f977221acc8aba2ef30ca23d149a10af060a
SHA1 (patch-erts_etc_unix_run__erl.c) = 9e2377ceba5021eaa2f0c729600df499954d134e

View file

@ -1,15 +0,0 @@
$NetBSD: patch-erts_configure,v 1.3 2016/09/05 16:03:38 jperkin Exp $
Use GCC -shared.
--- erts/configure.orig 2016-06-21 18:55:58.000000000 +0000
+++ erts/configure
@@ -44746,7 +44746,7 @@ case $host_os in
DED_LD_FLAG_RUNTIME_LIBRARY_PATH=
;;
solaris2*|sysv4*)
- DED_LDFLAGS="-G"
+ DED_LDFLAGS="-shared"
if test X${enable_m64_build} = Xyes; then
DED_LDFLAGS="-64 $DED_LDFLAGS"
fi

View file

@ -0,0 +1,13 @@
$NetBSD: patch-erts_configure.in,v 1.1 2018/09/12 20:01:12 schmonz Exp $
--- erts/configure.in.orig 2018-09-11 14:57:05.000000000 +0000
+++ erts/configure.in
@@ -3031,7 +3031,7 @@ case $host_os in
DED_LD_FLAG_RUNTIME_LIBRARY_PATH=
;;
solaris2*|sysv4*)
- DED_LDFLAGS="-G"
+ DED_LDFLAGS="-shared"
if test X${enable_m64_build} = Xyes; then
DED_LDFLAGS="-64 $DED_LDFLAGS"
fi

View file

@ -1,4 +1,4 @@
# $NetBSD: versions.mk,v 1.1 2018/07/03 11:01:21 fhajny Exp $
# $NetBSD: versions.mk,v 1.2 2018/09/12 20:01:12 schmonz Exp $
# Do not edit, regenerate using 'make versions'
_VERSIONS= \
asn1 5.0.6 common_test 1.16 compiler 7.2 crypto 4.3 debugger 4.2.5 dialyzer 3.3 diameter 2.1.5 edoc 0.9.3 eldap 1.2.4 erl_docgen 0.8 erl_interface 3.10.3 erts 10.0 et 1.6.2 eunit 2.3.6 ftp 1.0 hipe 3.18 inets 7.0 jinterface 1.9 kernel 6.0 mnesia 4.15.4 observer 2.8 os_mon 2.4.5 otp_mibs 1.2 parsetools 2.1.7 public_key 1.6 reltool 0.7.6 runtime_tools 1.13 sasl 3.2 ssh 4.7 ssl 9.0 stdlib 3.5 syntax_tools 2.1.5 tftp 1.0 tools 3.0 wx 1.8.4 xmerl 1.3.17 megaco 3.18.3 odbc 2.12.1 snmp 5.2.11
compiler 7.2.4 erts 10.0.8 asn1 5.0.6 common_test 1.16 crypto 4.3.2 debugger 4.2.5 dialyzer 3.3 diameter 2.1.5 edoc 0.9.3 eldap 1.2.4 erl_docgen 0.8 erl_interface 3.10.3 et 1.6.2 eunit 2.3.6 ftp 1.0 hipe 3.18 inets 7.0.1 jinterface 1.9 kernel 6.0.1 megaco 3.18.3 mnesia 4.15.4 observer 2.8 odbc 2.12.1 os_mon 2.4.5 otp_mibs 1.2 parsetools 2.1.7 public_key 1.6.1 reltool 0.7.6 runtime_tools 1.13 sasl 3.2 snmp 5.2.11 ssh 4.7 ssl 9.0.1 stdlib 3.5.1 syntax_tools 2.1.5 tftp 1.0 tools 3.0 wx 1.8.4 xmerl 1.3.17