[build] Add a new profile
[mono.git] / mcs / class / Facades / netstandard / Makefile
1 MCS_BUILD_DIR = ../../../build
2
3 thisdir = class/Facades/netstandard
4 SUBDIRS = 
5 include $(MCS_BUILD_DIR)/rules.make
6
7 LIBRARY_SUBDIR = Facades
8 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
9
10 LIBRARY = netstandard.dll
11
12 KEY_FILE = ../../Open.snk
13 LIBRARY_SNK = $(KEY_FILE)
14 SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699 /nowarn:618
15 LIB_REFS = System System.Xml System.Xml.Linq System.Runtime.Serialization System.Core System.Numerics System.Numerics.Vectors System.Net.Http System.Transactions \
16 System.IO.Compression System.Data System.ComponentModel.Composition System.IO.Compression.FileSystem Facades/System.Runtime.InteropServices.RuntimeInformation \
17 Facades/System.Security.Cryptography.Algorithms Facades/System.Globalization.Extensions Facades/System.Data.Common \
18 Facades/System.Diagnostics.StackTrace Facades/System.Runtime.Serialization.Xml Facades/System.Runtime.Serialization.Primitives \
19 Facades/System.Security.SecureString Facades/System.Threading.Overlapped Facades/System.Xml.XPath.XDocument
20
21 LIB_MCS_FLAGS = $(SIGN_FLAGS) $(EXTRA_LIB_MCS_FLAGS)
22
23 ifeq ($(PROFILE),xammac_net_4_5)
24 LIB_REFS += System.Web.Services
25 else ifeq (2.1, $(FRAMEWORK_VERSION))
26 LIB_REFS += System.Web.Services
27 else
28 LIB_REFS += System.Web
29 endif
30
31 # profiles which build a System.Drawing.dll in the repo
32 REPO_DRAWING_DEP := $(filter net_4_x orbis winaot unreal, $(PROFILE))
33
34 ifdef REPO_DRAWING_DEP
35 LIB_REFS += System.Drawing
36 else
37
38 # xammac_net_4_5 and the testing_* profiles are special, they don't build
39 # System.Drawing.dll or equivalent neither in Mono nor in the XM repo.
40 # For now we typeforward the drawing types to the System.Drawing.Primitives.dll
41 # facade where they are embedded.
42 # TODO: find a better solution.
43 EMBEDDED_DRAWING_DEP := $(filter xammac_net_4_5 testing_aot_full testing_aot_hybrid, $(PROFILE))
44
45 ifdef EMBEDDED_DRAWING_DEP
46 LIB_REFS += Facades/System.Drawing.Primitives
47 else
48 # When System.Drawing.dll is not built in the Mono repo but in
49 # the product repo like in the XI/XA case we need to pass in a reference
50 # to the assembly containing drawing types like Rectangle etc. from there.
51 # This needs to be passed in via EXTERNAL_FACADE_DRAWING_REFERENCE.
52 LIB_MCS_FLAGS += /r:$(EXTERNAL_FACADE_DRAWING_REFERENCE)
53 endif
54
55 endif
56
57 PLATFORM_DEBUG_FLAGS =
58
59 NO_TEST = yes
60
61 include $(MCS_BUILD_DIR)/library.make
62
63