1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
|
thisdir = class/System
SUBDIRS =
include ../../build/rules.make
export __SECURITY_BOOTSTRAP_DB=$(topdir)/class/lib/$(PROFILE)
LIBRARY = System.dll
#LIBRARY_USE_INTERMEDIATE_FILE = yes
ifneq (2.1, $(FRAMEWORK_VERSION))
RESOURCE_FILES = \
resources/Asterisk.wav \
resources/Beep.wav \
resources/Exclamation.wav \
resources/Hand.wav \
resources/Question.wav
endif
TEST_RESOURCES = \
Test/System/test-uri-props.txt \
Test/System/test-uri-props-manual.txt \
Test/System/test-uri-relative-props.txt
TEST_MCS_FLAGS = -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:618,672,219,67,169,612 \
$(foreach f, $(TEST_RESOURCES), -resource:$(f),$(notdir $(f)))
LIB_MCS_FLAGS = -nowarn:618 -d:CONFIGURATION_2_0 -unsafe $(RESOURCE_FILES:%=-resource:%)
TEST_MCS_FLAGS += -r:System.Configuration
PROFILE_ANY_MOBILE := $(filter monotouch monotouch_runtime monodroid xammac, $(PROFILE))
NOT_SL := $(filter net_2_0 net_4_0 net_4_5 monotouch_runtime mobile xammac, $(PROFILE))
ifeq (2.1, $(FRAMEWORK_VERSION))
LIB_MCS_FLAGS += -d:INSIDE_SYSTEM
ifeq (moonlight_raw, $(PROFILE))
LIB_MCS_FLAGS += -d:SECURITY_DEP
endif
endif
ifeq (monotouch, $(subst _runtime,,$(PROFILE)))
LIB_MCS_FLAGS += -d:SECURITY_DEP
endif
ifeq (monodroid, $(PROFILE))
LIB_MCS_FLAGS += -d:SECURITY_DEP
endif
ifndef PROFILE_ANY_MOBILE
FINAL_MCS_FLAGS = -r:System.Configuration.dll -d:CONFIGURATION_DEP
endif
#
# Flags used to build the secxml version of System.
#
ifeq (secxml/, $(intermediate))
LIB_MCS_FLAGS += -d:SECURITY_DEP -d:XML_DEP -lib:$(bare_libdir) -r:PrebuiltSystem=$(bare_libdir)/System.dll -r:System.Xml.dll -r:MonoSecurity=Mono.Security.dll
endif
#
# Flags used to build the final version of System (when intermediate is not defined)
#
ifndef intermediate
LIB_MCS_FLAGS += -d:SECURITY_DEP -d:XML_DEP -r:PrebuiltSystem=$(secxml_libdir)/System.dll -r:System.Xml.dll -r:MonoSecurity=Mono.Security.dll $(FINAL_MCS_FLAGS)
endif
EXTRA_DISTFILES = \
System.Text.RegularExpressions/notes.txt \
System.ComponentModel.Design/Changelog \
Test/test-config-file \
Test/test-config-file-net-2.0 \
Test/System.Security.Cryptography.X509Certificates/pkits/ChangeLog \
Test/System.Security.Cryptography.X509Certificates/pkits/Makefile \
Test/System.Security.Cryptography.X509Certificates/pkits/README \
Test/System.Security.Cryptography.X509Certificates/pkits/x509build.cs \
$(RESOURCE_FILES) \
$(TEST_RESOURCES)
include ../../build/library.make
system_library_deps := \
$(secxml_libdir)/System.dll \
$(the_libdir_base)System.Xml.dll \
$(the_libdir_base)Mono.Security.dll
ifndef PROFILE_ANY_MOBILE
system_library_deps += $(the_libdir_base)System.Configuration.dll
endif
build-test-dep-xml: $(the_libdir_base)System.Xml.dll
$(the_libdir_base)System.dll: $(system_library_deps)
ifeq (bare/,$(intermediate))
build-bare:
else
$(bare_libdir)/System.dll:
$(MAKE) intermediate=bare/ $(bare_libdir)/System.dll
endif
ifneq (secxml/,$(intermediate))
$(secxml_libdir)/System.dll: $(bare_libdir)/System.dll $(bare_libdir)/System.Xml.dll $(the_libdir_base)Mono.Security.dll $(bare_libdir)/System.dll
$(MAKE) intermediate=secxml/ $(secxml_libdir)/System.dll
else
build-sec:
endif
$(the_libdir_base)System.Xml.dll:
(cd ../System.XML; $(MAKE) $@)
$(bare_libdir)/System.Xml.dll:
(cd ../System.XML; $(MAKE) $@)
$(the_libdir_base)Mono.Security.dll:
(cd ../Mono.Security; $(MAKE))
$(the_libdir_base)System.Configuration.dll:
(cd ../System.Configuration; $(MAKE))
$(build_lib): $(CYCLIC_DEP_FILES)
$(test_lib): $(test_lib).config $(TEST_RESOURCES)
ifeq (net_2_0, $(PROFILE))
$(test_lib).config: Test/test-config-file-net-2.0
cp $< $@
else
$(test_lib).config: Test/test-config-file
cp $< $@
endif
CLEAN_FILES = $(test_lib).config $(bare_libdir)/System.dll $(secxml_libdir)/System.dll $(bare_libdir)/System.dll.mdb $(secxml_libdir)/System.dll.mdb
# run the PKITS tests only if the data was installed/activated, otherwise ignore them
ifeq (net_2_0, $(PROFILE))
pkits_files := $(wildcard Test/System.Security.Cryptography.X509Certificates/pkits/hint)
ifndef pkits_files
TEST_HARNESS_EXCLUDES = -exclude=$(PLATFORM_TEST_HARNESS_EXCLUDES)NotWorking,ValueAdd,CAS,InetAccess,PKITS
TEST_HARNESS_EXCLUDES_ONDOTNET = -exclude=$(PLATFORM_TEST_HARNESS_EXCLUDES)NotDotNet,CAS,PKITS
endif
endif
# Helper target to run the perl regex test suite
regex-check:
$(MAKE) check FIXTURE=System.Text.RegularExpressions.PerlTest
foo:
echo $(FRAMEWORK_VERSION)
fresh: clean
rm -rf ../../class/lib/$(PROFILE)/bare ../../class/lib/$(PROFILE)/bare/ $(system_library_deps)
|