xref: /OK3568_Linux_fs/buildroot/package/mono/mono.mk (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1################################################################################
2#
3# mono
4#
5################################################################################
6
7MONO_VERSION = 6.12.0.90
8MONO_SITE = http://download.mono-project.com/sources/mono
9MONO_SOURCE = mono-$(MONO_VERSION).tar.xz
10MONO_LICENSE = GPL-2.0 or MIT (compiler, tools), MIT (libs) or commercial
11MONO_LICENSE_FILES = LICENSE mcs/COPYING \
12	external/Newtonsoft.Json/Tools/7-zip/copying.txt
13MONO_CPE_ID_VENDOR = mono-project
14MONO_INSTALL_STAGING = YES
15
16## Mono native
17
18# patching configure.ac
19MONO_AUTORECONF = YES
20
21MONO_COMMON_CONF_OPTS = --with-mcs-docs=no \
22	--with-ikvm-native=no \
23	--enable-minimal=profiler,debug \
24	--enable-static \
25	--disable-btls \
26	--disable-system-aot
27
28# Disable managed code (mcs folder) from building
29MONO_CONF_OPTS = $(MONO_COMMON_CONF_OPTS) --disable-mcs-build
30
31# The libraries have been built by the host-mono build. Since they are
32# architecture-independent, we simply copy them to the target.
33define MONO_INSTALL_LIBS
34	rsync -av --exclude=*.so --exclude=*.mdb \
35		$(HOST_DIR)/lib/mono $(TARGET_DIR)/usr/lib/
36endef
37
38MONO_POST_INSTALL_TARGET_HOOKS += MONO_INSTALL_LIBS
39
40ifeq ($(BR2_PACKAGE_LIBICONV),y)
41MONO_DEPENDENCIES += libiconv
42endif
43
44MONO_DEPENDENCIES += \
45	host-mono \
46	$(if $(BR2_PACKAGE_LIBUNWIND),libunwind) \
47	libatomic_ops
48
49## Mono managed
50
51HOST_MONO_CONF_OPTS = $(MONO_COMMON_CONF_OPTS) --disable-libraries
52
53# ensure monolite is used
54HOST_MONO_MAKE_OPTS += EXTERNAL_MCS=false
55
56HOST_MONO_DEPENDENCIES = host-monolite host-gettext host-python3
57
58define HOST_MONO_SETUP_MONOLITE
59	rm -rf $(@D)/mcs/class/lib/monolite
60	(cd $(@D)/mcs/class/lib; ln -s $(HOST_DIR)/lib/monolite monolite)
61endef
62
63HOST_MONO_POST_CONFIGURE_HOOKS += HOST_MONO_SETUP_MONOLITE
64
65$(eval $(autotools-package))
66$(eval $(host-autotools-package))
67