Integrate binary reference assemblies for v2.0/3.5 into the build system
[mono-project.git] / mono / profiler / Makefile.am
blobad479a9f021196e74ca773a68cbe1c1f5ad4a4c5
1 if HAVE_ZLIB
2 Z_LIBS= -lz
3 else
4 Z_LIBS=
5 endif
7 AM_CPPFLAGS = \
8         -fexceptions -DMONO_USE_EXC_TABLES      \
9         -I$(top_srcdir)         \
10         $(GLIB_CFLAGS)
12 if !HOST_WIN32
13 if !DISABLE_LIBRARIES
14 if !DISABLE_PROFILER
15 bin_PROGRAMS = mprof-report
17 if HAVE_VTUNE
18 vtune_lib = libmono-profiler-vtune.la
19 endif
21 lib_LTLIBRARIES = libmono-profiler-cov.la libmono-profiler-aot.la libmono-profiler-iomap.la libmono-profiler-log.la $(vtune_lib)
23 if PLATFORM_DARWIN
24 libmono_profiler_log_la_LDFLAGS = -Wl,-undefined -Wl,suppress -Wl,-flat_namespace
25 endif
26 if PLATFORM_ANDROID
27 libmono_profiler_log_la_LDFLAGS = -avoid-version
28 endif
29 endif
30 endif
31 endif
33 if HAVE_OPROFILE
34 # Do something that uses OPROFILE_CFLAGS and OPROFILE_LIBS
35 endif
37 if SUPPORT_BOEHM
38 if DISABLE_EXECUTABLES
39 LIBMONO=$(top_builddir)/mono/mini/$(LIBMONO_LA)
40 else
41 if !SHARED_MONO
42 static_libs=    \
43         $(top_builddir)/mono/metadata/libmonoruntime-static.la  \
44         $(top_builddir)/mono/io-layer/libwapi.la        \
45         $(top_builddir)/mono/utils/libmonoutils.la \
46         $(GLIB_LIBS) $(LIBICONV) \
47         $(LIBGC_STATIC_LIBS)
49 LIBMONO=$(top_builddir)/mono/mini/$(LIBMONO_LA) $(static_libs)
50 else
51 LIBMONO=$(top_builddir)/mono/mini/$(LIBMONO_LA)
52 endif
53 endif
54 else
55 LIBMONO=$(top_builddir)/mono/mini/libmonosgen-$(API_VER).la
56 endif
58 libmono_profiler_cov_la_SOURCES = mono-cov.c
59 libmono_profiler_cov_la_LIBADD = $(LIBMONO) $(GLIB_LIBS) $(LIBICONV)
60 libmono_profiler_aot_la_SOURCES = mono-profiler-aot.c
61 libmono_profiler_aot_la_LIBADD = $(LIBMONO) $(GLIB_LIBS) $(LIBICONV)
62 #libmono_profiler_logging_la_SOURCES = mono-profiler-logging.c
63 #libmono_profiler_logging_la_LIBADD = $(LIBMONO) $(GLIB_LIBS) $(LIBICONV)
64 libmono_profiler_iomap_la_SOURCES = mono-profiler-iomap.c
65 libmono_profiler_iomap_la_LIBADD = $(LIBMONO) $(GLIB_LIBS) $(LIBICONV)
66 libmono_profiler_log_la_SOURCES = proflog.c
67 libmono_profiler_log_la_LIBADD = $(LIBMONO) $(GLIB_LIBS) $(Z_LIBS)
68 if HAVE_VTUNE
69 libmono_profiler_vtune_la_SOURCES = mono-profiler-vtune.c
70 libmono_profiler_vtune_la_CFLAGS = $(VTUNE_CFLAGS)
71 libmono_profiler_vtune_la_LIBADD = $(VTUNE_LIBS) $(LIBMONO) $(GLIB_LIBS) $(LIBICONV)
72 endif
74 mprof_report_SOURCES = decode.c
75 mprof_report_LDADD = $(Z_LIBS)
77 PLOG_TESTS_SRC=test-alloc.cs test-busy.cs test-monitor.cs test-excleave.cs \
78         test-heapshot.cs test-traces.cs
79 PLOG_TESTS=$(PLOG_TESTS_SRC:.cs=.exe)
81 with_mono_path = MONO_PATH=$(mcs_topdir)/class/lib/net_4_5
83 RUNTIME = $(with_mono_path) $(top_builddir)/runtime/mono-wrapper
84 MCS = $(RUNTIME) $(mcs_topdir)/class/lib/build/mcs.exe -unsafe -nowarn:0162 -nowarn:0168 -nowarn:0219 -debug
86 %.exe: %.cs
87         $(MCS) -out:$@ $<
89 testlog: $(PLOG_TESTS)
90         $(with_mono_path) perl $(srcdir)/ptestrunner.pl $(top_builddir)
92 if NACL_CODEGEN
93 check-local:
94 else
95 check-local: testlog
96 endif
98 EXTRA_DIST=utils.c utils.h proflog.h log-profiler.txt perf_event.h \
99         $(PLOG_TESTS_SRC) ptestrunner.pl