ongoing implementation.
[mono.git] / mcs / class / Makefile
1 thisdir = class
2
3 bootstrap_dirs := \
4         corlib                                  \
5         Mono.CompilerServices.SymbolWriter      \
6         System                                  \
7         System.XML                              \
8         Mono.Security                           \
9         System.Security                         \
10         System.Configuration                    \
11         System
12
13
14 # Note that Mono.Security and System.Security aren't listed.
15 # We may have to add those if 'mcs' starts using them.
16 basic_SUBDIRS := corlib System System.XML System Mono.Security Mono.CompilerServices.SymbolWriter System.Core
17
18 net_1_1_java_SUBDIRS = \
19         System.Xml                                      \
20         System.Data                                     \
21         System.Drawing                                  \
22         Novell.Directory.Ldap                           \
23         System.DirectoryServices                        \
24         System.Runtime.Serialization.Formatters.Soap    \
25         System.Runtime.Remoting
26
27 common_dirs := \
28         corlib                          \
29         System                          \
30         System.XML                      \
31         Mono.CompilerServices.SymbolWriter \
32         Mono.Posix                      \
33         System.Core                     \
34         Mono.Security                   \
35         System                          \
36         System.Security                 \
37         System.Configuration            \
38         System                          \
39         System.XML                      \
40         I18N                            \
41         System.Drawing                  \
42         System.Transactions             \
43         System.EnterpriseServices       \
44         Mono.Data.Tds                   \
45         System.Data                     \
46         Accessibility                   \
47         Mono.WebBrowser                 \
48         Managed.Windows.Forms           \
49         Mono.Data.Sqlite                \
50         System.Web                      \
51         Mono.Web                        \
52         System.Web.Services             \
53         System.Web                      \
54         System.Runtime.Serialization.Formatters.Soap \
55         System.Runtime.Remoting         \
56         System.Configuration.Install    \
57         System.Management               \
58         System.Data.OracleClient        \
59         Microsoft.VisualC               \
60         Cscompmgd                       \
61         System.Design                   \
62         PEAPI                           \
63         Npgsql                          \
64         Compat.ICSharpCode.SharpZipLib  \
65         ICSharpCode.SharpZipLib         \
66         Compat.ICSharpCode.SharpZipLib  \
67         Commons.Xml.Relaxng             \
68         Novell.Directory.Ldap           \
69         Mono.Security.Win32             \
70         System.DirectoryServices        \
71         RabbitMQ.Client                 \
72         Mono.Messaging                  \
73         System.Messaging                \
74         Mono.Messaging.RabbitMQ         \
75         System.ServiceProcess           \
76         System.Drawing.Design           \
77         System.Design                   \
78         Mono.Http                       \
79         Mono.Cairo                      \
80         IBM.Data.DB2                    \
81         CustomMarshalers                \
82         OpenSystem.C                    \
83         Mono.Cecil                      \
84         Mono.Cecil.Mdb                  \
85         Mono.Debugger.Soft              \
86         SystemWebTestShim
87
88 net_2_0_dirs := \
89         Microsoft.Build.Framework       \
90         Microsoft.Build.Utilities       \
91         Microsoft.Build.Engine          \
92         Microsoft.Build.Tasks           \
93         System.Xml.Linq                 \
94         System.Runtime.Serialization    \
95         System.Data.DataSetExtensions   \
96         System.Data.Linq                \
97         System.Web                      \
98         System.Web.Abstractions         \
99         System.Web.Routing              \
100         System.IdentityModel            \
101         System.IdentityModel.Selectors  \
102         System.ServiceModel             \
103         System.Web.Extensions           \
104         System.Web.Extensions.Design    \
105         System.ComponentModel.DataAnnotations   \
106         System.Web.DynamicData          \
107         System.ServiceModel.Web         \
108         System.Web.Mvc                  \
109         System.Web.Mvc2                 \
110         Mono.C5                         \
111         Mono.Management                 \
112         Mono.Options                    \
113         Mono.Simd                       \
114         Mono.Tasklets                   \
115         Mono.CSharp                     \
116         WindowsBase                     \
117         System.Data.Services
118
119 net_2_0_only_dirs := \
120         System.Web.Extensions_1.0       \
121         System.Web.Extensions.Design_1.0
122
123 moonlight_dirs := \
124         corlib                  \
125         Mono.CompilerServices.SymbolWriter \
126         System.Core             \
127         System                  \
128         System.XML              \
129         System.Net              \
130         System.Xml.Linq \
131         System.Xml.Serialization        \
132         System.Runtime.Serialization    \
133         System.ServiceModel     \
134         System.ServiceModel.Web
135
136 monotouch_dirs := \
137         corlib  \
138         Mono.CompilerServices.SymbolWriter      \
139         System.Core     \
140         System  \
141         System.XML      \
142         Mono.Security   \
143         System  \
144         I18N            \
145         System.Xml.Linq \
146         System.Runtime.Serialization    \
147         System.ServiceModel     \
148         System.ServiceModel.Web \
149         System.Json     \
150         System.Web.Services     \
151         Mono.Data.Tds   \
152         System.Transactions     \
153         System.Data     \
154         Mono.Cairo      \
155         Mono.Data.Sqlite
156
157 net_3_5_dirs := \
158         Microsoft.Build.Framework       \
159         Microsoft.Build.Utilities       \
160         Microsoft.Build.Engine          \
161         Microsoft.Build.Tasks           \
162         System.Web.Extensions.Design    
163
164 net_4_0_dirs := \
165         System.Dynamic          \
166         System.Numerics         \
167         Microsoft.CSharp        \
168         System.Windows.Forms.DataVisualization  \
169         System.ComponentModel.Composition \
170         System.Xaml \
171         System.ServiceModel.Routing \
172         System.Runtime.Caching
173
174 net_2_0_bootstrap_SUBDIRS := $(bootstrap_dirs)
175 net_2_0_SUBDIRS := $(common_dirs) $(net_2_0_dirs) $(net_2_0_only_dirs)
176 moonlight_bootstrap_SUBDIRS := corlib System Mono.CompilerServices.SymbolWriter System.Core
177 moonlight_raw_SUBDIRS := $(moonlight_dirs)
178 monotouch_bootstrap_SUBDIRS := corlib System Mono.CompilerServices.SymbolWriter System.Core
179 monotouch_SUBDIRS := $(monotouch_dirs)
180 net_3_5_SUBDIRS := $(net_3_5_dirs)
181 net_4_0_bootstrap_SUBDIRS := $(bootstrap_dirs) Mono.Posix System.Core
182 net_4_0_SUBDIRS := $(common_dirs) $(net_2_0_dirs) $(net_4_0_dirs)
183
184 include ../build/rules.make
185
186 SUBDIRS = $(common_dirs) $(net_2_0_dirs) $(net_2_0_only_dirs) $(moonlight_dirs) $(monotouch_dirs) $(net_3_5_dirs) $(net_4_0_dirs)
187
188 DIST_ONLY_SUBDIRS = dlr
189
190 # No new makefiles for: System.Messaging, System.Web.Mobile,
191 # System.ServiceProcess
192
193 DISTFILES = \
194         ecma.pub                \
195         winfx.pub               \
196         winfx3.pub              \
197         mono.pub                \
198         msfinal.pub             \
199         silverlight.pub         \
200         mono.snk                \
201         LICENSE                 \
202         README                  \
203         doc/API-notes           \
204         doc/NUnitGuidelines     \
205         doc/TemplateTest.cs     \
206         notes/BitVecto32.txt    \
207         MicrosoftAjaxLibrary/License.htm        \
208         $(monolite_files)
209
210 .PHONY: all-local $(STD_TARGETS:=-local)
211 all-local $(STD_TARGETS:=-local):
212         @:
213
214 # What is this used for ?
215
216 basic_files = gmcs.exe mscorlib.dll System.dll System.Xml.dll Mono.Security.dll System.Core.dll
217 monolite_files = $(basic_files:%=lib/monolite/%)
218
219 lib/monolite:
220         $(MKINSTALLDIRS) $@
221
222 $(monolite_files): | lib/monolite
223 $(monolite_files): lib/monolite/%: lib/basic/%
224         cp -p $< $@
225
226 $(basic_files:%=lib/basic/%):
227         cd $(topdir) && $(MAKE) profile-do--basic--all
228
229 dist-default: $(monolite_files)
230 dist-local: dist-default
231
232 csproj-local:
233