gluezilla/src:
[mono.git] / mcs / class / Makefile
1 thisdir = class
2
3 bootstrap_dirs := \
4         corlib                                  \
5         System                                  \
6         System.XML                              \
7         Mono.Security                           \
8         System.Security                         \
9         System.Configuration                    \
10         System                                  \
11         Mono.CompilerServices.SymbolWriter
12
13 # Note that Mono.Security and System.Security aren't listed.
14 # We may have to add those if 'mcs' starts using them.
15 basic_SUBDIRS := corlib System System.XML System
16
17 net_1_1_bootstrap_SUBDIRS := $(bootstrap_dirs) PEAPI
18 net_2_0_bootstrap_SUBDIRS := $(bootstrap_dirs) PEAPI
19
20 net_1_1_java_SUBDIRS = \
21         System.Xml                                      \
22         System.Data                                     \
23         System.Drawing                                  \
24         Novell.Directory.Ldap                           \
25         System.DirectoryServices                        \
26         System.Runtime.Serialization.Formatters.Soap    \
27         System.Runtime.Remoting
28
29 common_dirs := \
30         corlib                          \
31         System                          \
32         System.XML                      \
33         Mono.Security                   \
34         System                          \
35         System.Security                 \
36         System.Configuration            \
37         System                          \
38         System.XML                      \
39         I18N                            \
40         System.Drawing                  \
41         System.Transactions             \
42         System.EnterpriseServices       \
43         Mono.C5                         \
44         Mono.Data.Tds                   \
45         System.Data                     \
46         Mono.Data                       \
47         Mono.GetOptions                 \
48         Mono.CompilerServices.SymbolWriter \
49         Mono.Posix                      \
50         Accessibility                   \
51         Mono.WebBrowser                 \
52         Managed.Windows.Forms           \
53         Mono.Data.Sqlite                \
54         Mono.Data.SqliteClient          \
55         System.Web                      \
56         Mono.Web                        \
57         System.Web.Services             \
58         System.Web                      \
59         System.Runtime.Serialization.Formatters.Soap \
60         System.Runtime.Remoting         \
61         System.Configuration.Install    \
62         System.Management               \
63         Mono.Data.SybaseClient          \
64         Mono.Data.TdsClient             \
65         System.Data.OracleClient        \
66         Microsoft.VisualC               \
67         Cscompmgd                       \
68         System.Design                   \
69         PEAPI                           \
70         Npgsql                          \
71         Compat.ICSharpCode.SharpZipLib  \
72         ICSharpCode.SharpZipLib         \
73         Compat.ICSharpCode.SharpZipLib  \
74         ByteFX.Data                     \
75         Commons.Xml.Relaxng             \
76         Novell.Directory.Ldap           \
77         Mono.Security.Win32             \
78         System.DirectoryServices        \
79         System.Messaging                \
80         System.ServiceProcess           \
81         System.Drawing.Design           \
82         System.Design                   \
83         Mono.Http                       \
84         Microsoft.Vsa                   \
85         Mono.Cairo                      \
86         IBM.Data.DB2                    \
87         Microsoft.JScript               \
88         CustomMarshalers                \
89         OpenSystem.C
90
91 default_dirs :=         \
92         FirebirdSql.Data.Firebird       \
93         Mono.Cecil                      \
94         Mono.Cecil.Mdb          \
95
96 net_2_0_dirs := \
97         Microsoft.Build.Framework       \
98         Microsoft.Build.Utilities       \
99         Microsoft.Build.Engine          \
100         Microsoft.Build.Tasks           \
101         System.Core                     \
102         System.Web.Extensions           \
103         System.Web.Extensions.Design    \
104         System.Xml.Linq                 \
105         System.Data.DataSetExtensions   \
106         System.Data.Linq
107
108 net_2_1_dirs := \
109         corlib                  \
110         System                  \
111         System.Net              \
112         System.XML              \
113         System.Core
114
115 net_3_5_dirs := \
116         System.Web.Extensions           \
117         System.Web.Extensions.Design
118
119 default_SUBDIRS := $(common_dirs) $(default_dirs)
120 net_2_0_SUBDIRS := $(common_dirs) $(net_2_0_dirs)
121 net_2_1_bootstrap_SUBDIRS := $(net_2_1_dirs)
122 net_2_1_raw_SUBDIRS := $(net_2_1_dirs)
123 net_3_5_SUBDIRS := $(net_3_5_dirs)
124
125 include ../build/rules.make
126
127 SUBDIRS = $(common_dirs) $(default_dirs) $(net_2_0_dirs) $(net_2_1_dirs) $(net_3_5_dirs)
128
129 # These libraries below are either unimplemented or don't compile, but
130 #BROKEN_SUBDIRS =
131 #DIST_ONLY_SUBDIRS = $(BROKEN_SUBDIRS)
132
133 # No new makefiles for: System.Messaging, System.Web.Mobile,
134 # System.ServiceProcess
135
136 DISTFILES = \
137         ecma.pub                \
138         winfx.pub               \
139         mono.pub                \
140         msfinal.pub             \
141         silverlight.pub         \
142         mono.snk                \
143         LICENSE                 \
144         README                  \
145         doc/API-notes           \
146         doc/NUnitGuidelines     \
147         doc/TemplateTest.cs     \
148         notes/BitVecto32.txt    \
149         MicrosoftAjaxLibrary/License.htm        \
150         $(monolite_files)
151
152 .PHONY: all-local $(STD_TARGETS:=-local)
153 all-local $(STD_TARGETS:=-local):
154         @:
155
156 basic_files = mcs.exe mscorlib.dll System.dll System.Xml.dll
157 monolite_files = $(basic_files:%=lib/monolite/%)
158
159 lib/monolite:
160         $(MKINSTALLDIRS) $@
161
162 $(monolite_files): | lib/monolite
163 $(monolite_files): lib/monolite/%: lib/basic/%
164         cp -p $< $@
165
166 $(basic_files:%=lib/basic/%):
167         cd $(topdir) && $(MAKE) profile-do--basic--all
168
169 dist-default: $(monolite_files)
170 dist-local: dist-default