Merge branch 'feature-concurrent-sweep'
[mono.git] / mono / metadata / Makefile.am
index 335484ae676054522cb7b99975e7a95947ba7dfc..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)\"
+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
@@ -108,8 +117,8 @@ common_sources = \
        debug-helpers.c         \
        debug-mono-symfile.h    \
        debug-mono-symfile.c    \
-       decimal.c               \
-       decimal.h               \
+       decimal-ms.c            \
+       decimal-ms.h            \
        domain-internals.h      \
        environment.c           \
        environment.h           \
@@ -148,7 +157,6 @@ common_sources = \
        mono-debug.h            \
        mono-debug.c            \
        mono-debug-debugger.h   \
-       mono-debug-debugger.c   \
        mono-endian.c           \
        mono-endian.h           \
        mono-hash.h             \
@@ -158,6 +166,8 @@ common_sources = \
        mono-perfcounters.h     \
        mono-perfcounters-def.h \
        mono-ptr-array.h        \
+       mono-route.c            \
+       mono-route.h            \
        mono-wsq.c              \
        mono-wsq.h              \
        monitor.h               \
@@ -174,8 +184,10 @@ common_sources = \
        profiler-private.h      \
        rand.h                  \
        rand.c                  \
+       remoting.h              \
+       remoting.c              \
        runtime.c               \
-       security.c              \
+       mono-security.c         \
        security.h              \
        security-core-clr.c     \
        security-core-clr.h     \
@@ -191,6 +203,11 @@ 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      \
        wrapper-types.h \
@@ -200,7 +217,9 @@ common_sources = \
        file-mmap.h     \
        object-offsets.h        \
        abi-details.h   \
-       metadata-cross-helpers.c
+       metadata-cross-helpers.c        \
+       seq-points-data.h       \
+       seq-points-data.c
 
 
 # These source files have compile time dependencies on GC code
@@ -249,9 +268,11 @@ sgen_sources = \
        sgen-major-copy-object.h \
        sgen-minor-copy-object.h \
        sgen-copy-object.h \
-       sgen-major-scan-object.h \
+       sgen-marksweep-scan-object-concurrent.h \
        sgen-minor-scan-object.h \
+       sgen-marksweep-drain-gray-stack.h       \
        sgen-protocol.h         \
+       sgen-protocol-def.h             \
        sgen-scan-object.h      \
        sgen-nursery-allocator.c        \
        sgen-hash-table.c       \
@@ -270,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
 
@@ -340,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