From: Bernd Kuhls Date: Sat, 31 Mar 2018 16:20:23 +0000 (+0200) Subject: package/erlang: bump version to 20.3 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=25cc88079459beba0827e95733f54ecad0bf995c;p=buildroot.git package/erlang: bump version to 20.3 Removed patch 0001, not needed anymore after upstream commit https://github.com/erlang/otp/commit/aa9054e0ea48a127f2aeafcdce1df4d1aec09574 Renumbered remaining patches, added license hash. Signed-off-by: Bernd Kuhls Signed-off-by: Peter Korsgaard --- diff --git a/package/erlang/0001-build-fix.patch b/package/erlang/0001-build-fix.patch deleted file mode 100644 index ff821c9fc0..0000000000 --- a/package/erlang/0001-build-fix.patch +++ /dev/null @@ -1,13 +0,0 @@ -apply-patches.sh deletes this file from the source directory. - ---- erlang-R15B01.old/lib/tools/emacs/Makefile 2012-04-04 -+++ erlang-R15B01/lib/tools/emacs/Makefile 2012-04-04 15:55:16.978957307 +0100 -@@ -51,7 +51,7 @@ - - ELC_FILES = $(EMACS_FILES:%=%.elc) - --TEST_FILES = test.erl.indented test.erl.orig -+TEST_FILES = test.erl.indented - - # ---------------------------------------------------- - # Targets diff --git a/package/erlang/0001-erts-ethread-instruct-libatomic_ops-we-do-require-CA.patch b/package/erlang/0001-erts-ethread-instruct-libatomic_ops-we-do-require-CA.patch new file mode 100644 index 0000000000..8e401430fe --- /dev/null +++ b/package/erlang/0001-erts-ethread-instruct-libatomic_ops-we-do-require-CA.patch @@ -0,0 +1,70 @@ +From 439fa2eae78a8900bda120072335be19d626498c Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sun, 28 Dec 2014 23:39:40 +0100 +Subject: [PATCH] erts/ethread: instruct libatomic_ops we do require CAS + +We do require compare-and-swap (CAS), so we must instruct libatomic_ops +to provide it, even if the architecture does not have instructions for +it. + +For example, on ARM, LDREX is required for fast CAS. But LDREX is only +available on ARMv6, so by default libatomic_ops will not have CAS for +anything below, like ARMv5. But ARMv5 is always UP, so using an +emulated CAS (that is signal-asyn-safe) is still possible (albeit much +slower). + +Tell libatomic_ops to provide CAS, even if the hardware is not capable +of it, by using emulated CAS, as per libatomic_ops dosc: + https://github.com/ivmai/libatomic_ops/blob/master/doc/README.txt#L28 + + If this is included after defining AO_REQUIRE_CAS, then the package + will make an attempt to emulate compare-and-swap in a way that (at + least on Linux) should still be async-signal-safe. + +Thanks go to Thomas for all this insight! :-) +Thanks go to Frank for reporting the issue! :-) + +Signed-off-by: "Yann E. MORIN" +Cc: Thomas Petazzoni +Cc: Frank Hunleth +--- + erts/include/internal/libatomic_ops/ethread.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/erts/include/internal/libatomic_ops/ethread.h b/erts/include/internal/libatomic_ops/ethread.h +index d65ee19..71d3598 100644 +--- a/erts/include/internal/libatomic_ops/ethread.h ++++ b/erts/include/internal/libatomic_ops/ethread.h +@@ -35,6 +35,7 @@ + + #define ETHR_NATIVE_IMPL__ "libatomic_ops" + ++#define AO_REQUIRE_CAS + #include "atomic_ops.h" + #include "ethr_membar.h" + #include "ethr_atomic.h" +diff --git a/erts/aclocal.m4 b/erts/aclocal.m4 +index d65ee19..71d3598 100644 +--- a/erts/aclocal.m4 ++++ b/erts/aclocal.m4 +@@ -1414,7 +1414,8 @@ + fi;; + esac + ethr_have_libatomic_ops=no +- AC_TRY_LINK([#include "atomic_ops.h"], ++ AC_TRY_LINK([#define AO_REQUIRE_CAS ++ #include "atomic_ops.h"], + [ + volatile AO_t x; + AO_t y; +@@ -1455,6 +1455,7 @@ + AC_CHECK_SIZEOF(AO_t, , + [ + #include ++ #define AO_REQUIRE_CAS + #include "atomic_ops.h" + ]) + AC_DEFINE_UNQUOTED(ETHR_SIZEOF_AO_T, $ac_cv_sizeof_AO_t, [Define to the size of AO_t if libatomic_ops is used]) +-- +1.9.1 + diff --git a/package/erlang/0002-erts-emulator-reorder-inclued-headers-paths.patch b/package/erlang/0002-erts-emulator-reorder-inclued-headers-paths.patch new file mode 100644 index 0000000000..c17eefc2a1 --- /dev/null +++ b/package/erlang/0002-erts-emulator-reorder-inclued-headers-paths.patch @@ -0,0 +1,43 @@ +From 85a3e5b4f65e5284e59dcdd90e92ea7d50ef6907 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sun, 8 Feb 2015 17:23:13 +0100 +Subject: [PATCH] erts/emulator: reorder inclued headers paths + +If the Perl Compatible Regular Expressions is installed on the +host and the path to the headers is added to the CFLAGS, the +pcre.h from the host is used instead of the one provided by +erlang. + +Erlang use an old version of this file which is incompatible +with the upstream one. + +Move INCLUDES before CFLAGS to use pcre.h from erlang. + +http://autobuild.buildroot.net/results/cbd/cbd8b54eef535f19d7d400fd269af1b3571d6143/build-end.log + +Signed-off-by: Romain Naour +--- + erts/emulator/Makefile.in | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/erts/emulator/Makefile.in b/erts/emulator/Makefile.in +index 7145824..d079487 100644 +--- a/erts/emulator/Makefile.in ++++ b/erts/emulator/Makefile.in +@@ -678,11 +678,11 @@ else + # Usually the same as the default rule, but certain platforms (e.g. win32) mix + # different compilers + $(OBJDIR)/beam_emu.o: beam/beam_emu.c +- $(V_EMU_CC) $(subst -O2, $(GEN_OPT_FLGS), $(CFLAGS)) $(INCLUDES) -c $< -o $@ ++ $(V_EMU_CC) $(INCLUDES) $(subst -O2, $(GEN_OPT_FLGS), $(CFLAGS)) -c $< -o $@ + endif + + $(OBJDIR)/%.o: beam/%.c +- $(V_CC) $(subst -O2, $(GEN_OPT_FLGS), $(CFLAGS)) $(INCLUDES) -c $< -o $@ ++ $(V_CC) $(INCLUDES) $(subst -O2, $(GEN_OPT_FLGS), $(CFLAGS)) -c $< -o $@ + + $(OBJDIR)/%.o: $(TARGET)/%.c + $(V_CC) $(CFLAGS) $(INCLUDES) -Idrivers/common -c $< -o $@ +-- +1.9.3 + diff --git a/package/erlang/0002-erts-ethread-instruct-libatomic_ops-we-do-require-CA.patch b/package/erlang/0002-erts-ethread-instruct-libatomic_ops-we-do-require-CA.patch deleted file mode 100644 index 8e401430fe..0000000000 --- a/package/erlang/0002-erts-ethread-instruct-libatomic_ops-we-do-require-CA.patch +++ /dev/null @@ -1,70 +0,0 @@ -From 439fa2eae78a8900bda120072335be19d626498c Mon Sep 17 00:00:00 2001 -From: "Yann E. MORIN" -Date: Sun, 28 Dec 2014 23:39:40 +0100 -Subject: [PATCH] erts/ethread: instruct libatomic_ops we do require CAS - -We do require compare-and-swap (CAS), so we must instruct libatomic_ops -to provide it, even if the architecture does not have instructions for -it. - -For example, on ARM, LDREX is required for fast CAS. But LDREX is only -available on ARMv6, so by default libatomic_ops will not have CAS for -anything below, like ARMv5. But ARMv5 is always UP, so using an -emulated CAS (that is signal-asyn-safe) is still possible (albeit much -slower). - -Tell libatomic_ops to provide CAS, even if the hardware is not capable -of it, by using emulated CAS, as per libatomic_ops dosc: - https://github.com/ivmai/libatomic_ops/blob/master/doc/README.txt#L28 - - If this is included after defining AO_REQUIRE_CAS, then the package - will make an attempt to emulate compare-and-swap in a way that (at - least on Linux) should still be async-signal-safe. - -Thanks go to Thomas for all this insight! :-) -Thanks go to Frank for reporting the issue! :-) - -Signed-off-by: "Yann E. MORIN" -Cc: Thomas Petazzoni -Cc: Frank Hunleth ---- - erts/include/internal/libatomic_ops/ethread.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/erts/include/internal/libatomic_ops/ethread.h b/erts/include/internal/libatomic_ops/ethread.h -index d65ee19..71d3598 100644 ---- a/erts/include/internal/libatomic_ops/ethread.h -+++ b/erts/include/internal/libatomic_ops/ethread.h -@@ -35,6 +35,7 @@ - - #define ETHR_NATIVE_IMPL__ "libatomic_ops" - -+#define AO_REQUIRE_CAS - #include "atomic_ops.h" - #include "ethr_membar.h" - #include "ethr_atomic.h" -diff --git a/erts/aclocal.m4 b/erts/aclocal.m4 -index d65ee19..71d3598 100644 ---- a/erts/aclocal.m4 -+++ b/erts/aclocal.m4 -@@ -1414,7 +1414,8 @@ - fi;; - esac - ethr_have_libatomic_ops=no -- AC_TRY_LINK([#include "atomic_ops.h"], -+ AC_TRY_LINK([#define AO_REQUIRE_CAS -+ #include "atomic_ops.h"], - [ - volatile AO_t x; - AO_t y; -@@ -1455,6 +1455,7 @@ - AC_CHECK_SIZEOF(AO_t, , - [ - #include -+ #define AO_REQUIRE_CAS - #include "atomic_ops.h" - ]) - AC_DEFINE_UNQUOTED(ETHR_SIZEOF_AO_T, $ac_cv_sizeof_AO_t, [Define to the size of AO_t if libatomic_ops is used]) --- -1.9.1 - diff --git a/package/erlang/0003-Link-with-LDLIBS-instead-of-LIBS-for-DED.patch b/package/erlang/0003-Link-with-LDLIBS-instead-of-LIBS-for-DED.patch new file mode 100644 index 0000000000..ad0bb6b453 --- /dev/null +++ b/package/erlang/0003-Link-with-LDLIBS-instead-of-LIBS-for-DED.patch @@ -0,0 +1,42 @@ +From 011752ec7b31e3dde376270fc65c7ee70644f6e7 Mon Sep 17 00:00:00 2001 +From: Johan Oudinet +Date: Wed, 6 Dec 2017 15:01:17 +0100 +Subject: [PATCH] Link with LDLIBS instead of LIBS for DED + +Fix ERL-529 by avoiding to link with libz for no reason. + +Signed-off-by: Johan Oudinet +--- + lib/asn1/c_src/Makefile | 2 +- + lib/runtime_tools/c_src/Makefile.in | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/lib/asn1/c_src/Makefile b/lib/asn1/c_src/Makefile +index 1f714df357..f7c6b8b9bc 100644 +--- a/lib/asn1/c_src/Makefile ++++ b/lib/asn1/c_src/Makefile +@@ -126,7 +126,7 @@ $(NIF_LIB_FILE): $(NIF_STATIC_OBJ_FILES) + $(V_RANLIB) $@ + + $(NIF_SHARED_OBJ_FILE): $(NIF_OBJ_FILES) +- $(V_LD) $(LDFLAGS) -o $(NIF_SHARED_OBJ_FILE) $(NIF_OBJ_FILES) $(CLIB_FLAGS) $(LIBS) ++ $(V_LD) $(LDFLAGS) -o $(NIF_SHARED_OBJ_FILE) $(NIF_OBJ_FILES) $(CLIB_FLAGS) $(LDLIBS) + + # ---------------------------------------------------- + # Release Target +diff --git a/lib/runtime_tools/c_src/Makefile.in b/lib/runtime_tools/c_src/Makefile.in +index 4530a83aee..4e13e0d789 100644 +--- a/lib/runtime_tools/c_src/Makefile.in ++++ b/lib/runtime_tools/c_src/Makefile.in +@@ -95,7 +95,7 @@ $(OBJDIR)/%$(TYPEMARKER).o: %.c dyntrace_lttng.h + $(V_CC) -c -o $@ $(ALL_CFLAGS) $< + + $(LIBDIR)/%$(TYPEMARKER).@DED_EXT@: $(OBJDIR)/%$(TYPEMARKER).o +- $(V_LD) $(LDFLAGS) -o $@ $^ $(LIBS) ++ $(V_LD) $(LDFLAGS) -o $@ $^ $(LDLIBS) + + clean: + rm -f $(TRACE_LIBS) +-- +2.14.1 + diff --git a/package/erlang/0003-erts-emulator-reorder-inclued-headers-paths.patch b/package/erlang/0003-erts-emulator-reorder-inclued-headers-paths.patch deleted file mode 100644 index c17eefc2a1..0000000000 --- a/package/erlang/0003-erts-emulator-reorder-inclued-headers-paths.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 85a3e5b4f65e5284e59dcdd90e92ea7d50ef6907 Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Sun, 8 Feb 2015 17:23:13 +0100 -Subject: [PATCH] erts/emulator: reorder inclued headers paths - -If the Perl Compatible Regular Expressions is installed on the -host and the path to the headers is added to the CFLAGS, the -pcre.h from the host is used instead of the one provided by -erlang. - -Erlang use an old version of this file which is incompatible -with the upstream one. - -Move INCLUDES before CFLAGS to use pcre.h from erlang. - -http://autobuild.buildroot.net/results/cbd/cbd8b54eef535f19d7d400fd269af1b3571d6143/build-end.log - -Signed-off-by: Romain Naour ---- - erts/emulator/Makefile.in | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/erts/emulator/Makefile.in b/erts/emulator/Makefile.in -index 7145824..d079487 100644 ---- a/erts/emulator/Makefile.in -+++ b/erts/emulator/Makefile.in -@@ -678,11 +678,11 @@ else - # Usually the same as the default rule, but certain platforms (e.g. win32) mix - # different compilers - $(OBJDIR)/beam_emu.o: beam/beam_emu.c -- $(V_EMU_CC) $(subst -O2, $(GEN_OPT_FLGS), $(CFLAGS)) $(INCLUDES) -c $< -o $@ -+ $(V_EMU_CC) $(INCLUDES) $(subst -O2, $(GEN_OPT_FLGS), $(CFLAGS)) -c $< -o $@ - endif - - $(OBJDIR)/%.o: beam/%.c -- $(V_CC) $(subst -O2, $(GEN_OPT_FLGS), $(CFLAGS)) $(INCLUDES) -c $< -o $@ -+ $(V_CC) $(INCLUDES) $(subst -O2, $(GEN_OPT_FLGS), $(CFLAGS)) -c $< -o $@ - - $(OBJDIR)/%.o: $(TARGET)/%.c - $(V_CC) $(CFLAGS) $(INCLUDES) -Idrivers/common -c $< -o $@ --- -1.9.3 - diff --git a/package/erlang/0004-Link-with-LDLIBS-instead-of-LIBS-for-DED.patch b/package/erlang/0004-Link-with-LDLIBS-instead-of-LIBS-for-DED.patch deleted file mode 100644 index ad0bb6b453..0000000000 --- a/package/erlang/0004-Link-with-LDLIBS-instead-of-LIBS-for-DED.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 011752ec7b31e3dde376270fc65c7ee70644f6e7 Mon Sep 17 00:00:00 2001 -From: Johan Oudinet -Date: Wed, 6 Dec 2017 15:01:17 +0100 -Subject: [PATCH] Link with LDLIBS instead of LIBS for DED - -Fix ERL-529 by avoiding to link with libz for no reason. - -Signed-off-by: Johan Oudinet ---- - lib/asn1/c_src/Makefile | 2 +- - lib/runtime_tools/c_src/Makefile.in | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/lib/asn1/c_src/Makefile b/lib/asn1/c_src/Makefile -index 1f714df357..f7c6b8b9bc 100644 ---- a/lib/asn1/c_src/Makefile -+++ b/lib/asn1/c_src/Makefile -@@ -126,7 +126,7 @@ $(NIF_LIB_FILE): $(NIF_STATIC_OBJ_FILES) - $(V_RANLIB) $@ - - $(NIF_SHARED_OBJ_FILE): $(NIF_OBJ_FILES) -- $(V_LD) $(LDFLAGS) -o $(NIF_SHARED_OBJ_FILE) $(NIF_OBJ_FILES) $(CLIB_FLAGS) $(LIBS) -+ $(V_LD) $(LDFLAGS) -o $(NIF_SHARED_OBJ_FILE) $(NIF_OBJ_FILES) $(CLIB_FLAGS) $(LDLIBS) - - # ---------------------------------------------------- - # Release Target -diff --git a/lib/runtime_tools/c_src/Makefile.in b/lib/runtime_tools/c_src/Makefile.in -index 4530a83aee..4e13e0d789 100644 ---- a/lib/runtime_tools/c_src/Makefile.in -+++ b/lib/runtime_tools/c_src/Makefile.in -@@ -95,7 +95,7 @@ $(OBJDIR)/%$(TYPEMARKER).o: %.c dyntrace_lttng.h - $(V_CC) -c -o $@ $(ALL_CFLAGS) $< - - $(LIBDIR)/%$(TYPEMARKER).@DED_EXT@: $(OBJDIR)/%$(TYPEMARKER).o -- $(V_LD) $(LDFLAGS) -o $@ $^ $(LIBS) -+ $(V_LD) $(LDFLAGS) -o $@ $^ $(LDLIBS) - - clean: - rm -f $(TRACE_LIBS) --- -2.14.1 - diff --git a/package/erlang/erlang.hash b/package/erlang/erlang.hash index cf820cec1b..f5ff74022c 100644 --- a/package/erlang/erlang.hash +++ b/package/erlang/erlang.hash @@ -1,3 +1,4 @@ # md5 from http://www.erlang.org/download/MD5, sha256 locally computed -md5 2faed2c3519353e6bc2501ed4d8e6ae7 otp_src_20.0.tar.gz -sha256 fe80e1e14a2772901be717694bb30ac4e9a07eee0cc7a28988724cbd21476811 otp_src_20.0.tar.gz +md5 a683c8c0aacfe0305c4bf47b3abfde6a otp_src_20.3.tar.gz +sha256 4e19e6c403d5255531c0b870f19511c8b8e3b080618e4f9efcb44d905935b2a1 otp_src_20.3.tar.gz +sha256 809fa1ed21450f59827d1e9aec720bbc4b687434fa22283c6cb5dd82a47ab9c0 LICENSE.txt diff --git a/package/erlang/erlang.mk b/package/erlang/erlang.mk index 5705b98d8e..b7fdb6b9ce 100644 --- a/package/erlang/erlang.mk +++ b/package/erlang/erlang.mk @@ -5,7 +5,7 @@ ################################################################################ # See note below when updating Erlang -ERLANG_VERSION = 20.0 +ERLANG_VERSION = 20.3 ERLANG_SITE = http://www.erlang.org/download ERLANG_SOURCE = otp_src_$(ERLANG_VERSION).tar.gz ERLANG_DEPENDENCIES = host-erlang @@ -19,7 +19,7 @@ ERLANG_AUTORECONF = YES # Whenever updating Erlang, this value should be updated as well, to the # value of EI_VSN in the file lib/erl_interface/vsn.mk -ERLANG_EI_VSN = 3.10 +ERLANG_EI_VSN = 3.10.1 # The configure checks for these functions fail incorrectly ERLANG_CONF_ENV = ac_cv_func_isnan=yes ac_cv_func_isinf=yes