Merge branch 'feature-concurrent-sweep'
[mono.git] / mono / metadata / Makefile.am
index fb56197306684c97a6fceb193f44a0278733ba34..1241a7a079e60d46d531e556a58f8ddd0bde10d0 100644 (file)
@@ -28,6 +28,10 @@ unix_sources = \
 platform_sources = $(unix_sources)
 endif
 
+if PLATFORM_ANDROID
+platform_sources += ../../support/libm/complex.c
+endif
+
 if SHARED_MONO
 if SUPPORT_BOEHM
 bin_PROGRAMS = pedump
@@ -61,27 +65,32 @@ boehm_libraries = $(shared_boehm_libraries) libmonoruntime-static.la
 endif
 
 if DISABLE_EXECUTABLES
-noinst_LTLIBRARIES = $(shared_sgen_libraries) $(shared_boehm_libraries)
+noinst_LTLIBRARIES = libmonoruntime-config.la $(shared_sgen_libraries) $(shared_boehm_libraries)
 else
-noinst_LTLIBRARIES = $(boehm_libraries) $(sgen_libraries)
+noinst_LTLIBRARIES = libmonoruntime-config.la $(boehm_libraries) $(sgen_libraries)
 endif
 
-AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/mono $(LIBGC_CPPFLAGS) $(GLIB_CFLAGS) -DMONO_BINDIR=\"$(bindir)/\" -DMONO_ASSEMBLIES=\"$(assembliesdir)\" -DMONO_CFG_DIR=\"$(confdir)\" $(SHARED_CFLAGS)
+AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/mono $(LIBGC_CPPFLAGS) $(GLIB_CFLAGS) $(SHARED_CFLAGS)
 
 #
 # Make sure any prefix changes are updated in the binaries too.
 #
-#  assembly.c uses MONO_ASSEMBLIES
-#  mono-config.c uses MONO_CFG_DIR
-#
 # This won't result in many more false positives than AC_DEFINEing them
 # in configure.ac.
 #
-assembly.lo mono-config.lo: Makefile
+mono-config-dirs.lo: Makefile
 
-CLEANFILES = mono-bundle.stamp
+#
+# This library is used to localize the usage of MONO_BINDIR etc. to just one source file, thus enabling
+# ccache to work even if the value of these defines change. We need to use a convenience library since automake
+# doesn't support per file cflags.
+#
+libmonoruntime_config_la_SOURCES = \
+       mono-config-dirs.h              \
+       mono-config-dirs.c
+libmonoruntime_config_la_CPPFLAGS = $(AM_CPPFLAGS) -DMONO_BINDIR=\"$(bindir)/\" -DMONO_ASSEMBLIES=\"$(assembliesdir)\" -DMONO_CFG_DIR=\"$(confdir)\"
 
-libmonoruntime_static_la_LIBADD = $(bundle_obj) $(libmonoruntime_la_LIBADD)
+CLEANFILES = mono-bundle.stamp
 
 null_sources = \
        console-null.c
@@ -194,6 +203,10 @@ common_sources = \
        threadpool.c            \
        threadpool.h            \
        threadpool-internals.h  \
+       threadpool-ms.c \
+       threadpool-ms.h \
+       threadpool-ms-io.c      \
+       threadpool-ms-io.h      \
        tpool-poll.c    \
        verify.c                \
        verify-internals.h      \
@@ -278,21 +291,27 @@ sgen_sources = \
        sgen-layout-stats.h     \
        sgen-qsort.c    \
        sgen-qsort.h    \
+       sgen-thread-pool.c      \
+       sgen-thread-pool.h      \
        sgen-tagged-pointer.h
 
 libmonoruntime_la_SOURCES = $(common_sources) $(gc_dependent_sources) $(null_gc_sources) $(boehm_sources)
 libmonoruntime_la_CFLAGS = $(BOEHM_DEFINES)
+libmonoruntime_la_LIBADD = libmonoruntime-config.la
 
 libmonoruntimesgen_la_SOURCES = $(common_sources) $(gc_dependent_sources) $(sgen_sources)
 libmonoruntimesgen_la_CFLAGS = $(SGEN_DEFINES)
+libmonoruntimesgen_la_LIBADD = libmonoruntime-config.la
 
 libmonoruntime_static_la_SOURCES = $(libmonoruntime_la_SOURCES)
 libmonoruntime_static_la_LDFLAGS = -static
 libmonoruntime_static_la_CFLAGS = $(BOEHM_DEFINES)
+libmonoruntime_static_la_LIBADD = $(bundle_obj) $(libmonoruntime_la_LIBADD)
 
 libmonoruntimesgen_static_la_SOURCES = $(libmonoruntimesgen_la_SOURCES)
 libmonoruntimesgen_static_la_LDFLAGS = -static
 libmonoruntimesgen_static_la_CFLAGS = $(SGEN_DEFINES)
+libmonoruntimesgen_static_la_LIBADD = $(libmonoruntimesgen_la_LIBADD)
 
 libmonoruntimeincludedir = $(includedir)/mono-$(API_VER)/mono/metadata
 
@@ -348,5 +367,5 @@ endif
 endif
 endif
 
-EXTRA_DIST = make-bundle.pl sample-bundle $(win32_sources) $(unix_sources) $(null_sources) runtime.h \
+EXTRA_DIST = $(win32_sources) $(unix_sources) $(null_sources) runtime.h \
                tpool-poll.c tpool-epoll.c tpool-kqueue.c