3 include ../build/rules.make
5 with_mono_path = MONO_PATH="$(topdir)/class/lib/$(PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH"
7 ifeq (default, $(PROFILE))
8 # force this, we don't case if CSC is broken. This also
9 # means we can use --options, yay.
11 MCS = $(with_mono_path) $(INTERNAL_MCS)
14 GENERICS_COMPILE = $(CSCOMPILE) /target:library
24 $(wildcard *.response) \
25 mcs-expect-no-error mcs-expect-wrong-error mcs-ignore-tests \
26 gmcs-expect-no-error gmcs-expect-wrong-error gmcs-ignore-tests \
27 generics-expect-no-error generics-expect-wrong-error \
28 $(wildcard known-issues-*)
30 all-local: CS0118-2-lib.dll CS0122-10-lib.dll CS0534-3-lib.dll CS0534-4-lib.dll CS0571-3-lib.dll \
31 CS0612-2-lib.dll CS0618-2-lib.dll CS0619-8-lib.dll CS0619-17-lib.dll CS0619-32-lib.dll CS0619-33-lib.dll CS0619-36-lib.dll \
32 CS3005-16-lib.dll CS3013-module.dll
34 test-local: TestRunner-$(PROFILE).exe
36 run-test-ondotnet-local:
38 # again, run-test is when the tests actually happen, so
39 # don't compile on make test.
41 run-test-local: run-mcs-tests
44 $(MAKE) PROFILE=default run-test
45 $(MAKE) PROFILE=net_2_0 run-test
47 ifeq (net_2_0, $(PROFILE))
49 COMPILER = $(topdir)/gmcs/gmcs.exe
50 TEST_PATTERN = '*cs*.cs'
53 COMPILER = $(topdir)/class/lib/$(PROFILE)/mcs.exe
54 TEST_PATTERN = 'cs*.cs'
57 ifeq (net_2_0, $(PROFILE))
60 @./do-tests.pl gmcs '$(CSCOMPILE)' "cs*.cs"
62 @./do-tests.pl generics '$(GENERICS_COMPILE)' "gcs*.cs"
64 run-mcs-tests: TestRunner-$(PROFILE).exe
65 $(with_mono_path) $(RUNTIME) TestRunner-$(PROFILE).exe $(COMPILER_NAME) $(COMPILER) known-issues-$(COMPILER_NAME) $(COMPILER_NAME).log
69 rm -f *.exe *.dll *.log *.mdb dummy.xml *.junk
71 dist-local: dist-default
73 install-local uninstall-local:
76 $(BOOTSTRAP_MCS) /target:library /out:$@ $<
78 %-module.dll: %-module.cs
79 $(BOOTSTRAP_MCS) /target:module /out:$@ $<
81 TestRunner-$(PROFILE).exe: TestRunner.cs
82 $(CSCOMPILE) /out:$@ TestRunner.cs