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