Merge pull request #2802 from BrzVlad/feature-evacuation-opt2
[mono.git] / mcs / class / System.ServiceModel / Makefile
1 thisdir = class/System.ServiceModel
2 SUBDIRS = 
3 include ../../build/rules.make
4
5 RESOURCE_FILES = \
6         resources/WS-Addressing.schema  \
7         resources/ws-addr.xsd
8
9 LIBRARY = System.ServiceModel.dll
10
11 LIB_REFS = System System.Xml System.Core System.Runtime.Serialization
12 LIB_MCS_FLAGS = \
13                 /nowarn:414,169,67,3005,436,219,618 \
14                 /unsafe \
15                 /d:TRACE \
16                 $(RESOURCE_FILES:%=/resource:%)
17
18 ifdef XAMMAC_4_5
19 LIB_REFS += System.ServiceModel.Internals
20 endif
21
22 ifneq (2.1, $(FRAMEWORK_VERSION))
23 LIB_REFS += System.Configuration System.Data System.Security System.IdentityModel System.IdentityModel.Selectors System.Transactions System.Messaging System.Web.Services Mono.Security
24 LIB_MCS_FLAGS += /d:NET_3_0
25
26 ifndef NO_SYSTEM_WEB_DEPENDENCY
27 LIB_REFS += System.Web
28 endif
29
30 ifeq (4, $(FRAMEWORK_VERSION_MAJOR))
31
32 ifndef NO_SYSTEM_SERVICEMODEL_ACTIVATION_DEPENDENCY
33 activation = $(the_libdir_base)System.ServiceModel.Activation.dll
34 servicemodel_deps = $(activation)
35
36 ifneq (plainservice/,$(intermediate))
37 LIB_REFS += System.ServiceModel.Activation
38 LIB_MCS_FLAGS += -define:HAS_ACTIVATION
39 endif 
40 endif # NO_SYSTEM_SERVICEMODEL_ACTIVATION_DEPENDENCY
41
42 ifndef NO_SYSTEM_WEB_APPSERVICES_DEPENDENCY
43 LIB_REFS += System.Web.ApplicationServices
44 endif
45
46 endif # (4, $(FRAMEWORK_VERSION_MAJOR))
47
48 endif # (2.1, $(FRAMEWORK_VERSION))
49
50 TEST_MCS_FLAGS = $(LIB_MCS_FLAGS)
51
52 TEST_EXTRA_FILES = \
53         System.ServiceModel_test_net_3_0.dll.config \
54         Test/config/* \
55         Test/Resources/* \
56         Test/XmlFiles/* \
57         Test/System.ServiceModel.Channels/soap-fault*.xml \
58         Test/System.ServiceModel.Channels/binary-message.raw \
59         Test/System.ServiceModel.Description/dump.xml \
60         Test/MetadataTests/Resources/*
61
62 EXTRA_DISTFILES = $(RESOURCE_FILES) $(TEST_EXTRA_FILES)
63
64 # Useful for debugging under Visual Studio 2005
65 # NO_SIGN_ASSEMBLY = yes
66
67 VALID_PROFILE := $(filter 2 4, $(FRAMEWORK_VERSION_MAJOR))
68 ifndef VALID_PROFILE
69 LIBRARY_NAME = dummy-System.ServiceModel.dll
70 NO_INSTALL = yes
71 NO_SIGN_ASSEMBLY = yes
72 NO_TEST = yes
73 endif
74
75 include ../../build/library.make
76
77 $(the_libdir_base)System.ServiceModel.dll: $(servicemodel_deps)
78
79 $(activation):
80         (cd ../System.ServiceModel.Activation; $(MAKE) $@)
81
82 ifneq (plainservice/,$(intermediate))
83 $(the_libdir_base)plainservice/System.ServiceModel.dll:
84         $(MAKE) intermediate=plainservice/ $(the_libdir_base)plainservice/System.ServiceModel.dll
85 endif
86
87 .NOTPARALLEL: $(servicemodel_deps)
88
89 CLEAN_FILES = $(the_libdir_base)plainservice/System.ServiceModel.dll
90
91 ifndef intermediate
92 csproj-local:
93         $(MAKE) csproj-local intermediate=plainservice/
94 endif