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