8 -DSUPPRESSION_DIR=\""$(datadir)/mono-$(API_VER)/mono/profiler"\" \
15 bin_PROGRAMS = mprof-report
18 vtune_libs = libmono-profiler-vtune.la libmono-profiler-vtune-static.la
22 libmono-profiler-aot.la \
23 libmono-profiler-aot-static.la \
24 libmono-profiler-iomap.la \
25 libmono-profiler-iomap-static.la \
26 libmono-profiler-log.la \
27 libmono-profiler-log-static.la \
30 suppressiondir = $(datadir)/mono-$(API_VER)/mono/profiler
31 suppression_DATA = mono-profiler-log.suppression
35 prof_ldflags = -no-undefined
37 prof_ldflags = -Wl,-undefined -Wl,suppress -Wl,-flat_namespace
44 libmono_dep = $(monodir)/mono/mini/$(LIBMONO_LA)
48 prof_ldflags = -avoid-version
51 # FIXME fix the profiler tests to work with coop.
53 check_targets = testlog
60 monodir=$(top_builddir)
62 # The log profiler uses eglib functions, so it needs to be linked against
63 # libeglib in shared mode, but not in static mode, since that would
64 # leads to duplicate symbols when it is linked into an app which
65 # also uses eglib (e.g. the runtime). Automake doesn't support this
66 # functionality, so create a separate static version of the library.
68 libmono_profiler_aot_la_SOURCES = aot.c
69 libmono_profiler_aot_la_LIBADD = $(libmono_dep) $(GLIB_LIBS) $(LIBICONV)
70 libmono_profiler_aot_la_LDFLAGS = $(prof_ldflags)
71 libmono_profiler_aot_static_la_SOURCES = aot.c
72 libmono_profiler_aot_static_la_LDFLAGS = -static
74 libmono_profiler_iomap_la_SOURCES = iomap.c
75 libmono_profiler_iomap_la_LIBADD = $(libmono_dep) $(GLIB_LIBS) $(LIBICONV)
76 libmono_profiler_iomap_la_LDFLAGS = $(prof_ldflags)
77 libmono_profiler_iomap_static_la_SOURCES = iomap.c
78 libmono_profiler_iomap_static_la_LDFLAGS = -static
80 libmono_profiler_log_la_SOURCES = log.c log-args.c
81 libmono_profiler_log_la_LIBADD = $(libmono_dep) $(GLIB_LIBS) $(Z_LIBS)
82 libmono_profiler_log_la_LDFLAGS = $(prof_ldflags)
83 libmono_profiler_log_static_la_SOURCES = log.c log-args.c
84 libmono_profiler_log_static_la_LDFLAGS = -static
87 libmono_profiler_vtune_la_SOURCES = vtune.c
88 libmono_profiler_vtune_la_CFLAGS = $(VTUNE_CFLAGS)
89 libmono_profiler_vtune_la_LIBADD = $(VTUNE_LIBS) $(LIBMONO) $(GLIB_LIBS) $(LIBICONV)
90 libmono_profiler_vtune_la_LDFLAGS = $(prof_ldflags)
91 libmono_profiler_vtune_static_la_SOURCES = vtune.c
92 libmono_profiler_vtune_static_la_LDFLAGS = -static
93 libmono_profiler_vtune_static_la_CFLAGS = $(VTUNE_CFLAGS)
94 libmono_profiler_vtune_static_la_LIBADD = $(VTUNE_LIBS)
97 mprof_report_SOURCES = mprof-report.c
98 mprof_report_LDADD = $(Z_LIBS) $(GLIB_LIBS) $(LIBICONV)
100 PLOG_TESTS_SRC=test-alloc.cs test-busy.cs test-monitor.cs test-excleave.cs \
101 test-heapshot.cs test-traces.cs
102 PLOG_TESTS=$(PLOG_TESTS_SRC:.cs=.exe)
104 CLASS=$(mcs_topdir)/class/lib/$(DEFAULT_PROFILE)
106 TOOLS_RUNTIME = MONO_PATH=$(mcs_topdir)/class/lib/build $(top_builddir)/runtime/mono-wrapper
107 MCS = $(TOOLS_RUNTIME) $(CSC) -lib:$(CLASS) -unsafe -nologo -noconfig -nowarn:0162 -nowarn:0168 -nowarn:0219 -debug:portable
112 testlog: $(PLOG_TESTS)
113 MONO_PATH=$(CLASS) perl $(srcdir)/ptestrunner.pl $(top_builddir)
115 check-local: $(check_targets)