X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fmini%2FMakefile.am;h=a1ee64f563eae3e96e1977dd77e8d2039aed44a9;hb=5b558abeeb255a3179d4ca6a85617e051c6abd38;hp=2509df7a36aefb8c44ca46642126d00110e89857;hpb=fb6e130622b2f6d9b5379fd580bcf171f9709b76;p=mono.git diff --git a/mono/mini/Makefile.am b/mono/mini/Makefile.am index 2509df7a36a..a1ee64f563e 100644 --- a/mono/mini/Makefile.am +++ b/mono/mini/Makefile.am @@ -24,6 +24,14 @@ sgen_libs = \ $(monodir)/mono/utils/libmonoutils.la \ $(GLIB_LIBS) +if MOONLIGHT +moon_libs = \ + $(monodir)/mono/metadata/libmonoruntimemoon.la \ + $(monodir)/mono/io-layer/libwapi.la \ + $(monodir)/mono/utils/libmonoutils.la \ + $(GLIB_LIBS) +endif + static_libs= \ $(monodir)/mono/metadata/libmonoruntime-static.la \ $(monodir)/mono/io-layer/libwapi.la \ @@ -95,11 +103,19 @@ endif noinst_PROGRAMS = genmdesc -lib_LTLIBRARIES = libmono-2.0.la $(sgen_libraries) +if SHARED_MONO +shared_libraries = libmono-2.0.la $(sgen_libraries) +endif + +lib_LTLIBRARIES = $(shared_libraries) noinst_LTLIBRARIES = libmono-static.la $(sgen_static_libraries) if MOONLIGHT noinst_LTLIBRARIES += libmono-moon.la +moon-do-build: $(BUILT_SOURCES) mono libmono-moon.la +moon-do-clean: maintainer-clean-generic + -test -z "mono$(EXEEXT)" || rm -f mono$(EXEEXT) + -test -z "libmono-moon.la" || rm -f libmono-moon.la endif if LOADED_LLVM @@ -348,7 +364,8 @@ common_sources = \ debug-debugger.c \ debug-debugger.h \ xdebug.c \ - mini-llvm.h + mini-llvm.h \ + mini-llvm-cpp.h test_sources = \ basic-calls.cs \ @@ -370,18 +387,26 @@ test_sources = \ regtests=basic.exe basic-float.exe basic-long.exe basic-calls.exe objects.exe arrays.exe basic-math.exe exceptions.exe iltests.exe devirtualization.exe generics.exe basic-simd.exe if X86 +if MONO_DEBUGGER_SUPPORTED if PLATFORM_DARWIN mdb_x86 = mdb-debug-info32-darwin.s else mdb_x86 = mdb-debug-info32.s endif +else +mdb_x86 = +endif arch_sources = $(x86_sources) $(mdb_x86) arch_built=cpu-x86.h arch_define=__i386__ endif if AMD64 +if MONO_DEBUGGER_SUPPORTED arch_sources = $(amd64_sources) mdb-debug-info64.s +else +arch_sources = $(amd64_sources) +endif arch_built=cpu-amd64.h arch_define=__x86_64__ endif @@ -472,28 +497,36 @@ monobin_platform_ldflags=-framework CoreFoundation endif libmono_2_0_la_SOURCES = $(common_sources) $(llvm_sources) $(arch_sources) $(os_sources) -libmono_2_0_la_CFLAGS = $(AM_CFLAGS) $(BOEHM_DEFINES) $(LIBGC_CFLAGS) +libmono_2_0_la_CFLAGS = $(mono_CFLAGS) +libmono_2_0_la_LIBADD = $(libs) $(LIBMONO_DTRACE_OBJECT) libmonosgen_2_0_la_SOURCES = $(libmono_2_0_la_SOURCES) -libmonosgen_2_0_la_CFLAGS = $(AM_CFLAGS) $(SGEN_DEFINES) +libmonosgen_2_0_la_CFLAGS = $(mono_sgen_CFLAGS) +libmonosgen_2_0_la_LIBADD = $(sgen_libs) $(LIBMONO_DTRACE_OBJECT) if MOONLIGHT libmono_moon_la_SOURCES = $(libmono_2_0_la_SOURCES) -libmono_moon_la_CFLAGS = $(AM_CFLAGS) $(BOEHM_DEFINES) $(LIBGC_CFLAGS) +if MOONLIGHT_BOEHM +libmono_moon_la_CFLAGS = $(mono_CFLAGS) $(MOONLIGHT_DEFINES) +libmono_moon_la_LIBADD = $(moon_libs) $(libgc_libs) $(LIBMONO_DTRACE_OBJECT) +else +libmono_moon_la_CFLAGS = $(mono_sgen_CFLAGS) $(MOONLIGHT_DEFINES) +libmono_moon_la_LIBADD = $(moon_libs) $(LIBMONO_DTRACE_OBJECT) +endif endif libmono_static_la_SOURCES = $(libmono_2_0_la_SOURCES) -libmono_static_la_CFLAGS = $(AM_CFLAGS) $(BOEHM_DEFINES) $(LIBGC_CFLAGS) +libmono_static_la_CFLAGS = $(mono_CFLAGS) libmono_static_la_LDFLAGS = -static libmono_static_la_LIBADD = $(static_libs) $(MONO_DTRACE_OBJECT) libmonosgen_static_la_SOURCES = $(libmono_2_0_la_SOURCES) -libmonosgen_static_la_CFLAGS = $(AM_CFLAGS) $(SGEN_DEFINES) +libmonosgen_static_la_CFLAGS = $(mono_sgen_CFLAGS) libmonosgen_static_la_LDFLAGS = -static libmonosgen_static_la_LIBADD = $(sgenstatic_libs) $(MONO_DTRACE_OBJECT) nodist_libmono_static_la_SOURCES = $(nodist_libmono_la_SOURCES) -nodist_libmono_static_la_CFLAGS = $(AM_CFLAGS) $(BOEHM_DEFINES) $(LIBGC_CFLAGS) +nodist_libmono_static_la_CFLAGS = $(mono_CFLAGS) BURGSRC= $(common_BURGSRC) $(arch_BURGSRC) @@ -501,19 +534,12 @@ libmonoincludedir = $(includedir)/mono-$(API_VER)/mono/jit libmonoinclude_HEADERS = jit.h -libmono_2_0_la_LIBADD = \ - $(libs) $(LIBMONO_DTRACE_OBJECT) - -libmonosgen_2_0_la_LIBADD = \ - $(sgen_libs) $(LIBMONO_DTRACE_OBJECT) - -if MOONLIGHT -libmono_moon_la_LIBADD = $(libmono_2_0_la_LIBADD) -endif - basic-simd.exe: basic-simd.cs $(MCS) -out:$@ $< -r:TestDriver.dll -r:Mono.Simd.dll +nacl.exe: nacl.cs + $(MCS) -out:$@ $< -r:TestDriver.dll -r:Mono.Simd.dll + generics.exe: generics.cs TestDriver.dll generics-variant-types.dll $(MCS) -out:$@ $< -r:TestDriver.dll -r:generics-variant-types.dll @@ -533,14 +559,20 @@ TestDriver.dll: $(srcdir)/TestDriver.cs generics-variant-types.dll: generics-variant-types.il $(ILASM) -dll -output=$@ $< +if NACL_CODEGEN +GENMDESC_OPTS=--nacl +else !NACL_CODEGEN +GENMDESC_OPTS= +endif !NACL_CODEGEN + # we don't always use the perl impl because it's an additional # build dependency for the poor windows users # $(arch_define) is the preprocessor symbol that enables all the opcodes # for the specific platform in mini-ops.h if CROSS_COMPILING -GENMDESC_PRG=perl $(srcdir)/genmdesc.pl $(arch_define) $(srcdir) +GENMDESC_PRG=perl $(srcdir)/genmdesc.pl $(arch_define) $(srcdir) $(GENMDESC_OPTS) else !CROSS_COMPILING -GENMDESC_PRG=./genmdesc +GENMDESC_PRG=./genmdesc $(GENMDESC_OPTS) endif !CROSS_COMPILING cpu-x86.h: cpu-x86.md genmdesc$(EXEEXT) @@ -589,21 +621,29 @@ checktests: $(regtests) rcheck: mono $(regtests) $(RUNTIME) --regression $(regtests) +LLVM_AOT_RUNTIME_OPTS=$(if $(LLVM),--llvm,) + aotcheck: mono $(regtests) rm -f *.exe.so - $(RUNTIME) --aot $(regtests) || exit 1 + $(RUNTIME) $(LLVM_AOT_RUNTIME_OPTS) --aot $(regtests) || exit 1 for i in $(regtests); do $(RUNTIME_AOTCHECK) --regression $$i || exit 1; done rm -f *.exe.so +llvmaotcheck: + $(MAKE) aotcheck LLVM=1 + # This currently only works on amd64/arm fullaotcheck: mono $(regtests) rm -rf fullaot-tmp mkdir fullaot-tmp cp $(CLASS)/mscorlib.dll $(CLASS)/System.Core.dll $(CLASS)/System.dll $(CLASS)/Mono.Posix.dll $(CLASS)/System.Configuration.dll $(CLASS)/System.Security.dll $(CLASS)/System.Xml.dll $(CLASS)/Mono.Security.dll $(CLASS)/Mono.Simd.dll $(regtests) generics-variant-types.dll TestDriver.dll fullaot-tmp/ cp $(regtests) fullaot-tmp/ - MONO_PATH=fullaot-tmp $(top_builddir)/runtime/mono-wrapper --aot=full fullaot-tmp/* || exit 1 + MONO_PATH=fullaot-tmp $(top_builddir)/runtime/mono-wrapper $(LLVM_AOT_RUNTIME_OPTS) --aot=full fullaot-tmp/* || exit 1 for i in $(regtests); do echo $$i; MONO_PATH=fullaot-tmp $(top_builddir)/runtime/mono-wrapper --full-aot fullaot-tmp/$$i --exclude '!FULLAOT' || exit 1; done +llvmfullaotcheck: + $(MAKE) fullaotcheck LLVM=1 + bench: mono test.exe time env $(RUNTIME) --ncompile $(count) --compile Test:$(mtest) test.exe @@ -658,14 +698,12 @@ EXTRA_DIST = $(common_BURGSRC) TestDriver.cs ldscript ldscript.mono \ $(posix_sources) version.h: Makefile - if test -d $(top_srcdir)/.git; then svn_info="git log --no-color --first-parent -n1 --grep=git-svn-id: --pretty=format:%b | sed -n -e 's,git-svn-id: \(.*\)@\(.*\) .*,URL: \1 Revision: \2,p'"; fi; \ - if test -d $(srcdir)/.svn; then svn_info='svn info'; fi; \ - if test -n "$$svn_info"; then \ + if test -d $(top_srcdir)/.git; then \ (cd $(top_srcdir); \ LANG=C; export LANG; \ - branch=`eval $$svn_info | sed -n -e '/URL/ s,.*source/\(.*\)/mono.*,/\1/mono,p'`; \ - version=`eval $$svn_info | sed -n -e '/Revision/ s/.*: //p'`; \ - echo "#define FULL_VERSION \"$$branch r$$version\""; \ + branch=`git branch | grep '^\*' | cut -d ' ' -f 2`; \ + version=`git log --no-color --first-parent -n1 --pretty=format:%h`; \ + echo "#define FULL_VERSION \"$$branch/$$version\""; \ ); \ else \ echo "#define FULL_VERSION \"tarball\""; \