Add this, we had forgotten it
[mono.git] / mcs / class / Makefile
1 thisdir = class
2
3 MONO_POSIX := Mono.Posix
4 MONO_SYMBOLWRITER := Mono.CompilerServices.SymbolWriter
5
6 bootstrap_dirs := \
7         corlib                                  \
8         System                                  \
9         System.XML                              \
10         Mono.Security                           \
11         System.Security                         \
12         System.Configuration            \
13         System                                  \
14         $(MONO_SYMBOLWRITER)
15
16 # Note that Mono.Security and System.Security aren't listed.
17 # We may have to add those if 'mcs' starts using them.
18 basic_SUBDIRS := corlib System System.XML System
19
20 net_1_1_bootstrap_SUBDIRS := $(bootstrap_dirs) PEAPI
21 net_2_0_bootstrap_SUBDIRS := $(bootstrap_dirs)
22
23 include ../build/rules.make
24
25 # For now, Mono.Security.Win32 is built on Linux too.
26 # However, it isn't tested on Linux, since it depends on a Win32 dll.
27 SUBDIRS = \
28         corlib                          \
29         System                          \
30         System.XML                      \
31         Mono.Security                   \
32         System.Security                 \
33         System.Configuration    \
34         System                          \
35         I18N                            \
36         System.Drawing                  \
37         System.EnterpriseServices       \
38         Mono.C5                         \
39         Mono.Data.Tds                   \
40         System.Data                     \
41         Mono.Data                       \
42         Mono.GetOptions                 \
43         System.Web                      \
44         System.Web.Services             \
45         System.Runtime.Serialization.Formatters.Soap \
46         System.Runtime.Remoting         \
47         System.Configuration.Install    \
48         System.Management               \
49         $(MONO_SYMBOLWRITER)            \
50         Mono.Data.SqliteClient          \
51         Mono.Data.SybaseClient          \
52         Mono.Data.TdsClient             \
53         System.Data.OracleClient        \
54         $(MONO_POSIX)                   \
55         Accessibility                   \
56         Microsoft.VisualC               \
57         Cscompmgd                       \
58         Managed.Windows.Forms           \
59         Microsoft.VisualBasic           \
60         System.Design                   \
61         PEAPI                           \
62         Npgsql                          \
63         ICSharpCode.SharpZipLib         \
64         ByteFX.Data                     \
65         Commons.Xml.Relaxng             \
66         Novell.Directory.Ldap           \
67         Mono.Security.Win32             \
68         System.DirectoryServices        \
69         System.Messaging                \
70         System.ServiceProcess           \
71         System.Drawing.Design           \
72         Mono.Http                       \
73         Microsoft.Vsa                   \
74         Mono.Cairo                      \
75         IBM.Data.DB2                    \
76         Microsoft.JScript               \
77         FirebirdSql.Data.Firebird
78
79 # Starting with Microsoft.Vsa, the libraries above weren't in the
80 # Linux makefile.gnu before, but they build fine, so might as well
81 # include them ...
82 #
83
84 # These libraries below are either unimplemented or don't compile, but
85 # I wrote makefiles for them.
86
87 DIST_ONLY_SUBDIRS = \
88         Custommarshalers                \
89         Mono.Globalization
90
91 # No new makefiles for: System.Messaging, System.Web.Mobile,
92 # System.ServiceProcess
93
94 DISTFILES = \
95         ecma.pub                \
96         mono.pub                \
97         msfinal.pub             \
98         mono.snk                \
99         LICENSE                 \
100         README                  \
101         doc/API-notes           \
102         doc/NUnitGuidelines     \
103         doc/TemplateTest.cs     \
104         notes/BitVecto32.txt    \
105         $(monolite_files)
106
107 .PHONY: all-local $(STD_TARGETS:=-local)
108 all-local $(STD_TARGETS:=-local):
109         @:
110
111 basic_files = mcs.exe mscorlib.dll System.dll System.Xml.dll
112 monolite_files = $(basic_files:%=lib/monolite/%)
113
114 DIST_PROFILE_DIRS = basic net_1_1_bootstrap default net_2_0_bootstrap net_2_0
115
116 lib/monolite:
117         $(MKINSTALLDIRS) $@
118
119 $(monolite_files): lib/monolite/%: lib/basic/% lib/monolite
120         cp -p $< $@
121
122 $(basic_files:%=lib/basic/%):
123         cd $(topdir) && $(MAKE) profile-do--basic--all
124
125 dist-default: $(monolite_files)
126 dist-local: dist-default
127         -$(MKINSTALLDIRS) $(DIST_PROFILE_DIRS:%=$(distdir)/lib/%)