Move all to deprecated folder.

This commit is contained in:
2016-11-16 21:57:57 +01:00
parent 01738a7684
commit 05de7d6c04
9777 changed files with 0 additions and 0 deletions

View File

@@ -0,0 +1,13 @@
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

View File

@@ -0,0 +1,70 @@
From 439fa2eae78a8900bda120072335be19d626498c Mon Sep 17 00:00:00 2001
From: "Yann E. MORIN" <yann.morin.1998@free.fr>
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" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Frank Hunleth <fhunleth@troodon-software.com>
---
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 <stdio.h>
+ #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

View File

@@ -0,0 +1,43 @@
From 85a3e5b4f65e5284e59dcdd90e92ea7d50ef6907 Mon Sep 17 00:00:00 2001
From: Romain Naour <romain.naour@openwide.fr>
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 <romain.naour@openwide.fr>
---
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

View File

@@ -0,0 +1,79 @@
Status: upstream
https://github.com/erlang/otp/pull/658
Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
From 73392fcb6f8fddba57de6fb7ae6eeafa0e444686 Mon Sep 17 00:00:00 2001
From: Johan Oudinet <johan.oudinet@gmail.com>
Date: Tue, 24 Mar 2015 15:54:31 +0100
Subject: [PATCH] erts: Fix incorrect use of AC_EGREP_CPP
Using 'AC_EGREP_CPP(yes' without restraining the pattern always return
true if it runs from a path containing the string 'yes'.
---
erts/aclocal.m4 | 2 +-
erts/configure.in | 17 +++++++++--------
2 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/erts/aclocal.m4 b/erts/aclocal.m4
index 5735cde..70a5b40 100644
--- a/erts/aclocal.m4
+++ b/erts/aclocal.m4
@@ -559,7 +559,7 @@ dnl
AC_DEFUN(LM_SYS_MULTICAST,
[AC_CACHE_CHECK([for multicast support], ac_cv_sys_multicast_support,
-[AC_EGREP_CPP(yes,
+[AC_EGREP_CPP(^yes$,
[#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
diff --git a/erts/configure.in b/erts/configure.in
index b3fe48d..9e19e33 100644
--- a/erts/configure.in
+++ b/erts/configure.in
@@ -1555,10 +1555,11 @@ if test "$have_gethostbyname_r" = yes; then
[Define to flavour of gethostbyname_r]))
;;
*)
- AC_EGREP_CPP(yes,[#include <stdio.h>
- #ifdef __GLIBC__
- yes
- #endif
+ AC_EGREP_CPP(^yes$,[
+#include <stdio.h>
+#ifdef __GLIBC__
+yes
+#endif
], AC_DEFINE(HAVE_GETHOSTBYNAME_R, GHBN_R_GLIBC,
[Define to flavour of gethostbyname_r]))
;;
@@ -4303,10 +4304,10 @@ case "$erl_xcomp_without_sysroot-$with_ssl" in
SSL_INCLUDE="-I$dir/include"
old_CPPFLAGS=$CPPFLAGS
CPPFLAGS=$SSL_INCLUDE
- AC_EGREP_CPP(yes,[
+ AC_EGREP_CPP(^yes$,[
#include <openssl/opensslv.h>
#if OPENSSL_VERSION_NUMBER >= 0x0090700fL
- yes
+yes
#endif
],[
ssl_found=yes
@@ -4501,10 +4502,10 @@ if test "x$SSL_APP" != "x" ; then
AC_MSG_CHECKING(for OpenSSL kerberos 5 support)
old_CPPFLAGS=$CPPFLAGS
CPPFLAGS=$SSL_INCLUDE
- AC_EGREP_CPP(yes,[
+ AC_EGREP_CPP(^yes$,[
#include <openssl/opensslconf.h>
#ifndef OPENSSL_NO_KRB5
- yes
+yes
#endif
],[
AC_MSG_RESULT([yes])
--
2.1.0

View File

@@ -0,0 +1,40 @@
comment "erlang needs a toolchain w/ dynamic library"
depends on BR2_USE_MMU # fork()
depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS
depends on BR2_STATIC_LIBS
config BR2_PACKAGE_ERLANG
bool "erlang"
depends on BR2_USE_MMU # fork()
depends on !BR2_STATIC_LIBS
depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS
select BR2_PACKAGE_LIBATOMIC_OPS
help
Erlang is a programming language used to build massively scalable
soft real-time systems with requirements on high availability.
Some of its uses are in telecoms, banking, e-commerce, computer
telephony and instant messaging. Erlang's runtime system has
built-in support for concurrency, distribution and fault tolerance.
http://www.erlang.org
if BR2_PACKAGE_ERLANG
config BR2_PACKAGE_ERLANG_SMP
bool "enable SMP support"
help
Erlang provides both a UP and an SMP emulator. The UP emulator
is always built, and this option enables compilation of the SMP
emulator. The choice of which emulator to use is made at runtime.
If you do not need SMP support, turning this option off reduces
compile time and the size of the Erlang installation.
config BR2_PACKAGE_ERLANG_MEGACO
bool "install megaco application"
help
The Megaco application is a framework for building applications
on top of the Megaco/H.248 protocol. It is approximately 14MB in
size so if you do not need it then it is recommended not to
enable it.
endif # BR2_PACKAGE_ERLANG

View File

@@ -0,0 +1,2 @@
# From http://www.erlang.org/download/MD5
md5 346dd0136bf1cc28cebc140e505206bb otp_src_17.5.tar.gz

View File

@@ -0,0 +1,88 @@
################################################################################
#
# erlang
#
################################################################################
# See note below when updating Erlang
ERLANG_VERSION = 17.5
ERLANG_SITE = http://www.erlang.org/download
ERLANG_SOURCE = otp_src_$(ERLANG_VERSION).tar.gz
ERLANG_DEPENDENCIES = host-erlang
ERLANG_LICENSE = EPL
ERLANG_LICENSE_FILES = EPLICENCE
ERLANG_INSTALL_STAGING = YES
# Touching erts/configure.in
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.7.20
# The configure checks for these functions fail incorrectly
ERLANG_CONF_ENV = ac_cv_func_isnan=yes ac_cv_func_isinf=yes
# Set erl_xcomp variables. See xcomp/erl-xcomp.conf.template
# for documentation.
ERLANG_CONF_ENV += erl_xcomp_sysroot=$(STAGING_DIR)
ERLANG_CONF_OPTS = --without-javac
ERLANG_DEPENDENCIES += libatomic_ops
ERLANG_CONF_OPTS += --with-libatomic_ops=$(STAGING_DIR)/usr LIBS=-latomic_ops
# erlang uses openssl for all things crypto. Since the host tools (such as
# rebar) uses crypto, we need to build host-erlang with support for openssl.
HOST_ERLANG_DEPENDENCIES = host-openssl
HOST_ERLANG_CONF_OPTS = --without-javac --with-ssl=$(HOST_DIR)/usr
HOST_ERLANG_CONF_OPTS += --without-termcap
ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),)
ERLANG_CONF_OPTS += --disable-threads
endif
ifeq ($(BR2_PACKAGE_NCURSES),y)
ERLANG_CONF_OPTS += --with-termcap
ERLANG_DEPENDENCIES += ncurses
else
ERLANG_CONF_OPTS += --without-termcap
endif
ifeq ($(BR2_PACKAGE_OPENSSL),y)
ERLANG_CONF_OPTS += --with-ssl
ERLANG_DEPENDENCIES += openssl
else
ERLANG_CONF_OPTS += --without-ssl
endif
ifeq ($(BR2_PACKAGE_ZLIB),y)
ERLANG_CONF_OPTS += --enable-shared-zlib
ERLANG_DEPENDENCIES += zlib
endif
ifeq ($(BR2_PACKAGE_ERLANG_SMP),)
ERLANG_CONF_OPTS += --disable-smp-support
endif
# Remove source, example, gs and wx files from the target
ERLANG_REMOVE_PACKAGES = gs wx
ifneq ($(BR2_PACKAGE_ERLANG_MEGACO),y)
ERLANG_REMOVE_PACKAGES += megaco
endif
define ERLANG_REMOVE_UNUSED
find $(TARGET_DIR)/usr/lib/erlang -type d -name src -prune -exec rm -rf {} \;
find $(TARGET_DIR)/usr/lib/erlang -type d -name examples -prune -exec rm -rf {} \;
for package in $(ERLANG_REMOVE_PACKAGES); do \
rm -rf $(TARGET_DIR)/usr/lib/erlang/lib/$${package}-*; \
done
endef
ERLANG_POST_INSTALL_TARGET_HOOKS += ERLANG_REMOVE_UNUSED
$(eval $(autotools-package))
$(eval $(host-autotools-package))