2009-01-26 Zoltan Varga <vargaz@gmail.com>
[mono.git] / web / web / makefile
1
2 MCSDIR=../../../mcs
3 PROFILE=default
4
5 ifeq ($(findstring CYGWIN,$(shell uname)),)
6 CSC=gmcs
7 RUN_MONO=MONO_PATH=$(MCSDIR)/class/lib/$(PROFILE) mono --debug
8 else
9 CSC=gmcs /nologo
10 RUN_MONO=MONO_PATH=$(MCSDIR)/class/lib/$(PROFILE) mono --debug
11 endif
12
13 CORCOMPARE=$(MCSDIR)/tools/corcompare
14
15 OBJECTS=                                        \
16         deploy/ado-net.html                     \
17         deploy/anoncvs.html                     \
18         deploy/asp-net.html                     \
19         deploy/beta1-press.html                 \
20         deploy/blogs.html                       \
21         deploy/books.html                       \
22         deploy/bugs.html                        \
23         deploy/contributing.html                \
24         deploy/contact.html                     \
25         deploy/c-sharp.html                     \
26         deploy/ccvs.html                        \
27         deploy/delegate.html                    \
28         deploy/documentation.html               \
29         deploy/download.html                    \
30         deploy/drawing.html                     \
31         deploy/compiling.html                   \
32         deploy/crypto.html                      \
33         deploy/embedded-api.html                \
34         deploy/faq.html                         \
35         deploy/firebird.html                    \
36         deploy/forge.html                       \
37         deploy/gcc-frontend.html                \
38         deploy/gtk-sharp.html                   \
39         deploy/hackers.html                     \
40         deploy/ideas.html                       \
41         deploy/ibmdb2.html                      \
42         deploy/index.html                       \
43         deploy/issues.html                      \
44         deploy/oldnews.html                     \
45         deploy/java.html                        \
46         deploy/jit-debug.html                   \
47         deploy/languages.html                   \
48         deploy/mailing-lists.html               \
49         deploy/mbas.html                        \
50         deploy/mono-beginning.html              \
51         deploy/mono-contribution-howto.html     \
52         deploy/mono-todo.html                   \
53         deploy/monodoc-xml.html                 \
54         deploy/mysql.html                       \
55         deploy/odbc.html                        \
56         deploy/oledb.html                       \
57         deploy/oracle.html                      \
58         deploy/other.html                       \
59         deploy/papers.html                      \
60         deploy/passport.html                    \
61         deploy/performance.html                 \
62         deploy/plans.html                       \
63         deploy/porting.html                     \
64         deploy/postgresql.html                  \
65         deploy/ppc.html                         \
66         deploy/provider-factory.html            \
67         deploy/rationale.html                   \
68         deploy/resources.html                   \
69         deploy/runtime.html                     \
70         deploy/screenshots.html                 \
71         deploy/sqlclient.html                   \
72         deploy/sqlite.html                      \
73         deploy/status.html                      \
74         deploy/sybase.html                      \
75         deploy/tdsclient.html                   \
76         deploy/team.html                        \
77         deploy/testing.html                     \
78         deploy/tools.html                       \
79         deploy/remap.html                       \
80         deploy/winforms.html                    \
81         deploy/xml-classes.html                 \
82         deploy/class-library.html               \
83         deploy/classlib-doc.html                \
84         deploy/class-status.html                \
85         deploy/class-status-mscorlib.html                       \
86         deploy/class-status-System.html                         \
87         deploy/class-status-System.Xml.html                     \
88         deploy/class-status-System.Configuration.Install.html   \
89         deploy/class-status-System.Data.html                    \
90         deploy/class-status-System.Data.OracleClient.html       \
91         deploy/class-status-System.Design.html                  \
92         deploy/class-status-System.Management.html              \
93         deploy/class-status-System.Messaging.html               \
94         deploy/class-status-System.Security.html                \
95         deploy/class-status-System.Web.html                     \
96         deploy/class-status-System.Web.Services.html            \
97         deploy/class-status-System.Drawing.html                 \
98         deploy/class-status-System.Drawing.Design.html          \
99         deploy/class-status-Microsoft.VisualBasic.html          \
100         deploy/class-status-System.Windows.Forms.html           \
101         deploy/class-status-System.DirectoryServices.html       \
102         deploy/class-status-System.EnterpriseServices.html      \
103         deploy/class-status-System.Runtime.Remoting.html        \
104         deploy/class-status-cscompmgd.html                      \
105         deploy/class-status-System.Runtime.Serialization.Formatters.Soap.html \
106         deploy/class-status-Microsoft.Build.Framework.html      \
107         deploy/class-status-Microsoft.Build.Engine.html         \
108         deploy/class-status-Microsoft.Build.Utilities.html      \
109         deploy/class-status-Microsoft.Build.Tasks.html
110
111 NET_2_0_COMPARES = \
112         deploy/class-status-System.Configuration.html
113
114 ifeq ($(PROFILE),net_2_0)
115         OBJECTS += $(NET_2_0_COMPARES)
116 endif
117
118
119 HTML_SOURCES = ../mono-roadmap.html
120
121 #2,Configuration.Install,class-status-System.Configuration.Install.html,class-status-System.Configuration.Install.src,cm/cormissing.css,cm/cormissing.js
122 #2,Runtime.Remoting,class-status-System.Runtime.Remoting.html,class-status-System.Runtime.Remoting.src,cm/cormissing.css,cm/cormissing.js
123
124 #       deploy/class-status-System.Configuration.Install.html   \
125 #       deploy/class-status-System.Runtime.Remoting.html        \
126
127 NON_HTML_SOURCES=               \
128         ../mono-build.sh        \
129         ../mono-build-w32.sh
130
131 all: $(OBJECTS) deploy/index.rss ../team
132         perl process.pl commands template.html.in deploy
133         cp $(HTML_SOURCES) deploy
134         test -d deploy/team || mkdir deploy/team
135         cp team/*png deploy/team
136
137 tutorial: mono-beginning.html.stamp mono-beginning.pdf 
138         cp -a mono-beginning mono-beginning.xml mono-beginning.pdf deploy
139
140 mono-beginning.html.stamp: mono-beginning.xml
141         db2html mono-beginning.xml
142         touch mono-beginning.html.stamp
143
144 mono-beginning.pdf: mono-beginning.xml
145         db2pdf mono-beginning.xml
146
147 mono-beginning.xml: ../mono-beginning.xml
148         cp ../mono-beginning.xml .
149
150 deploy/index.rss: mono-rss.exe ../index
151         $(RUN_MONO) ./mono-rss.exe ../index deploy/index.rss
152
153 mono-rss.exe: mono-rss.cs rss.cs 
154         $(CSC) mono-rss.cs rss.cs
155
156 ../team: render-team-page.exe team.xml
157         $(RUN_MONO) ./render-team-page.exe team.xml "../team"
158
159 render-team-page.exe: render-team-page.cs
160         $(CSC) render-team-page.cs
161
162 clean:
163         rm -f $(OBJECTS) $(patsubst deploy/%.html,src/%.src, $(OBJECTS)) src/*.xml src/*.html.in ../class-status-* ../class-status infos/*.xml
164
165 push:
166         cp -f $(NON_HTML_SOURCES) deploy
167         cp ../mono-roadmap.html deploy
168         #echo scp -P 2200 -r deploy/* www@www.go-mono.com:/web/cvsmodules/mono
169         (cd deploy; rsync --verbose --recursive --checksum --update --rsh='ssh' . mono-web@www.go-mono.com:go-mono)
170
171
172 push2: 
173         scp -r deploy/* primates:public_html/xxx
174
175 $(OBJECTS): $(patsubst deploy/%.html,src/%.src, $(OBJECTS))
176
177 transform.exe: transform.cs
178         $(CSC) transform.cs XhtmlWriter.cs
179
180
181 .PRECIOUS: src/%.src
182 src/%.src: ../% commands template.html.in makefile
183         perl htmlify $< > $@
184
185 .PRECIOUS: ../class-status-%
186 ../class-status-%: src/%.html.in ../class-status.in
187         cat ../class-status.in $< > $@
188
189
190 .PRECIOUS: src/%.html.in
191 src/%.html.in: src/%.xml transform.exe $(CORCOMPARE)/mono-api.xsl
192         $(RUN_MONO) ./transform.exe $< $(CORCOMPARE)/mono-api.xsl > $@ || (rm -f $@ && exit 1)
193
194
195 .PRECIOUS: infos/%.xml
196 infos/%.xml: ../../../mcs/class/lib/$(PROFILE)/%.dll $(CORCOMPARE)/mono-api-info.exe
197         $(RUN_MONO) $(CORCOMPARE)/mono-api-info.exe $(notdir $(basename $<)) > $@ || (rm -f $@ && exit 1)
198
199 .PRECIOUS: src/%.xml
200 src/%.xml: infos/%.xml $(CORCOMPARE)/mono-api-diff.exe 
201         $(RUN_MONO) $(CORCOMPARE)/mono-api-diff.exe masterinfos/$(notdir $<) $< > $@ || (rm -f $@ && exit 1)
202
203 ../class-status: ../class-status.in
204         cp -f $< $@
205
206 make-rss:
207         $(CSC) make-rss.cs -o