Use AM_CPPFLAGS instead of INCLUDES in Makefile.am files, as the later is no longer...
[mono.git] / mono / profiler / Makefile.am
1 if HAVE_ZLIB
2 Z_LIBS= -lz
3 else
4 Z_LIBS=
5 endif
6
7 AM_CPPFLAGS = \
8         -fexceptions -DMONO_USE_EXC_TABLES      \
9         -I$(top_srcdir)         \
10         $(GLIB_CFLAGS)
11
12 if !DISABLE_PROFILER
13 if JIT_SUPPORTED
14 bin_PROGRAMS = mprof-report
15 lib_LTLIBRARIES = libmono-profiler-cov.la libmono-profiler-aot.la libmono-profiler-iomap.la libmono-profiler-log.la
16 if PLATFORM_DARWIN
17 libmono_profiler_log_la_LDFLAGS = -Wl,-undefined -Wl,suppress -Wl,-flat_namespace
18 endif
19 endif
20 endif
21
22 if HAVE_OPROFILE
23 # Do something that uses OPROFILE_CFLAGS and OPROFILE_LIBS
24 endif
25
26 if SUPPORT_BOEHM
27 if !SHARED_MONO
28 static_libs=    \
29         $(top_builddir)/mono/metadata/libmonoruntime-static.la  \
30         $(top_builddir)/mono/io-layer/libwapi.la        \
31         $(top_builddir)/mono/utils/libmonoutils.la \
32         $(GLIB_LIBS) $(LIBICONV) \
33         $(LIBGC_STATIC_LIBS)
34
35 LIBMONO=$(top_builddir)/mono/mini/$(LIBMONO_LA) $(static_libs)
36 else
37 LIBMONO=$(top_builddir)/mono/mini/$(LIBMONO_LA)
38 endif
39 else
40 LIBMONO=$(top_builddir)/mono/mini/libmonosgen-$(API_VER).la
41 endif
42
43 libmono_profiler_cov_la_SOURCES = mono-cov.c
44 libmono_profiler_cov_la_LIBADD = $(LIBMONO) $(GLIB_LIBS) $(LIBICONV)
45 libmono_profiler_aot_la_SOURCES = mono-profiler-aot.c
46 libmono_profiler_aot_la_LIBADD = $(LIBMONO) $(GLIB_LIBS) $(LIBICONV)
47 #libmono_profiler_logging_la_SOURCES = mono-profiler-logging.c
48 #libmono_profiler_logging_la_LIBADD = $(LIBMONO) $(GLIB_LIBS) $(LIBICONV)
49 libmono_profiler_iomap_la_SOURCES = mono-profiler-iomap.c
50 libmono_profiler_iomap_la_LIBADD = $(LIBMONO) $(GLIB_LIBS) $(LIBICONV)
51 libmono_profiler_log_la_SOURCES = proflog.c
52 libmono_profiler_log_la_LIBADD = $(LIBMONO) $(Z_LIBS)
53
54 mprof_report_SOURCES = decode.c
55 mprof_report_LDADD = $(Z_LIBS)
56
57 PLOG_TESTS_SRC=test-alloc.cs test-busy.cs test-monitor.cs test-excleave.cs \
58         test-heapshot.cs test-traces.cs
59 PLOG_TESTS=$(PLOG_TESTS_SRC:.cs=.exe)
60
61 with_mono_path = MONO_PATH=$(mcs_topdir)/class/lib/net_4_0
62
63 RUNTIME = $(with_mono_path) $(top_builddir)/runtime/mono-wrapper
64 MCS = $(RUNTIME) $(mcs_topdir)/class/lib/build/mcs.exe -unsafe -nowarn:0162 -nowarn:0168 -nowarn:0219 -debug
65
66 %.exe: %.cs
67         $(MCS) -out:$@ $<
68
69 testlog: $(PLOG_TESTS)
70         $(with_mono_path) perl $(srcdir)/ptestrunner.pl $(top_builddir)
71
72 check-local: testlog
73
74 EXTRA_DIST=utils.c utils.h proflog.h log-profiler.txt perf_event.h \
75         $(PLOG_TESTS_SRC) ptestrunner.pl