3 include ../../build/rules.make
7 # Because System.dll and Syste.Xml.dll have cyclic dependency we need two-pass build.
8 # 1st pass - build System.dll without System.Xml.dll reference
9 # 2nd pass - build System.dll with System.Xml.dll reference
11 LIB_MCS_FLAGS = /r:$(corlib)
12 TEST_MCS_FLAGS = /nowarn:1595 /nowarn:0618
14 CYCLIC_DEP = System.Xml.dll
17 System.Text.RegularExpressions/notes.txt \
18 System.ComponentModel.Design/Changelog \
22 include ../../build/library.make
26 LIB_MCS_FLAGS += /define:XML_DEP /r:$(CYCLIC_DEP)
28 $(the_lib): ../lib/$(PROFILE)/$(CYCLIC_DEP)
33 # 1. Build temporary System.dll without depending on System.Xml.dll
34 # 2. Since mcs.exe depends on System.dll, use BOOT_COMPILE to compile System.dll
35 LIBRARY_COMPILE = $(BOOT_COMPILE)
43 all-local install-local test-local run-test-local clean-local:
45 if test ! -f ../lib/$(PROFILE)/$(CYCLIC_DEP) ; then \
46 echo "Creating temporary $(LIBRARY) without $(CYCLIC_DEP) reference." ; \
47 $(MAKE) SECOND_PASS=yes $@ ; \
48 rm -f '$(depsdir)/$(PROFILE)_$(LIBRARY).stamp'; \
50 $(MAKE) SECOND_PASS=yes HAVE_SYSTEM_XML=yes $@ ; \