SUBDIRS :=
include ../build/rules.make
+PROGRAM = mcs.exe
+
EXTRA_DISTFILES = \
mcs.csproj \
mcs.sln \
cs-parser.jay \
mcs.exe.sources
-LIB_REFS = System System.Core System.Xml
+LIB_REFS = System.Core System.Xml System
+LOCAL_MCS_FLAGS += -d:STATIC,NO_SYMBOL_WRITER,NO_AUTHENTICODE
-ifeq (basic, $(PROFILE))
-PROGRAM = basic.exe
-sourcefile = mcs.exe.sources
-else
-PROGRAM_USE_INTERMEDIATE_FILE = true
-PROGRAM = mcs.exe
-the_libdir = $(topdir)/class/lib/build/
-LOCAL_MCS_FLAGS += -lib:$(topdir)/class/lib/build -debug
+ifndef NO_THREAD_ABORT
+REFERENCE_SOURCES_FLAGS += -d:MONO_FEATURE_THREAD_ABORT
endif
-LOCAL_MCS_FLAGS += -d:STATIC,NO_SYMBOL_WRITER,NO_AUTHENTICODE
-
-PROGRAM_INSTALL_DIR = $(mono_libdir)/mono/4.5
+ifndef NO_PROCESS_START
+REFERENCE_SOURCES_FLAGS += -d:MONO_FEATURE_PROCESS_START
+endif
-PROGRAM_COMPILE = $(BOOT_COMPILE)
+LOCAL_MCS_FLAGS += $(REFERENCE_SOURCES_FLAGS)
BUILT_SOURCES = cs-parser.cs
ls -l mcs2.exe mcs3.exe
mcs2.exe: $(PROGRAM)
- $(TIME) $(RUNTIME) $(RUNTIME_FLAGS) $(PROGRAM) $(USE_MCS_FLAGS) -target:exe -out:$@ $(BUILT_SOURCES) @$(response)
+ $(TIME) $(RUNTIME) $(RUNTIME_FLAGS) $(PROGRAM) $(USE_MCS_FLAGS) $(MCS_REFERENCES) -target:exe -out:$@ $(BUILT_SOURCES) $(EXTRA_SOURCES) @$(response)
mcs3.exe: mcs2.exe
- $(TIME) $(RUNTIME) $(RUNTIME_FLAGS) ./mcs2.exe $(USE_MCS_FLAGS) -target:exe -out:$@ $(BUILT_SOURCES) @$(response)
+ $(TIME) $(RUNTIME) $(RUNTIME_FLAGS) ./mcs2.exe $(USE_MCS_FLAGS) $(MCS_REFERENCES) -target:exe -out:$@ $(BUILT_SOURCES) $(EXTRA_SOURCES) @$(response)
wc:
wc -l $(BUILT_SOURCES) `cat $(sourcefile)`