update buildroot to 2017.02.11
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
From 5232ec11c74eb49fb220a7e2df80e46ac621e941 Mon Sep 17 00:00:00 2001
|
||||
From: Angelo Compagnucci <angelo.compagnucci@gmail.com>
|
||||
Date: Sat, 7 Feb 2015 09:49:37 +0100
|
||||
Subject: [PATCH] Disable backtrace on not supported uclibc
|
||||
|
||||
Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||
---
|
||||
libgc/include/gc.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/libgc/include/gc.h b/libgc/include/gc.h
|
||||
index 2265fdb..6485fc0 100644
|
||||
--- a/libgc/include/gc.h
|
||||
+++ b/libgc/include/gc.h
|
||||
@@ -500,7 +500,7 @@ GC_API GC_PTR GC_malloc_atomic_ignore_off_page GC_PROTO((size_t lb));
|
||||
#if defined(__linux__) || defined(__GLIBC__)
|
||||
# include <features.h>
|
||||
# if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \
|
||||
- && !defined(__ia64__)
|
||||
+ && !defined(__ia64__) && !defined(__UCLIBC__)
|
||||
# ifndef GC_HAVE_BUILTIN_BACKTRACE
|
||||
# define GC_HAVE_BUILTIN_BACKTRACE
|
||||
# endif
|
||||
--
|
||||
2.1.0
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
From 6f8346438e0257259867b5dca6bb6db54eb96705 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||
Date: Sat, 7 Feb 2015 09:50:24 +0100
|
||||
Subject: [PATCH] Adjust libc.so path depending on C library being used
|
||||
|
||||
By default, on Linux systems, Mono assumes that the C library is
|
||||
libc.so.6. While this is true for glibc, it is not true for uClibc and
|
||||
Musl based systems. This patch adds support for such systems.
|
||||
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||
---
|
||||
configure.ac | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 5d9961a..f6a7909 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -2978,6 +2978,12 @@ case "$host" in
|
||||
SQLITE="libsqlite.so"
|
||||
SQLITE3="libsqlite3.so"
|
||||
;;
|
||||
+ *-*-*uclibc*)
|
||||
+ LIBC="libc.so.0"
|
||||
+ ;;
|
||||
+ *-*-*musl*)
|
||||
+ LIBC="libc.so"
|
||||
+ ;;
|
||||
*-*-*linux*)
|
||||
AC_PATH_X
|
||||
dlsearch_path=`(libtool --config ; echo eval echo \\$sys_lib_dlsearch_path_spec) | sh`
|
||||
--
|
||||
2.1.0
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
From 1c3d615d93b20d10c2729478d5104977dd9af23f Mon Sep 17 00:00:00 2001
|
||||
From: Angelo Compagnucci <angelo.compagnucci@gmail.com>
|
||||
Date: Wed, 5 Aug 2015 12:59:45 +0200
|
||||
Subject: [PATCH] Fixing initialization of have_vasprintf
|
||||
|
||||
This patch initialize properly have_vasprintf in case vasprint function is found.
|
||||
Solves multiple definition of `vasprintf' error in case vasprint is not properly detected.
|
||||
|
||||
Patch is upstream:
|
||||
|
||||
https://github.com/mono/mono/commit/40c171799b671718969ee28a02f92884d7fd181e
|
||||
|
||||
Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
|
||||
---
|
||||
eglib/configure.ac | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/eglib/configure.ac b/eglib/configure.ac
|
||||
index 5281419..4bf91e5 100644
|
||||
--- a/eglib/configure.ac
|
||||
+++ b/eglib/configure.ac
|
||||
@@ -135,6 +135,7 @@ AC_CHECK_SIZEOF(void *)
|
||||
AC_CHECK_SIZEOF(long)
|
||||
AC_CHECK_SIZEOF(long long)
|
||||
AC_CHECK_FUNCS(strlcpy stpcpy strtok_r rewinddir vasprintf)
|
||||
+AC_CHECK_FUNC(vasprintf, have_vasprintf=yes)
|
||||
AC_CHECK_FUNCS(getrlimit)
|
||||
|
||||
#
|
||||
@@ -0,0 +1,29 @@
|
||||
From 155f96953d1b898f04a4e708c9ebc1e450b2f63e Mon Sep 17 00:00:00 2001
|
||||
From: Angelo Compagnucci <angelo.compagnucci@gmail.com>
|
||||
Date: Tue, 24 Nov 2015 23:11:10 +0100
|
||||
Subject: [PATCH] Remove unit-tests from mono compilation
|
||||
|
||||
This patch fixes compiling errors with unit-tests under linux.
|
||||
|
||||
Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
|
||||
---
|
||||
mono/Makefile.am | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/mono/Makefile.am b/mono/Makefile.am
|
||||
index ef41dfe..7129507 100644
|
||||
--- a/mono/Makefile.am
|
||||
+++ b/mono/Makefile.am
|
||||
@@ -30,7 +30,7 @@ monotouch-do-clean:
|
||||
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$target); \
|
||||
done;
|
||||
else
|
||||
-SUBDIRS = arch utils io-layer cil metadata $(sgen_dirs) mini dis tests unit-tests benchmark profiler
|
||||
+SUBDIRS = arch utils io-layer cil metadata $(sgen_dirs) mini dis tests benchmark profiler
|
||||
endif
|
||||
endif
|
||||
-DIST_SUBDIRS = arch utils io-layer cil metadata $(sgen_dirs) mini dis tests unit-tests benchmark profiler
|
||||
+DIST_SUBDIRS = arch utils io-layer cil metadata $(sgen_dirs) mini dis tests benchmark profiler
|
||||
--
|
||||
1.9.1
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
From 18bba65adf58d54645398de26eac24081d48f793 Mon Sep 17 00:00:00 2001
|
||||
From: Angelo Compagnucci <angelo.compagnucci@gmail.com>
|
||||
Date: Thu, 25 Feb 2016 22:19:31 +0100
|
||||
Subject: [PATCH] mcs/class/monodoc/Makefile: Fixing wrong monodoc search path
|
||||
|
||||
mono_libdir actually leaks host compiler path, fixing
|
||||
by hardcoding correct path for our usecase.
|
||||
|
||||
Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
|
||||
---
|
||||
mcs/class/monodoc/Makefile | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/mcs/class/monodoc/Makefile b/mcs/class/monodoc/Makefile
|
||||
index 3ebba80..ddc2098 100644
|
||||
--- a/mcs/class/monodoc/Makefile
|
||||
+++ b/mcs/class/monodoc/Makefile
|
||||
@@ -135,7 +135,7 @@ test-local: setup-doc-sources
|
||||
dist-local: Monodoc.Ecma/EcmaUrlParser.cs
|
||||
|
||||
$(the_lib).config: Makefile monodoc.dll.config.in
|
||||
- sed 's,@monodoc_refdir@,$(mono_libdir)/monodoc,g' monodoc.dll.config.in > $@
|
||||
+ sed 's,@monodoc_refdir@,/usr/lib/monodoc,g' monodoc.dll.config.in > $@
|
||||
|
||||
Monodoc.Ecma/EcmaUrlParser.cs: Monodoc.Ecma/EcmaUrlParser.jay $(topdir)/jay/skeleton.cs jay.sh
|
||||
$(topdir)/$(thisdir)/jay.sh $(topdir) $< $@ $(JAY_FLAGS)
|
||||
--
|
||||
1.9.1
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
From 63f0b0246b8125ae48b15bd182bb5831be02e6c9 Mon Sep 17 00:00:00 2001
|
||||
From: Angelo Compagnucci <angelo.compagnucci@gmail.com>
|
||||
Date: Mon, 27 Jun 2016 21:32:11 +0200
|
||||
Subject: [PATCH] fix musl incorrect sigcontext include
|
||||
|
||||
On musl __GLIBC__ is not defined, so the conditional logic will
|
||||
not produce correct result. Add a specific case to handle when
|
||||
__GLIBC__ is not defined.
|
||||
|
||||
Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
|
||||
---
|
||||
libgc/os_dep.c | 2 +-
|
||||
mono/mini/exceptions-arm.c | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/libgc/os_dep.c b/libgc/os_dep.c
|
||||
index 8c8e098..34859c1 100644
|
||||
--- a/libgc/os_dep.c
|
||||
+++ b/libgc/os_dep.c
|
||||
@@ -32,7 +32,7 @@
|
||||
/* prototypes, so we have to include the top-level sigcontext.h to */
|
||||
/* make sure the former gets defined to be the latter if appropriate. */
|
||||
# include <features.h>
|
||||
-# if 2 <= __GLIBC__
|
||||
+# if 2 <= __GLIBC__ || !defined(__GLIBC__)
|
||||
# if 2 == __GLIBC__ && 0 == __GLIBC_MINOR__
|
||||
/* glibc 2.1 no longer has sigcontext.h. But signal.h */
|
||||
/* has the right declaration for glibc 2.1. */
|
||||
diff --git a/mono/mini/exceptions-arm.c b/mono/mini/exceptions-arm.c
|
||||
index b036aa7..a3e2164 100644
|
||||
--- a/mono/mini/exceptions-arm.c
|
||||
+++ b/mono/mini/exceptions-arm.c
|
||||
@@ -14,7 +14,7 @@
|
||||
#include <string.h>
|
||||
|
||||
#ifndef MONO_CROSS_COMPILE
|
||||
-#ifdef HAVE_ASM_SIGCONTEXT_H
|
||||
+#if defined(HAVE_ASM_SIGCONTEXT_H) && defined(__GLIBC__)
|
||||
#include <asm/sigcontext.h>
|
||||
#endif /* def HAVE_ASM_SIGCONTEXT_H */
|
||||
#endif
|
||||
--
|
||||
1.9.1
|
||||
|
||||
19
bsp/buildroot-2017.02.11/package/mono/Config.in
Normal file
19
bsp/buildroot-2017.02.11/package/mono/Config.in
Normal file
@@ -0,0 +1,19 @@
|
||||
config BR2_PACKAGE_MONO_ARCH_SUPPORTS
|
||||
bool
|
||||
default y if (BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || \
|
||||
BR2_mipsel || BR2_powerpc || BR2_x86_64)
|
||||
|
||||
config BR2_PACKAGE_MONO
|
||||
bool "mono"
|
||||
depends on BR2_PACKAGE_MONO_ARCH_SUPPORTS
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||
depends on !BR2_STATIC_LIBS
|
||||
help
|
||||
An open source, cross-platform, implementation of C#
|
||||
and the CLR that is binary compatible with Microsoft.NET.
|
||||
|
||||
http://download.mono-project.com/sources/mono/
|
||||
|
||||
comment "mono needs a toolchain w/ threads, dynamic library"
|
||||
depends on BR2_PACKAGE_MONO_ARCH_SUPPORTS
|
||||
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
|
||||
2
bsp/buildroot-2017.02.11/package/mono/mono.hash
Normal file
2
bsp/buildroot-2017.02.11/package/mono/mono.hash
Normal file
@@ -0,0 +1,2 @@
|
||||
# sha256 locally computed
|
||||
sha256 8965d107f4ebf4583ba1b50e0dcad39f0dc6adac8df7a083e9c5879ad93c0ea4 mono-4.6.2.16.tar.bz2
|
||||
63
bsp/buildroot-2017.02.11/package/mono/mono.mk
Normal file
63
bsp/buildroot-2017.02.11/package/mono/mono.mk
Normal file
@@ -0,0 +1,63 @@
|
||||
################################################################################
|
||||
#
|
||||
# mono
|
||||
#
|
||||
################################################################################
|
||||
|
||||
MONO_VERSION = 4.6.2.16
|
||||
MONO_SITE = http://download.mono-project.com/sources/mono
|
||||
MONO_SOURCE = mono-$(MONO_VERSION).tar.bz2
|
||||
MONO_LICENSE = GPLv2 or MIT (compiler, tools), MIT (libs) or commercial
|
||||
MONO_LICENSE_FILES = LICENSE mcs/COPYING eglib/COPYING \
|
||||
external/Newtonsoft.Json/Tools/7-zip/copying.txt
|
||||
MONO_INSTALL_STAGING = YES
|
||||
|
||||
## Mono native
|
||||
|
||||
# patching configure.ac
|
||||
MONO_AUTORECONF = YES
|
||||
|
||||
# Disable managed code (mcs folder) from building
|
||||
MONO_CONF_OPTS = --with-mcs-docs=no \
|
||||
--with-ikvm-native=no \
|
||||
--enable-minimal=profiler,debug \
|
||||
--disable-mcs-build \
|
||||
--enable-static
|
||||
|
||||
# The libraries have been built by the host-mono build. Since they are
|
||||
# architecture-independent, we simply copy them to the target.
|
||||
define MONO_INSTALL_LIBS
|
||||
rsync -av --exclude=*.so --exclude=*.mdb \
|
||||
$(HOST_DIR)/usr/lib/mono $(TARGET_DIR)/usr/lib/
|
||||
endef
|
||||
|
||||
MONO_POST_INSTALL_TARGET_HOOKS += MONO_INSTALL_LIBS
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LIBICONV),y)
|
||||
MONO_DEPENDENCIES += libiconv
|
||||
endif
|
||||
|
||||
MONO_DEPENDENCIES += host-mono
|
||||
|
||||
## Mono managed
|
||||
|
||||
HOST_MONO_CONF_OPTS = --with-mcs-docs=no \
|
||||
--disable-libraries \
|
||||
--with-ikvm-native=no \
|
||||
--enable-minimal=profiler,debug \
|
||||
--enable-static
|
||||
|
||||
# ensure monolite is used
|
||||
HOST_MONO_MAKE_OPTS += EXTERNAL_MCS=false
|
||||
|
||||
HOST_MONO_DEPENDENCIES = host-monolite host-gettext
|
||||
|
||||
define HOST_MONO_SETUP_MONOLITE
|
||||
rm -rf $(@D)/mcs/class/lib/monolite
|
||||
(cd $(@D)/mcs/class/lib; ln -s $(HOST_DIR)/usr/lib/monolite monolite)
|
||||
endef
|
||||
|
||||
HOST_MONO_POST_CONFIGURE_HOOKS += HOST_MONO_SETUP_MONOLITE
|
||||
|
||||
$(eval $(autotools-package))
|
||||
$(eval $(host-autotools-package))
|
||||
Reference in New Issue
Block a user