3 include ..
/..
/build
/rules.make
4 export __SECURITY_BOOTSTRAP_DB
=$(topdir
)/class
/lib
/$(PROFILE
)
7 LIBRARY_USE_INTERMEDIATE_FILE
= yes
9 ifneq (2.1, $(FRAMEWORK_VERSION
))
11 resources
/Asterisk.wav \
13 resources
/Exclamation.wav \
15 resources
/Question.wav
19 Test
/System
/test-uri-props.txt \
20 Test
/System
/test-uri-props-manual.txt \
21 Test
/System
/test-uri-relative-props.txt
23 TEST_MCS_FLAGS
= -r
:System.Drawing.dll
-r
:Mono.Security.dll
-r
:System.Data
-nowarn
:1595 -nowarn
:0618 -nowarn
:219 -nowarn
:67 -nowarn
:169 -nowarn
:612 \
24 $(foreach f
, $(TEST_RESOURCES
), -resource
:$(f
),$(notdir $(f
)))
26 ifneq (1, $(FRAMEWORK_VERSION_MAJOR
))
27 LIB_MCS_FLAGS
= -nowarn
:618 -d
:CONFIGURATION_2_0
-unsafe
$(RESOURCE_FILES
:%=-resource
:%)
28 TEST_MCS_FLAGS
+= -r
:System.Configuration
29 PROFILE_2_OR_4
:= $(filter net_2_0 net_4_0
, $(PROFILE
))
30 NOT_SL
:= $(filter net_2_0 net_4_0 monotouch
, $(PROFILE
))
34 System.Text.RegularExpressions
/notes.txt \
35 System.ComponentModel.Design
/Changelog \
36 Test
/test-config-file \
37 Test
/test-config-file-net-2.0 \
38 Test
/System.Security.Cryptography.X509Certificates
/pkits
/ChangeLog \
39 Test
/System.Security.Cryptography.X509Certificates
/pkits
/Makefile \
40 Test
/System.Security.Cryptography.X509Certificates
/pkits
/README \
41 Test
/System.Security.Cryptography.X509Certificates
/pkits
/x509build.cs \
45 lib_file
:= $(wildcard ..
/lib
/$(PROFILE
)/System.dll
)
48 LIB_MCS_FLAGS
+= -r
:PrebuiltSystem
=$(lib_file
)
51 USE_BOOT_COMPILE
= yes
54 ifeq (net_2_0
, $(PROFILE
))
55 BOOTSTRAP_MCS
= MONO_PATH
="$(topdir)/class/lib/net_2_0$(PLATFORM_PATH_SEPARATOR)$(topdir)/class/lib/net_2_0_bootstrap$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS
)
58 ifdef USE_BOOT_COMPILE
59 LIBRARY_COMPILE
= $(BOOT_COMPILE
)
62 # Because System.dll, Mono.Security.dll System.Xml.dll have a cyclic dependency, we need a two-pass build.
63 # 1st pass - build System.dll without System.Xml.dll or Mono.Security.dll or System.Configuration.dll references
64 # 2nd pass - build System.dll with System.Xml.dll and Mono.Security.dll or System.Configuration.dll references
70 # # Note the '$$' -- those are to be delayed till the eval
72 # ifndef USE_BOOT_COMPILE
73 # FILE_$2 := $$(wildcard ../lib/$(PROFILE)/$1)
76 # CYCLIC_DEP_FILES += $$(FILE_$2)
77 # LIB_MCS_FLAGS += -d:$2 -r:$1
81 ifneq (2.1, $(FRAMEWORK_VERSION
))
82 # $(eval $(call cyclic-dep,System.Xml.dll,XML_DEP))
83 CYCLIC_DEPS
+= System.Xml.dll
84 ifndef USE_BOOT_COMPILE
85 FILE_XML_DEP
:= $(wildcard ..
/lib
/$(PROFILE
)/System.Xml.dll
)
88 CYCLIC_DEP_FILES
+= $(FILE_XML_DEP
)
89 LIB_MCS_FLAGS
+= -d
:XML_DEP
-r
:System.Xml.dll
95 # $(eval $(call cyclic-dep,Mono.Security.dll,SECURITY_DEP))
96 CYCLIC_DEPS
+= Mono.Security.dll
97 ifndef USE_BOOT_COMPILE
98 FILE_SECURITY_DEP
:= $(wildcard ..
/lib
/$(PROFILE
)/Mono.Security.dll
)
100 ifdef FILE_SECURITY_DEP
101 CYCLIC_DEP_FILES
+= $(FILE_SECURITY_DEP
)
102 LIB_MCS_FLAGS
+= -d
:SECURITY_DEP
-r
:Mono.Security.dll
105 # $(eval $(call cyclic-dep,System.Configuration.dll,CONFIGURATION_DEP))
106 CYCLIC_DEPS
+= System.Configuration.dll
107 ifndef USE_BOOT_COMPILE
108 FILE_CONFIGURATION_DEP
:= $(wildcard ..
/lib
/$(PROFILE
)/System.Configuration.dll
)
110 ifdef FILE_CONFIGURATION_DEP
111 CYCLIC_DEP_FILES
+= $(FILE_CONFIGURATION_DEP
)
112 LIB_MCS_FLAGS
+= -d
:CONFIGURATION_DEP
-r
:System.Configuration.dll
117 MISSING_DEPS
:= $(filter-out $(notdir $(CYCLIC_DEP_FILES
)), $(CYCLIC_DEPS
))
119 NO_SIGN_ASSEMBLY
= yes
121 all-local
: handle-missing-deps
122 .PHONY
: handle-missing-deps
124 @echo
"** Warning: System.dll built without parts that depend on: $(MISSING_DEPS)"
125 @for f in
$(MISSING_DEPS
:%=..
/lib
/$(PROFILE
)/%); do \
126 test ! -f
$$f ||
{ echo
" purging stale $$f"; rm -f
$$f; }; done
129 include ..
/..
/build
/library.make
131 $(build_lib
): $(CYCLIC_DEP_FILES
)
133 $(test_lib
): $(test_lib
).config
$(TEST_RESOURCES
)
135 ifeq (net_2_0
, $(PROFILE
))
136 $(test_lib
).config
: Test
/test-config-file-net-2.0
139 $(test_lib
).config
: Test
/test-config-file
143 CLEAN_FILES
= $(test_lib
).config
145 # run the PKITS tests only if the data was installed/activated, otherwise ignore them
146 ifeq (net_2_0
, $(PROFILE
))
147 pkits_files
:= $(wildcard Test
/System.Security.Cryptography.X509Certificates
/pkits
/hint
)
149 TEST_HARNESS_EXCLUDES
= -exclude
=$(PLATFORM_TEST_HARNESS_EXCLUDES
)NotWorking
,ValueAdd
,CAS
,InetAccess
,PKITS
150 TEST_HARNESS_EXCLUDES_ONDOTNET
= -exclude
=$(PLATFORM_TEST_HARNESS_EXCLUDES
)NotDotNet
,CAS
,PKITS
154 # Helper target to run the perl regex test suite
156 $(MAKE
) check FIXTURE
=System.Text.RegularExpressions.PerlTest