4621c406dd0bf230b3124a9ef264b9dfd1c037c9
[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
17
18 net_1_1_bootstrap_SUBDIRS := $(bootstrap_dirs) PEAPI
19 net_2_0_bootstrap_SUBDIRS := $(bootstrap_dirs) PEAPI
20
21 net_1_1_java_SUBDIRS = \
22         System.Xml                                      \
23         System.Data                                     \
24         System.Drawing                                  \
25         Novell.Directory.Ldap                           \
26         System.DirectoryServices                        \
27         System.Runtime.Serialization.Formatters.Soap    \
28         System.Runtime.Remoting
29
30 common_dirs := \
31         corlib                          \
32         System                          \
33         System.XML                      \
34         Mono.CompilerServices.SymbolWriter \
35         Mono.Security                   \
36         System                          \
37         System.Security                 \
38         System.Configuration            \
39         System                          \
40         System.XML                      \
41         I18N                            \
42         System.Drawing                  \
43         System.Transactions             \
44         System.EnterpriseServices       \
45         Mono.C5                         \
46         Mono.Data.Tds                   \
47         System.Data                     \
48         Mono.Data                       \
49         Mono.GetOptions                 \
50         Mono.Posix                      \
51         Accessibility                   \
52         Mono.WebBrowser                 \
53         Managed.Windows.Forms           \
54         Mono.Data.Sqlite                \
55         Mono.Data.SqliteClient          \
56         System.Web                      \
57         Mono.Web                        \
58         System.Web.Services             \
59         System.Web                      \
60         System.Runtime.Serialization.Formatters.Soap \
61         System.Runtime.Remoting         \
62         System.Configuration.Install    \
63         System.Management               \
64         Mono.Data.SybaseClient          \
65         Mono.Data.TdsClient             \
66         System.Data.OracleClient        \
67         Microsoft.VisualC               \
68         Cscompmgd                       \
69         System.Design                   \
70         PEAPI                           \
71         Npgsql                          \
72         Compat.ICSharpCode.SharpZipLib  \
73         ICSharpCode.SharpZipLib         \
74         Compat.ICSharpCode.SharpZipLib  \
75         ByteFX.Data                     \
76         Commons.Xml.Relaxng             \
77         Novell.Directory.Ldap           \
78         Mono.Security.Win32             \
79         System.DirectoryServices        \
80         RabbitMQ.Client                 \
81         Mono.Messaging                  \
82         System.Messaging                \
83         Mono.Messaging.RabbitMQ         \
84         System.ServiceProcess           \
85         System.Drawing.Design           \
86         System.Design                   \
87         Mono.Http                       \
88         Microsoft.Vsa                   \
89         Mono.Cairo                      \
90         IBM.Data.DB2                    \
91         Microsoft.JScript               \
92         CustomMarshalers                \
93         OpenSystem.C
94
95 net_1_1_dirs :=         \
96         FirebirdSql.Data.Firebird       \
97         Mono.Cecil                      \
98         Mono.Cecil.Mdb          \
99
100 net_2_0_dirs := \
101         Microsoft.Build.Framework       \
102         Microsoft.Build.Utilities       \
103         Microsoft.Build.Engine          \
104         Microsoft.Build.Tasks           \
105         System.Core                     \
106         System.Xml.Linq                 \
107         System.Runtime.Serialization    \
108         System.Data.DataSetExtensions   \
109         System.Data.Linq                \
110         System.Web                      \
111         System.Web.Abstractions         \
112         System.Web.Routing              \
113         System.Web.Extensions_1.0       \
114         System.Web.Extensions.Design_1.0        \
115         System.Web.Extensions           \
116         System.Web.Extensions.Design    \
117         System.ComponentModel.DataAnnotations   \
118         System.Web.DynamicData          \
119         System.IdentityModel            \
120         System.IdentityModel.Selectors  \
121         System.ServiceModel             \
122         System.ServiceModel.Web         \
123         System.Web.Mvc                  \
124         Mono.Management                 \
125         Mono.Options                    \
126         Mono.Simd                       \
127         Mono.Tasklets
128
129 net_2_1_dirs := \
130         corlib                  \
131         Mono.CompilerServices.SymbolWriter \
132         System                  \
133         System.Net              \
134         System.XML              \
135         System.Core             \
136         System.Xml.Linq \
137         System.Runtime.Serialization    \
138         System.ServiceModel     \
139         System.ServiceModel.Web
140
141 net_3_5_dirs := \
142         System.Web.Extensions.Design
143
144 net_1_1_SUBDIRS := $(common_dirs) $(net_1_1_dirs)
145 net_2_0_SUBDIRS := $(common_dirs) $(net_2_0_dirs)
146 net_2_1_bootstrap_SUBDIRS := corlib System Mono.CompilerServices.SymbolWriter
147 net_2_1_raw_SUBDIRS := $(net_2_1_dirs)
148 net_3_5_SUBDIRS := $(net_3_5_dirs)
149
150 include ../build/rules.make
151
152 SUBDIRS = $(common_dirs) $(net_1_1_dirs) $(net_2_0_dirs) $(net_2_1_dirs) $(net_3_5_dirs)
153
154 # These libraries below are either unimplemented or don't compile, but
155 #BROKEN_SUBDIRS =
156 #DIST_ONLY_SUBDIRS = $(BROKEN_SUBDIRS)
157
158 # No new makefiles for: System.Messaging, System.Web.Mobile,
159 # System.ServiceProcess
160
161 DISTFILES = \
162         ecma.pub                \
163         winfx.pub               \
164         mono.pub                \
165         msfinal.pub             \
166         silverlight.pub         \
167         mono.snk                \
168         LICENSE                 \
169         README                  \
170         doc/API-notes           \
171         doc/NUnitGuidelines     \
172         doc/TemplateTest.cs     \
173         notes/BitVecto32.txt    \
174         MicrosoftAjaxLibrary/License.htm        \
175         $(monolite_files)
176
177 .PHONY: all-local $(STD_TARGETS:=-local)
178 all-local $(STD_TARGETS:=-local):
179         @:
180
181 basic_files = mcs.exe mscorlib.dll System.dll System.Xml.dll
182 monolite_files = $(basic_files:%=lib/monolite/%)
183
184 lib/monolite:
185         $(MKINSTALLDIRS) $@
186
187 $(monolite_files): | lib/monolite
188 $(monolite_files): lib/monolite/%: lib/basic/%
189         cp -p $< $@
190
191 $(basic_files:%=lib/basic/%):
192         cd $(topdir) && $(MAKE) profile-do--basic--all
193
194 dist-default: $(monolite_files)
195 dist-local: dist-default