New test.
[mono.git] / mono / metadata / Makefile.am
index c8ea367f2a196612ab322a83ddebdbf5d38a0ef9..48e228bbaeaf81e1c39226a3a383d3bf07cec879 100644 (file)
@@ -1,56 +1,74 @@
 if PLATFORM_WIN32
-export HOST_CC
 # Use -m here. This will use / as directory separator (C:/WINNT).
 # The files that use MONO_ASSEMBLIES and/or MONO_CFG_DIR replace the
 # / by \ if running under WIN32.
 assembliesdir = `cygpath -m "${libdir}"`
 confdir = `cygpath -m "${sysconfdir}"`
+export HOST_CC
+else
 # The mingw math.h has "extern inline" functions that dont appear in libs, so
 # optimisation is required to actually inline them
 AM_CFLAGS = -O
-else
-assembliesdir = $(libdir)
+assembliesdir = $(exec_prefix)/lib
 confdir = $(sysconfdir)
 endif
 
-bin_PROGRAMS = monosn pedump
+bin_PROGRAMS = pedump monodiet
 
-noinst_LTLIBRARIES = libmetadata.la libmonoruntime.la
+#
+# libtool is not capable of creating static/shared versions of the same
+# convenience lib, so we have to do it ourselves
+#
+noinst_LTLIBRARIES = libmonoruntime.la libmonoruntime-static.la
 
+INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/mono $(LIBGC_CFLAGS) $(GLIB_CFLAGS) $(GMODULE_CFLAGS) -DMONO_BINDIR=\"$(bindir)/\" -DMONO_ASSEMBLIES=\"$(assembliesdir)\" -DMONO_CFG_DIR=\"$(confdir)\"
 
-INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/mono $(LIBGC_CFLAGS) $(GLIB_CFLAGS) $(GMODULE_CFLAGS) $(ICU_CFLAGS) \
-       -DMONO_ASSEMBLIES=\"$(assembliesdir)\" -DMONO_CFG_DIR=\"$(confdir)\"
+#
+# 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.in.
+#
+assembly.lo mono-config.lo: Makefile
 
-if WITH_BUNDLE
-bundle_srcs = mono-bundle.s mono-bundle.h
-mono-bundle.s mono-bundle.h: $(BUNDLE_FILE) $(srcdir)/make-bundle.pl
-       perl $(srcdir)/make-bundle.pl $(BUNDLE_FILE) mono-bundle.h mono-bundle.s
-else
-bundle_srcs =
-endif
+CLEANFILES = mono-bundle.stamp
+
+libmonoruntime_static_la_LIBADD = $(bundle_obj) $(libmonoruntime_la_LIBADD)
 
 libmonoruntime_la_SOURCES = \
        reflection.c    \
        object.c        \
+       object-internals.h      \
        icall.c         \
+       icall-def.h             \
+       char-conversions.h \
        decimal.c       \
        decimal.h       \
+       boehm-gc.c      \
+       null-gc.c       \
+       sgen-gc.c       \
+       sgen-gc.h       \
        gc.c            \
        gc-internal.h   \
        marshal.c       \
        marshal.h       \
        monitor.c       \
        monitor.h       \
+       tabledefs.h \
        threads.c       \
+       threads-types.h \
        threadpool.c    \
+       threadpool.h    \
+       threadpool-internals.h  \
        file-io.c       \
        file-io.h       \
        socket-io.c     \
        socket-io.h     \
        exception.c     \
        exception.h     \
-       unicode.c       \
-       unicode.h       \
        appdomain.c     \
        debug-mono-symfile.h    \
        debug-mono-symfile.c    \
@@ -62,6 +80,8 @@ libmonoruntime_la_SOURCES = \
        profiler-private.h      \
        rand.h          \
        rand.c          \
+       security.c      \
+       security.h      \
        string-icalls.c \
        string-icalls.h \
        sysmath.h       \
@@ -72,55 +92,57 @@ libmonoruntime_la_SOURCES = \
        environment.h   \
        locales.c       \
        locales.h       \
+       normalization-tables.h  \
        filewatcher.c   \
-       filewatcher.h
-
-libmetadata_la_SOURCES = \
+       filewatcher.h   \
+       culture-info.h  \
+       culture-info-tables.h   \
+       security-manager.c      \
+       security-manager.h      \
+       console-io.c            \
+       console-io.h    \
        assembly.c      \
        domain.c        \
+       domain-internals.h      \
        opcodes.c       \
        image.c         \
+       cil-coff.h      \
        metadata.c      \
+       metadata-internals.h    \
        verify.c        \
        mono-endian.c   \
+       mono-endian.h   \
        mono-config.c   \
        mono-config.h   \
-       private.h       \
        rawbuffer.c     \
+       rawbuffer.h     \
        loader.c        \
        class.c         \
+       class-internals.h               \
        mempool.c       \
-       $(bundle_srcs)  \
        debug-helpers.c
 
-libmetadataincludedir = $(includedir)/mono/metadata
+libmonoruntime_static_la_SOURCES = $(libmonoruntime_la_SOURCES)
+
+libmonoruntime_static_la_LDFLAGS = -static
+
 libmonoruntimeincludedir = $(includedir)/mono/metadata
 
 libmonoruntimeinclude_HEADERS = \
        appdomain.h     \
        mono-debug.h    \
-       mono-debug-debugger.h   \
+       mono-gc.h       \
        debug-mono-symfile.h    \
-       threadpool.h    \
-       threads-types.h \
        threads.h       \
        environment.h   \
-       monitor.h       \
-       locales.h
-
-libmetadatainclude_HEADERS = \
        assembly.h      \
        opcodes.h       \
        blob.h          \
-       cil-coff.h      \
-       mono-endian.h   \
        image.h         \
        metadata.h      \
        verify.h        \
-       rawbuffer.h     \
        reflection.h    \
        row-indexes.h   \
-       tabledefs.h     \
        tokentype.h     \
        loader.h        \
        class.h         \
@@ -129,26 +151,25 @@ libmetadatainclude_HEADERS = \
        profiler.h      \
        appdomain.h     \
        debug-helpers.h \
-       mempool.h       \
-       rand.h
+       mempool.h
 
 pedump_SOURCES =               \
        pedump.c
 
-pedump_LDADD = libmetadata.la ../io-layer/libwapi.la ../utils/libmonoutils.la \
+pedump_LDADD = libmonoruntime.la ../io-layer/libwapi.la ../utils/libmonoutils.la \
        $(LIBGC_LIBS) $(GLIB_LIBS) $(GMODULE_LIBS) -lm
 
+monodiet_SOURCES = monodiet.c
 
-monosn_LDADD = \
-       libmetadata.la  \
+monodiet_LDADD = \
+       libmonoruntime.la       \
        ../io-layer/libwapi.la          \
        ../utils/libmonoutils.la        \
        $(LIBGC_LIBS)                   \
        $(GLIB_LIBS)                    \
        $(GMODULE_LIBS)                 \
+       $(ICU_LIBS)                     \
        -lm
 
-BUILT_SOURCES = $(bundle_srcs)
-
 EXTRA_DIST = make-bundle.pl sample-bundle