Made new dir for XML W3C conformance test suite
[mono.git] / mcs / class / System.XML / Makefile
index 964fced2967b58ad8001765e289f9d0be21dd2ba..0d6ea3bf1ae17131e1c9696ba861c2e4b1e377f0 100644 (file)
@@ -11,8 +11,25 @@ else
 SCARY_LIB=/lib:$(prefix)/lib /noconfig
 endif
 
+lib_file := $(wildcard ../lib/$(PROFILE)/System.Xml.dll)
+ifndef lib_file
+# In the basic profile, System.Xml.dll is _not_ a dependency of mcs.exe.  So, don't use boot compilation.
+# In other profiles, it _is_ a dependency of mcs.exe.  So, use boot compilation.
+ifneq (basic, $(PROFILE))
+USE_BOOT_COMPILE = yes
+endif
+endif
+
+ifeq (net_2_0, $(PROFILE))
+BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/net_2_0$(PLATFORM_PATH_SEPARATOR)$(topdir)/class/lib/net_2_0_bootstrap$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS)
+endif
+
+ifdef USE_BOOT_COMPILE
+LIBRARY_COMPILE = $(BOOT_COMPILE)
+endif
+
 LIB_MCS_FLAGS = $(SCARY_LIB) /unsafe /r:$(corlib) /r:System.dll /nowarn:0162 /nowarn:0618 /nowarn:0612
-TEST_MCS_FLAGS = $(LIB_MCS_FLAGS)
+TEST_MCS_FLAGS = $(LIB_MCS_FLAGS) -nowarn:0618 -nowarn:219 -nowarn:169
 
 EXTRA_DISTFILES = \
        Mono.System.XML.csproj          \
@@ -23,7 +40,6 @@ EXTRA_DISTFILES = \
        $(wildcard System.Xml.Serialization/standalone_tests/*.cs) \
        $(wildcard System.Xml.Serialization/standalone_tests/*.output) \
        System.Xml.XPath/Parser.jay     \
-       System.Xml.Query/XQueryParser.jay       \
        Test/Microsoft.Test.csproj      \
        Test/Mono.Test.csproj           \
        Test/MonoMicro.Test.csproj      \
@@ -36,9 +52,24 @@ EXTRA_DISTFILES = \
 System.Xml.XPath/Parser.cs: System.Xml.XPath/Parser.jay $(topdir)/jay/skeleton.cs
        $(topdir)/jay/jay -ct < $(topdir)/jay/skeleton.cs $< >$@
 
-System.Xml.Query/XQueryParser.cs: System.Xml.Query/XQueryParser.jay System.Xml.Query/skeleton-2.0.cs
-       $(topdir)/jay/jay -ct < System.Xml.Query/skeleton-2.0.cs $< >$@
+Mono.Xml.Xsl/PatternParser.jay: System.Xml.XPath/Parser.jay $(topdir)/jay/skeleton.cs
+       sed "s/\%start Expr/\%start Pattern/" $< >$@
+
+Mono.Xml.Xsl/PatternParser.cs: Mono.Xml.Xsl/PatternParser.jay $(topdir)/jay/skeleton.cs
+       echo "#define XSLT_PATTERN" > $@
+       $(topdir)/jay/jay -ct $< < $(topdir)/jay/skeleton.cs >>$@
+
+Mono.Xml.Xsl/PatternTokenizer.cs: System.Xml.XPath/Tokenizer.cs
+       echo "#define XSLT_PATTERN" > $@
+       cat $< >>$@
+
+BUILT_SOURCES = System.Xml.XPath/Parser.cs \
+       Mono.Xml.Xsl/PatternParser.cs \
+       Mono.Xml.Xsl/PatternTokenizer.cs
 
-CLEAN_FILES = Test/XmlFiles/xsl/result.xml System.Xml.XPath/Parser.cs System.Xml.Query/XQueryParser.cs
+CLEAN_FILES = Test/XmlFiles/xsl/result.xml \
+       System.Xml.XPath/Parser.cs \
+       Mono.Xml.Xsl/PatternParser.cs \
+       Mono.Xml.Xsl/PatternTokenizer.cs
 
 include ../../build/library.make