2001-12-11 Duncan Mak <duncan@ximian.com>
[mono.git] / mcs / class / corlib / corlib.build
1 <?xml version="1.0" encoding="iso-8859-1"?>
2
3 <!-- NAnt build file for corlib.dll -->
4 <!-- Target windows builds libraries _for_ windows -->
5 <!-- Target linux builds libraries _for_ linux -->
6
7 <project name="corlib" default="linux">
8         <property name="debug" value="false"/>
9
10         <target name="windows">
11                 <mkdir dir="../lib"/>
12                 <csc target="library" output="../lib/corlib.dll" debug="${debug}">
13                         <arg value="/nowarn:1595"/>
14                         <arg value="/nowarn:0649"/> <!-- field never assigned to -->
15                         <arg value="/nowarn:0169"/> <!-- field never used -->
16                         <arg value="/unsafe"/>
17                         <sources>
18                                 <includes name="**/*.cs"/> 
19                                 <excludes name="Test/**"/>
20                                 <excludes name="Linux/**"/>
21                                 <excludes name="System.PAL/IOperatingSystem.cs"/>
22                                 <excludes name="System.Resources/*"/>
23                         </sources>
24                 </csc>
25                 <csc target="library" output="Test/corlib_res.dll" debug="${debug}">
26                         <arg value="/nowarn:1595"/>
27                         <arg value="/nowarn:0649"/> <!-- field never assigned to -->
28                         <arg value="/nowarn:0169"/> <!-- field never used -->
29                         <arg value="/unsafe"/>
30                         <sources>
31                                 <includes name="**/*.cs"/>
32                                 <excludes name="Test/**"/>
33                                 <excludes name="Linux/**"/>
34                                 <excludes name="System/Object.cs"/>
35                                 <excludes name="System/ValueType.cs"/>
36                                 <excludes name="System/Type.cs"/>
37                                 <excludes name="System/Array.cs"/>
38                                 <excludes name="System/String.cs"/>
39                                 <excludes name="System/Console.cs"/>
40                                 <excludes name="System/AppDomain.cs"/>
41                                 <excludes name="System.Reflection.Emit/**"/>
42                                 <excludes name="System/RuntimeTypeHandle.cs"/>
43                                 <excludes name="System.PAL/IOperatingSystem.cs"/>
44                                 <excludes name="System.Collections/Queue.cs"/>
45                                 <excludes name="System.Resources/*"/>
46                         </sources>
47                 </csc>
48                 <nant basedir="Test" target="build"/>
49         </target>
50
51         <target name="linux">
52                 <mkdir dir="../lib"/>
53                 <csc target="library" output="../lib/corlib.dll" debug="${debug}">
54                         <arg value="/nowarn:1595"/>
55                         <arg value="/nowarn:0649"/> <!-- field never assigned to -->
56                         <arg value="/nowarn:0169"/> <!-- field never used -->
57                         <arg value="/unsafe"/>
58                         <sources>
59                                 <includes name="**/*.cs"/>
60                                 <excludes name="Test/**"/>
61                                 <excludes name="Windows/**"/>
62                                 <excludes name="System.PAL/IOperatingSystem.cs"/>
63                                 <excludes name="System.Resources/*"/>
64                         </sources>
65                 </csc>
66                 <!-- NUnit can only run under windows right now, so build for windows
67                         even though this is inside the linux target -->
68                 <csc target="library" output="Test/corlib_res.dll" debug="${debug}">
69                         <arg value="/nowarn:1595"/>
70                         <arg value="/nowarn:0649"/> <!-- field never assigned to -->
71                         <arg value="/nowarn:0169"/> <!-- field never used -->
72                         <arg value="/unsafe"/>
73                         <sources>
74                                 <includes name="**/*.cs"/>
75                                 <excludes name="Test/**"/>
76                                 <excludes name="Linux/**"/>
77                                 <excludes name="System/Object.cs"/>
78                                 <excludes name="System/ValueType.cs"/>
79                                 <excludes name="System/Type.cs"/>
80                                 <excludes name="System/MonoType.cs"/>
81                                 <excludes name="System/Array.cs"/>
82                                 <excludes name="System/String.cs"/>
83                                 <excludes name="System/Console.cs"/>
84                                 <excludes name="System/AppDomain.cs"/>
85                                 <excludes name="System.Reflection.Emit/**"/>
86                                 <excludes name="System/RuntimeTypeHandle.cs"/>
87                                 <excludes name="System.PAL/IOperatingSystem.cs"/>
88                                 <excludes name="System.Collections/Queue.cs"/>
89                                 <excludes name="System.Resources/*"/>
90                         </sources>
91                 </csc>
92                 <nant basedir="Test" target="build"/>
93         </target>
94
95         <target name="test" depends="linux">
96                 <nant basedir="Test" target="test"/>
97         </target>
98
99         <target name="clean">
100                 <delete file="../lib/corlib.dll" failonerror="false"/>
101                 <delete file="Test/corlib_res.dll" failonerror="false"/>
102                 <nant basedir="Test" target="clean"/>
103         </target>
104 </project>