Update mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/RelaxngPattern.cs
[mono.git] / mcs / class / System.Web / Makefile
1 thisdir = class/System.Web
2 SUBDIRS = Test
3 include ../../build/rules.make
4
5 LIBRARY = System.Web.dll
6
7 ifneq (1, $(FRAMEWORK_VERSION_MAJOR))
8
9 LIBRARY_USE_INTERMEDIATE_FILE = yes
10
11 # Because System.Web.dll and System.Web.Services.dll have a cyclic dependency, we need a two-pass build.
12 # 1st pass - build System.Web.dll without System.Web.Services.dll reference
13 # 2nd pass - build System.Web.dll with System.Web.Services.dll reference
14
15 WEBSERVICES_DEP := System.Web.Services.dll
16 WEBSERVICES_DEP_FILE := $(wildcard ../lib/$(PROFILE)/$(WEBSERVICES_DEP))
17 MONOWEB_DEP := Mono.Web.dll
18 MONOWEB_DEP_FILE := $(wildcard ../lib/$(PROFILE)/$(MONOWEB_DEP))
19 ifndef NO_SYSTEMCORE_DEP
20 SYSTEMCORE_DEP := System.Core.dll
21 SYSTEMCORE_DEP_FILE := $(wildcard ../lib/$(PROFILE)/$(SYSTEMCORE_DEP))
22 endif
23 CYCLIC_DEPS := $(WEBSERVICES_DEP) $(MONOWEB_DEP) 
24 CYCLIC_DEP_FILES := $(WEBSERVICES_DEP_FILE) $(MONOWEB_DEP_FILE)
25 endif
26
27 RESOURCE_FILES_1= \
28         resources/WebUIValidation.js
29
30 RESOURCE_FILES_2 = \
31         resources/folder.gif \
32         resources/file.gif \
33         resources/computer.gif \
34         resources/arrow_minus.gif \
35         resources/arrow_noexpand.gif \
36         resources/arrow_plus.gif \
37         resources/arrow_up.gif \
38         resources/arrow_down.gif \
39         resources/box_full.gif \
40         resources/box_empty.gif \
41         resources/box_minus.gif \
42         resources/box_noexpand.gif \
43         resources/box_plus.gif \
44         resources/contact.gif \
45         resources/dot_empty.gif \
46         resources/dot_full.gif \
47         resources/dots.gif \
48         resources/inbox.gif \
49         resources/star_empty.gif \
50         resources/star_full.gif \
51         resources/warning.gif \
52         resources/TreeView_noexpand.gif \
53         resources/TreeView_dash.gif \
54         resources/TreeView_dashminus.gif \
55         resources/TreeView_dashplus.gif \
56         resources/TreeView_i.gif \
57         resources/TreeView_l.gif \
58         resources/TreeView_lminus.gif \
59         resources/TreeView_lplus.gif \
60         resources/TreeView_minus.gif \
61         resources/TreeView_plus.gif \
62         resources/TreeView_r.gif \
63         resources/TreeView_rminus.gif \
64         resources/TreeView_rplus.gif \
65         resources/TreeView_t.gif \
66         resources/TreeView_tminus.gif \
67         resources/TreeView_tplus.gif \
68         resources/transparent.gif \
69         resources/webform.js \
70         resources/WebUIValidation_2.0.js \
71         resources/ErrorTemplateCommon_Top.html \
72         resources/DefaultErrorTemplate_CustomErrorDefault.html \
73         resources/ErrorTemplateCommon_Bottom.html \
74         resources/DefaultErrorTemplate_StandardPage.html \
75         resources/HtmlizedExceptionPage_Top.html \
76         resources/HtmlizedExceptionPage_FileLongSource.html \
77         resources/HtmlizedExceptionPage_FileShortSource.html \
78         resources/HtmlizedExceptionPage_CompilerOutput.html \
79         System.Web.UI.WebControls/GridView.js \
80         System.Web.UI.WebControls/DetailsView.js \
81         System.Web.UI.WebControls/TreeView.js \
82         System.Web.UI.WebControls/Menu.js
83
84 RESOURCE_FILES_4 = \
85         System.Web.UI.WebControls/MenuModern.js
86
87 OTHER_RES = $(RESOURCE_FILES_1)
88 TEST_APP_CODE_FILES = \
89         Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs \
90         Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs \
91         Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs
92
93 TEST_APP_GLOBALRESOURCES_FILES = \
94         Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx \
95         Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx \
96         Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx
97
98 TEST_RESOURCE_FILES = \
99         Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax \
100         Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx \
101         Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master \
102         Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx \
103         Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs \
104         Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx \
105         Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config \
106         Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 \
107         Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap \
108         Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap \
109         Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap \
110         Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap \
111         Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap \
112         Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap \
113         Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap \
114         Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap \
115         Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap \
116         Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap \
117         Test/mainsoft/NunitWebResources/menuclass.aspx \
118         Test/mainsoft/NunitWebResources/FormView.aspx \
119         Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx \
120         Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx \
121         Test/mainsoft/NunitWebResources/PageWithTheme.aspx \
122         Test/mainsoft/NunitWebResources/ResolveUrl.ascx \
123         Test/mainsoft/NunitWebResources/ResolveUrl.aspx \
124         Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx \
125         Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx \
126         Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx \
127         Test/mainsoft/NunitWebResources/Theme1.skin \
128         Test/mainsoft/NunitWebResources/Theme2.skin \
129         Test/mainsoft/NunitWebResources/UrlProperty.aspx \
130         Test/mainsoft/NunitWebResources/UrlProperty.ascx \
131         Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs \
132         Test/mainsoft/NunitWebResources/Web.sitemap \
133         Test/mainsoft/NunitWebResources/WizardTest.skin \
134         Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx \
135         Test/mainsoft/NunitWebResources/DataGrid.aspx \
136         Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx \
137         Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx \
138         Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx \
139         Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx \
140         Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx \
141         Test/mainsoft/NunitWebResources/Bluehills.jpg \
142         Test/mainsoft/NunitWebResources/FormViewTest1.aspx \
143         Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx \
144         Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx \
145         Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx \
146         Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx \
147         Test/mainsoft/NunitWebResources/GridViewUpdate.aspx \
148         Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml \
149         Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl \
150         Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx \
151         Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx \
152         Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx \
153         Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx \
154         Test/mainsoft/NunitWebResources/LoginViewTest1.aspx \
155         Test/mainsoft/NunitWebResources/WebControl.config \
156         Test/mainsoft/NunitWebResources/WebLogin.config \
157         Test/mainsoft/NunitWebResources/CallbackTest1.aspx \
158         Test/mainsoft/NunitWebResources/CallbackTest2.aspx \
159         Test/mainsoft/NunitWebResources/EventValidationTest2.aspx \
160         Test/mainsoft/NunitWebResources/EventValidationTest1.aspx \
161         Test/mainsoft/NunitWebResources/ClientScript.js \
162         Test/mainsoft/NunitWebResources/EvalTest.aspx \
163         Test/mainsoft/NunitWebResources/TemplateUserControl.ascx \
164         Test/mainsoft/NunitWebResources/WebMapping.config \
165         Test/mainsoft/NunitWebResources/Mapping.aspx \
166         Test/mainsoft/NunitWebResources/Mapping1.aspx \
167         Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx \
168         Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx \
169         Test/mainsoft/NunitWebResources/MyDerived.master \
170         Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx \
171         Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx \
172         Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx \
173         Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx \
174         Test/mainsoft/NunitWebResources/PageValidationTest.aspx \
175         Test/mainsoft/NunitWebResources/AsyncPage.aspx \
176         Test/mainsoft/NunitWebResources/PageCultureTest.aspx \
177         Test/mainsoft/NunitWebResources/adapters.browser \
178         Test/mainsoft/NunitWebResources/NoEventValidation.aspx \
179         Test/mainsoft/NunitWebResources/ListControlPage.aspx \
180         Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx \
181         Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx \
182         Test/mainsoft/NunitWebResources/RedirectOnError.aspx \
183         Test/mainsoft/NunitWebResources/TestCapability.browser \
184         Test/mainsoft/NunitWebResources/PageWithAdapter.aspx \
185         Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx \
186         Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx \
187         Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx \
188         Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx \
189         Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx \
190         Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx \
191         Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx \
192         Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx \
193         Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx \
194         Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx \
195         Test/mainsoft/MainsoftWebTest/nunitweb_config.xml \
196         Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx \
197         Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx \
198         Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master \
199         Test/mainsoft/NunitWebResources/MissingMasterFile.aspx \
200         Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx \
201         Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx \
202         Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs \
203         Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx \
204         Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx \
205         Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx \
206         Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx \
207         Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx \
208         Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx \
209         Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx \
210         Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx \
211         Test/mainsoft/NunitWebResources/FullTagsInText.aspx \
212         Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx \
213         Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx \
214         Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx \
215         Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx \
216         Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx \
217         Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx \
218         Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx \
219         Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx \
220         Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs \
221         Test/mainsoft/NunitWebResources/NestedParserFileText.aspx \
222         Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx \
223         Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx \
224         Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs \
225         Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx \
226         Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx \
227         Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx \
228         Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx \
229         Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx \
230         Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx \
231         Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx \
232         Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx \
233         Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx \
234         Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx \
235         Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx \
236         Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx \
237         Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx \
238         Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx \
239         Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx \
240         Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx \
241         Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx \
242         Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx \
243         Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx \
244         Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx \
245         Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs \
246         Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx
247
248 RESX_DIST =  resources/TranslationResources.resx
249 ifneq (1, $(FRAMEWORK_VERSION_MAJOR))
250 RESX_RES = $(RESX_DIST:.resx=.resources)
251 endif
252
253 NUNIT_RESOURCE_FILES = $(TEST_RESOURCE_FILES)
254 NUNIT_APP_CODE_FILES = $(TEST_APP_CODE_FILES)
255 NUNIT_APP_GLOBALRESOURCES_FILES = $(TEST_APP_GLOBALRESOURCES_FILES)
256
257 ifneq (1, $(FRAMEWORK_VERSION_MAJOR))
258 OTHER_RES += $(RESOURCE_FILES_2)
259 OTHER_LIB_MCS_FLAGS = -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll
260 endif
261
262 ifeq (4, $(FRAMEWORK_VERSION_MAJOR))
263 OTHER_LIB_MCS_FLAGS += -r:System.Web.ApplicationServices.dll
264 OTHER_RES += $(RESOURCE_FILES_4)
265 endif
266
267 LIB_MCS_FLAGS = \
268         -unsafe \
269         -nowarn:612,618 \
270         -r:$(corlib)                    \
271         -r:System.dll                   \
272         -r:System.Drawing.dll           \
273         -r:System.Data.dll              \
274         -r:System.Xml.dll               \
275         -r:System.EnterpriseServices.dll \
276         $(OTHER_LIB_MCS_FLAGS) \
277         $(RESX_RES:%=/resource:%) \
278         $(OTHER_RES:%=/resource:%)
279
280 ifneq ($(CYCLIC_DEPS:%=../lib/$(PROFILE)/%), $(CYCLIC_DEP_FILES))
281 NO_SIGN_ASSEMBLY = yes
282 NO_INSTALL = yes
283 all-local: System.Web/UplevelHelper.cs resources/TranslationResources.resources echo-warning echo-warning-systemcore
284 .PHONY: echo-warning echo-warning-systemcore
285
286 ifeq   (, $(strip $(CYCLIC_DEP_FILES)))
287 echo-warning:
288         @echo "** Warning: System.Web.dll built without parts that depend on: $(CYCLIC_DEPS)"
289 endif
290 endif
291
292 ifeq (4, $(FRAMEWORK_VERSION_MAJOR))
293 ifndef SYSTEMCORE_DEP_FILE
294 echo-warning-systemcore:
295         @echo "** Warning: System.Web.dll built without parts that depend on $(SYSTEMCORE_DEP)"
296 endif
297 endif
298
299 TEST_MCS_FLAGS = $(LIB_MCS_FLAGS) -doc:$(test_lib:.dll=.xml) -nowarn:219,169,1591 -r:SystemWebTestShim.dll \
300         $(NUNIT_RESOURCE_FILES:%=/resource:%) \
301         $(foreach file,$(NUNIT_APP_CODE_FILES),$(shell echo $(file) | sed -e 's;\(.*\)/\(.*\);/resource:\1/\2,App_Code/\2 ;g')) \
302         $(foreach file,$(NUNIT_APP_GLOBALRESOURCES_FILES),$(shell echo $(file) | sed -e 's;\(.*\)/\(.*\);/resource:\1/\2,App_GlobalResources/\2 ;g'))
303
304 ifeq (net_2_0, $(PROFILE))
305 TEST_MCS_FLAGS += -r:System.Web.Extensions.dll -d:TEST
306 endif
307
308 EXTRA_DISTFILES = \
309         $(RESOURCE_FILES_4) \
310         $(RESOURCE_FILES_2) \
311         $(RESOURCE_FILES_1) \
312         $(TEST_RESOURCE_FILES) \
313         $(TEST_APP_CODE_FILES) \
314         $(TEST_APP_GLOBALRESOURCES_FILES) \
315         UplevelHelperDefinitions.xml \
316         $(RESX_DIST) \
317         SQLiteProviders_DatabaseSchema.sql \
318         $(shell find Test/standalone-runner-support/ -name "*.cs" -type f -printf "'%p' ") \
319         $(shell find Test/standalone-tests/ -name "*.cs" -type f -printf "'%p' " -o -name "*.cs.in" -type f -printf "'%p' ") \
320         $(shell find Test/standalone/ -path '*/.svn' -prune -o -type f -printf "'%p' ") \
321         $(shell find Test/tools/ -path '*/.svn' -prune -o -type f -printf "'%p' ") \
322         System.Web_standalone_test.dll.sources \
323         standalone-runner-support.dll.sources \
324         $(shell find Test/System.Web.Caching/CacheItemPriorityQueueTestData/ -name "Sequence*.*" -type f -printf "'%p' ") \
325         ASPState.sql
326
327 BUILT_SOURCES = System.Web/UplevelHelper.cs 
328
329 include ../../build/library.make
330
331 ifdef WEBSERVICES_DEP_FILE
332 LIB_MCS_FLAGS += -define:WEBSERVICES_DEP -r:$(WEBSERVICES_DEP)
333 $(build_lib): $(WEBSERVICES_DEP_FILE)
334 endif
335
336 ifdef MONOWEB_DEP_FILE
337 LIB_MCS_FLAGS += -define:MONOWEB_DEP -r:$(MONOWEB_DEP)
338 $(build_lib): $(MONOWEB_DEP_FILE)
339 endif
340
341 ifdef SYSTEMCORE_DEP_FILE
342 LIB_MCS_FLAGS += -define:SYSTEMCORE_DEP -r:$(SYSTEMCORE_DEP)
343 $(build_lib): $(SYSTEMCORE_DEP_FILE)
344 endif
345
346 ifdef DEBUG
347 LIB_MCS_FLAGS += -define:DEBUG
348 endif
349
350 ifdef TRACE
351 LIB_MCS_FLAGS += -define:TRACE
352 endif
353
354 ifdef MONO_TRACE
355 LIB_MCS_FLAGS += -define:TRACE -define:MONO_TRACE
356 endif
357
358 ifdef PIPELINE_TIMER
359 LIB_MCS_FLAGS += -define:PIPELINE_TIMER
360 endif
361
362 ifdef DEVEL
363 LIB_MCS_FLAGS += -define:DEVEL
364 endif
365
366 CLASSLIB_DIR = $(topdir)/class/lib/$(PROFILE)
367
368 STANDALONE_RUNNER_SUPPORT_MCS_FLAGS = $(LIB_MCS_FLAGS) $(PROFILE_MCS_FLAGS) -d:STANDALONE_TEST -debug:full -r:System.Web.dll -r:nunit.framework.dll
369 STANDALONE_RUNNER_SUPPORT_ASSEMBLY = $(CLASSLIB_DIR)/standalone-runner-support.dll
370 STANDALONE_RUNNER_SUPPORT_MAKEFRAG = $(depsdir)/$(PROFILE)_standalone-runner-support.dll.makefrag
371
372 STANDALONE_TEST_MCS_FLAGS = $(LIB_MCS_FLAGS) $(PROFILE_MCS_FLAGS) -debug:full -r:$(STANDALONE_RUNNER_SUPPORT_ASSEMBLY) -r:System.Web.dll -r:nunit.framework.dll
373 STANDALONE_TEST_ASSEMBLY = System.Web_standalone_test_$(PROFILE).dll
374 STANDALONE_TEST_MAKEFRAG = $(depsdir)/$(STANDALONE_TEST_ASSEMBLY).makefrag
375
376 ifeq (4, $(FRAMEWORK_VERSION_MAJOR))
377 STANDALONE_TEST_COMPILABLE_TESTS = \
378         ApplicationPreStartMethods/test_01 \
379         ApplicationPreStartMethods/test_02 \
380         ApplicationPreStartMethods/test_03 \
381         ApplicationPreStartMethods/test_04 \
382         ApplicationPreStartMethods/test_05 \
383         ApplicationPreStartMethods/test_06 \
384         ApplicationPreStartMethods/test_07 \
385         ApplicationPreStartMethods/test_08 \
386         EnableFormsAuthentication/Test_01 \
387         EnableFormsAuthentication/Test_02 \
388         EnableFormsAuthentication/Test_03 \
389         EnableFormsAuthentication/Test_04 \
390         EnableFormsAuthentication/Test_05 \
391         EnableFormsAuthentication/Test_06 \
392         EnableFormsAuthentication/Test_07 \
393         EnableFormsAuthentication/Test_08 \
394         EnableFormsAuthentication/Test_09 \
395         RegisterBuildProvider \
396         PageParserDefaultTypeProperties
397 endif
398
399 STANDALONE_TEST_RUNNER = Test/tools/standalone-runner.exe
400 ifeq (2, $(FRAMEWORK_VERSION_MAJOR))
401 RUN_STANDALONE = MONO_TESTS_IN_PROGRESS=yes
402 endif
403 RUN_STANDALONE += $(TEST_RUNTIME) $(STANDALONE_TEST_RUNNER) --output=StandaloneTestResult-$(PROFILE).log 
404 ifdef TESTNAME
405 RUN_STANDALONE += --test=$(TESTNAME)
406 endif
407 ifdef STANDALONE_VERBOSE
408 RUN_STANDALONE += --verbose
409 endif
410
411 $(build_lib): $(RESX_RES) $(RESOURCE_FILES_2) $(RESOURCE_FILES_1)
412
413 $(RESX_RES): %.resources: %.resx
414         $(RESGEN) `echo $< | $(PLATFORM_CHANGE_SEPARATOR_CMD)`
415
416 System.Web/UplevelHelper.cs: UplevelHelperDefinitions.xml
417         MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(RUNTIME) $(RUNTIME_FLAGS) $(topdir)/class/lib/$(BUILD_TOOLS_PROFILE)/culevel.exe -o $@ $^
418
419 run-aaa: test
420         $(TEST_RUNTIME) $(TEST_HARNESS) $(TEST_HARNESS_FLAGS) $(LOCAL_TEST_HARNESS_FLAGS) \
421         /output:TestResult-$(PROFILE).log /include:aaa /xml:TestResult-$(PROFILE).xml $(test_assemblies) || ok=false; \
422         (echo ''; cat TestResult-$(PROFILE).log) | sed '1,/^Tests run: /d'; \
423         $$ok
424
425 run-nunitweb: test
426         $(TEST_RUNTIME) $(TEST_HARNESS) $(TEST_HARNESS_FLAGS) $(LOCAL_TEST_HARNESS_FLAGS) \
427         /output:TestResult-$(PROFILE).log /include:NunitWeb /xml:TestResult-$(PROFILE).xml $(test_assemblies) || ok=false; \
428         (echo ''; cat TestResult-$(PROFILE).log) | sed '1,/^Tests run: /d'; \
429         $$ok
430
431 run-nunitweb-ondotnet: test
432         $(TEST_HARNESS) $(TEST_HARNESS_FLAGS) $(LOCAL_TEST_HARNESS_FLAGS) \
433         /output:TestResult-ondotnet-$(PROFILE).log /include:NunitWeb /xml:TestResult-ondotnet-$(PROFILE).xml $(test_assemblies) || ok=false; \
434         (echo ''; cat TestResult-ondotnet-$(PROFILE).log) | sed '1,/^Tests run: /d'; \
435         $$ok
436
437 run-standalone-test: $(STANDALONE_TEST_MAKEFRAG) $(STANDALONE_RUNNER_SUPPORT_MAKEFRAG) $(STANDALONE_TEST_ASSEMBLY)
438         $(MAKE) -C Test/tools/ STANDALONE_SUPPORT_BUILT=1 standalone-runner.exe
439         $(RUN_STANDALONE) $(STANDALONE_TEST_ASSEMBLY)
440
441 standalone-runner-support: $(STANDALONE_RUNNER_SUPPORT_MAKEFRAG) $(STANDALONE_RUNNER_SUPPORT_ASSEMBLY)
442
443 $(STANDALONE_TEST_MAKEFRAG): System.Web_standalone_test.dll.sources
444         @echo Creating $@ ...
445         @sed 's,^,$(STANDALONE_TEST_ASSEMBLY): ,' $< > $@
446
447 $(STANDALONE_RUNNER_SUPPORT_MAKEFRAG): standalone-runner-support.dll.sources
448         @echo Creating $@ ...
449         @sed 's,^,$(STANDALONE_RUNNER_SUPPORT_ASSEMBLY): ,' $< > $@
450
451 include $(STANDALONE_TEST_MAKEFRAG)
452 include $(STANDALONE_RUNNER_SUPPORT_MAKEFRAG)
453
454 $(STANDALONE_TEST_ASSEMBLY): $(the_assembly) $(STANDALONE_RUNNER_SUPPORT_ASSEMBLY) Test/standalone-tests/Consts.cs standalone-compilable-tests
455         $(CSCOMPILE) $(STANDALONE_TEST_MCS_FLAGS) -out:$@ -target:library @System.Web_standalone_test.dll.sources
456
457 standalone-compilable-tests:
458 ifdef STANDALONE_TEST_COMPILABLE_TESTS
459         for d in $(STANDALONE_TEST_COMPILABLE_TESTS); do \
460                 $(MAKE) -C Test/standalone/$$d ; \
461         done
462 endif
463
464 $(STANDALONE_RUNNER_SUPPORT_ASSEMBLY): 
465         $(CSCOMPILE) $(STANDALONE_RUNNER_SUPPORT_MCS_FLAGS) -out:$(STANDALONE_RUNNER_SUPPORT_ASSEMBLY) -target:library @standalone-runner-support.dll.sources
466
467 Test/standalone-tests/Consts.cs: Test/standalone-tests/Consts.cs.in
468         @sed 's,@SystemWebClassDir@,$(shell pwd),' $< > $@
469
470 clean-local:
471 ifdef STANDALONE_TEST_COMPILABLE_TESTS
472         for d in $(STANDALONE_TEST_COMPILABLE_TESTS); do \
473                 $(MAKE) -C Test/standalone/$$d clean ; \
474         done
475 endif
476  
477