3 include ../build/rules.make
40 all_sources = $(COMPILER_SOURCES) cs-parser.cs
45 compiler.csproj.user \
55 install-local: gmcs.exe
56 $(MKINSTALLDIRS) $(DESTDIR)$(prefix)/bin
57 $(INSTALL_BIN) gmcs.exe $(DESTDIR)$(prefix)/bin
60 -rm -f $(DESTDIR)$(prefix)/bin/mcs.exe
62 test-local run-test-local:
65 rm -f *.exe *.pdb cs-parser.cs y.output
67 dist-local: dist-default
69 gmcs.exe: $(all_sources)
70 $(BOOT_COMPILE) /target:exe /out:$@ $^
72 cs-parser.cs: cs-parser.jay $(topdir)/jay/skeleton.cs
73 $(topdir)/jay/jay -ctv < $(topdir)/jay/skeleton.cs $< >$@
79 # This used to be called test, but that conflicts with the global
82 btest: mcs2.exe mcs3.exe
83 ls -l mcs2.exe mcs3.exe
86 $(TIME) $(RUNTIME) ./gmcs.exe $(USE_MCS_FLAGS) /target:exe /out:$@ $(all_sources)
89 $(TIME) $(RUNTIME) ./mcs2.exe $(USE_MCS_FLAGS) /target:exe /out:$@ $(all_sources)
96 make btest USE_MCS_FLAGS=
98 # we need this because bash tries to use its own crappy timer
99 FRIENDLY_TIME = $(shell which time) -f'%U seconds'
103 $(FRIENDLY_TIME) $(RUNTIME) ./mcs.exe $(USE_MCS_FLAGS) /target:exe /out:mcs2.exe $(all_sources) > /dev/null || (echo FAILED; exit 1)
105 @ $(FRIENDLY_TIME) $(RUNTIME) ./mcs2.exe $(USE_MCS_FLAGS) /target:exe /out:mcs3.exe $(all_sources) > /dev/null || (echo FAILED; exit 1)
107 @ rm -f ../class/lib/mscorlib.dll
108 @ (cd ../class/corlib ; make BOOTSTRAP_MCS="$(FRIENDLY_TIME) mono ../../mcs/mcs.exe" > /dev/null ) || (echo FAILED; exit 1)
112 @ rm -f ../class/lib/mscorlib.dll
113 @ (cd ../class/corlib ; make BOOTSTRAP_MCS="$(FRIENDLY_TIME) mono ../../mcs/mcs.exe" > /dev/null ) || (echo FAILED; exit 1)
118 $(RUNTIME) --profile=$(PROFILER) ./mcs.exe $(USE_MCS_FLAGS) /target:exe /out:mcs2.exe $(all_sources)
121 echo $(all_sources) > res