[profiler] Don't link to libmonosgen on OSX. Fixes in tree execution.
authorRodrigo Kumpera <kumpera@gmail.com>
Fri, 27 Jan 2017 18:29:15 +0000 (13:29 -0500)
committerRodrigo Kumpera <kumpera@gmail.com>
Fri, 27 Jan 2017 18:29:15 +0000 (13:29 -0500)
Loading profiling modules from the build tree fails on OSX because libmonosgen usually is not present in the install prefix.

This change is slightly overly complicated as I explicitly don't want to change iOS&friends.

configure.ac
mono/profiler/Makefile.am

index b9c7520e38d9a02fcf3652a3760bf5ec86589ee8..4144b9f1736d8d1685be4a11112aa33b4bfae482 100644 (file)
@@ -3545,6 +3545,7 @@ if test "x$target_mach" = "xyes"; then
                  AC_DEFINE(TARGET_OSX,1,[The JIT/AOT targets OSX])
           CPPFLAGS_FOR_LIBGC="$CPPFLAGS_FOR_LIBGC -DTARGET_OSX"
           CFLAGS_FOR_LIBGC="$CFLAGS_FOR_LIBGC -DTARGET_OSX"
+          target_osx=yes
        ], [
           AC_DEFINE(TARGET_IOS,1,[The JIT/AOT targets iOS])
           CPPFLAGS_FOR_LIBGC="$CPPFLAGS_FOR_LIBGC -DTARGET_IOS"
@@ -3552,6 +3553,7 @@ if test "x$target_mach" = "xyes"; then
           BTLS_SUPPORTED=no
        ])
        fi
+       AM_CONDITIONAL(TARGET_OSX, test x$target_osx = xyes)
    AC_DEFINE(TARGET_MACH,1,[The JIT/AOT targets Apple platforms])
 fi
 
index 675f0ffcf46ed2880eafcceefe2e4c8eb97e4ffe..9010ee26c787c49b1fda2a235ac0ebda605f8555 100644 (file)
@@ -38,6 +38,12 @@ prof_ldflags = -Wl,-undefined -Wl,suppress -Wl,-flat_namespace
 endif
 endif
 
+if TARGET_OSX
+libmono_dep =
+else
+libmono_dep = $(monodir)/mono/mini/$(LIBMONO_LA)
+endif
+
 if PLATFORM_ANDROID
 prof_ldflags = -avoid-version
 endif
@@ -62,19 +68,19 @@ monodir=$(top_builddir)
 # functionality, so create a separate static version of the library.
 
 libmono_profiler_aot_la_SOURCES = mono-profiler-aot.c
-libmono_profiler_aot_la_LIBADD =  $(monodir)/mono/mini/$(LIBMONO_LA) $(GLIB_LIBS) $(LIBICONV)
+libmono_profiler_aot_la_LIBADD =  $(libmono_dep) $(GLIB_LIBS) $(LIBICONV)
 libmono_profiler_aot_la_LDFLAGS = $(prof_ldflags)
 libmono_profiler_aot_static_la_SOURCES = mono-profiler-aot.c
 libmono_profiler_aot_static_la_LDFLAGS = -static
 
 libmono_profiler_iomap_la_SOURCES = mono-profiler-iomap.c
-libmono_profiler_iomap_la_LIBADD = $(monodir)/mono/mini/$(LIBMONO_LA) $(GLIB_LIBS) $(LIBICONV)
+libmono_profiler_iomap_la_LIBADD = $(libmono_dep) $(GLIB_LIBS) $(LIBICONV)
 libmono_profiler_iomap_la_LDFLAGS = $(prof_ldflags)
 libmono_profiler_iomap_static_la_SOURCES = mono-profiler-iomap.c
 libmono_profiler_iomap_static_la_LDFLAGS = -static
 
 libmono_profiler_log_la_SOURCES = mono-profiler-log.c
-libmono_profiler_log_la_LIBADD = $(monodir)/mono/mini/$(LIBMONO_LA) $(GLIB_LIBS) $(Z_LIBS)
+libmono_profiler_log_la_LIBADD = $(libmono_dep) $(GLIB_LIBS) $(Z_LIBS)
 libmono_profiler_log_la_LDFLAGS = $(prof_ldflags)
 libmono_profiler_log_static_la_SOURCES = mono-profiler-log.c
 libmono_profiler_log_static_la_LDFLAGS = -static