[build] Add new profile
authorMarek Safar <marek.safar@gmail.com>
Mon, 19 Dec 2016 15:35:23 +0000 (16:35 +0100)
committerMarek Safar <marek.safar@gmail.com>
Mon, 19 Dec 2016 15:36:39 +0000 (16:36 +0100)
22 files changed:
configure.ac
mcs/Makefile
mcs/build/profiles/xbox.make [new file with mode: 0644]
mcs/class/Facades/Makefile
mcs/class/Facades/subdirs.make
mcs/class/Makefile
mcs/class/Mono.CSharp/xbox_Mono.CSharp.dll.sources [new file with mode: 0644]
mcs/class/Mono.Security/xbox_Mono.Security.dll.sources [new file with mode: 0644]
mcs/class/System.Core/xbox_System.Core.dll.sources [new file with mode: 0644]
mcs/class/System.Data/xbox_System.Data.dll.sources [new file with mode: 0644]
mcs/class/System.Drawing/Makefile
mcs/class/System.Drawing/System.Drawing/Color.cs
mcs/class/System.Drawing/System.Drawing/KnownColors.cs
mcs/class/System.Drawing/netstandard.sources [new file with mode: 0644]
mcs/class/System.Drawing/xbox_System.Drawing.dll.sources [new file with mode: 0644]
mcs/class/System.IdentityModel/xbox_System.IdentityModel.dll.sources [new file with mode: 0644]
mcs/class/System.Runtime.Serialization/xbox_System.Runtime.Serialization.dll.sources [new file with mode: 0644]
mcs/class/System.ServiceModel.Web/xbox_System.ServiceModel.Web.dll.sources [new file with mode: 0644]
mcs/class/System.ServiceModel/xbox_System.ServiceModel.dll.sources [new file with mode: 0644]
mcs/class/System.Web.Services/xbox_System.Web.Services.dll.sources [new file with mode: 0644]
mcs/class/System.XML/xbox_System.Xml.dll.sources [new file with mode: 0644]
mcs/class/System/xbox_System.dll.sources [new file with mode: 0644]

index 7d3d9908debe4ca54ab975cfc433e3e65b46f76b..9d15bceb49bb038ab28bdaf3e182e771e10fb3de 100644 (file)
@@ -802,6 +802,7 @@ AC_ARG_WITH(bitcode,         [  --with-bitcode=yes,no           If bitcode is en
 AC_ARG_WITH(xammac,          [  --with-xammac=yes,no            If you want to build the Xamarin.Mac assemblies (defaults to no)],    [], [with_xammac=default])
 AC_ARG_WITH(aot_hybrid,      [  --with-aot_hybrid=yes,no        If you want to build the aot_hybrid assemblies (defaults to no)],     [], [with_aot_hybrid=default])
 AC_ARG_WITH(aot_only,        [  --with-aot_only=yes,no          If you want to build the aot_only assemblies (defaults to no)],       [], [with_aot_only=default])
+AC_ARG_WITH(xbox,            [  --with-xbox=yes,no              If you want to build the Xbox assemblies (defaults to no)],           [], [with_xbox=default])
 
 AC_ARG_WITH(runtime_preset, [  --with-runtime_preset=net_4_x,all,aot,hybridaot,fullaot,bitcode   Which default profile to build (defaults to net_4_x)],  [], [with_runtime_preset=net_4_x])
 
@@ -819,6 +820,7 @@ with_monotouch_tv_default=no
 with_xammac_default=no
 with_aot_hybrid_default=no
 with_aot_only_default=no
+with_xbox_default=no
 
 with_bitcode_default=no
 with_cooperative_gc_default=no
@@ -923,6 +925,10 @@ fi
 if test "x$with_aot_only" = "xdefault"; then
    with_aot_only=$with_aot_only_default
 fi
+if test "x$with_xbox" = "xdefault"; then
+   with_xbox=$with_xbox_default
+fi
+
 
 AM_CONDITIONAL(INSTALL_4_x, [test "x$with_profile4_x" = "xyes"])
 AM_CONDITIONAL(INSTALL_MONODROID, [test "x$with_monodroid" != "xno"])
index cf8813e6e360949953e759483a2b4cec5dec9889..af01ee0a60031f291a5b6c98d01ea549bb965297 100644 (file)
@@ -21,6 +21,7 @@ net_4_x_SUBDIRS := build class nunit24 ilasm tools tests errors docs mcs class/a
 xammac_net_4_5_SUBDIRS := build class
 xbuild_12_SUBDIRS := build class tools/xbuild
 xbuild_14_SUBDIRS := build class tools/xbuild
+xbox_SUBDIRS := build class
 
 include build/rules.make
 
@@ -73,6 +74,7 @@ $(_boot_:%=profile-do--xammac--%):            profile-do--xammac--%:
 $(_boot_:%=profile-do--xammac_net_4_5--%):    profile-do--xammac_net_4_5--%:           profile-do--build--%
 $(_boot_:%=profile-do--aot_hybrid--%):        profile-do--aot_hybrid--%:        profile-do--build--%
 $(_boot_:%=profile-do--aot_only--%):          profile-do--aot_only--%:          profile-do--build--%
+$(_boot_:%=profile-do--xbox--%):              profile-do--xbox--%:              profile-do--build--%
 $(_boot_:%=profile-do--build--%):             profile-do--build--%:             profile-do--basic--%
 
 testcorlib:
diff --git a/mcs/build/profiles/xbox.make b/mcs/build/profiles/xbox.make
new file mode 100644 (file)
index 0000000..ecfe02c
--- /dev/null
@@ -0,0 +1,45 @@
+#! -*- makefile -*-
+
+BOOTSTRAP_PROFILE = build
+
+BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_CSC)
+MCS = $(BOOTSTRAP_MCS)
+
+# Use system resgen as we don't want local System.Windows.Forms dependency
+RESGEN = resgen2
+
+profile-check:
+       @:
+
+DEFAULT_REFERENCES = -r:$(topdir)/class/lib/$(PROFILE)/mscorlib.dll
+
+PROFILE_MCS_FLAGS = \
+       -d:NET_1_1 \
+       -d:NET_2_0 \
+       -d:NET_2_1 \
+       -d:NET_3_5 \
+       -d:NET_4_0 \
+       -d:NET_4_5 \
+       -d:MONO \
+       -d:NETSTANDARD \
+       -d:MOBILE,MOBILE_LEGACY \
+       -d:AOT_ONLY_DESKTOP     \
+       -d:FULL_AOT_RUNTIME \
+       -d:DISABLE_REMOTING \
+       -d:DISABLE_COM \
+       -nowarn:1699 \
+       -nostdlib \
+       $(DEFAULT_REFERENCES) \
+       $(PLATFORM_DEBUG_FLAGS)
+
+FRAMEWORK_VERSION = 2.1
+
+# the tuner takes care of the install
+NO_INSTALL = yes
+AOT_FRIENDLY_PROFILE = yes
+ALWAYS_AOT = yes
+MOBILE_PROFILE = yes
+NO_VTS_TEST = yes
+
+# Note need for trailing comma. If you add, keep it
+PROFILE_TEST_HARNESS_EXCLUDES = MobileNotWorking,PKITS,
index 4ef52f56dcad794058bfaae88a87d2849945173c..d16c77cfa06b39f55ed2612d4482c2d410a5c8e9 100644 (file)
@@ -39,7 +39,8 @@ doc-update-recursive:
 
 System System.Core System.ComponentModel.DataAnnotations System.Numerics System.Runtime.Serialization System.XML \
 System.ComponentModel.Composition System.ServiceModel System.Xml.Linq System.Data System.IO.Compression.FileSystem \
-System.ServiceProcess System.Security System.Net.Http.WebRequest System.Net.Http System.ServiceProcess:
+System.ServiceProcess System.Security System.Net.Http.WebRequest System.Net.Http System.ServiceProcess System.IO.Compression \
+System.Web.Services:
 
 all-local-aot:
 
index 1c3272da8f39019b79961ab3b2713610166262ce..5e59fcb22060bfc6ed856126fab2822b84386355 100644 (file)
@@ -68,6 +68,8 @@ monotouch_watch_PARALLEL_SUBDIRS = $(monotouch_PARALLEL_SUBDIRS)
 monotouch_tv_SUBDIRS = $(monotouch_SUBDIRS)
 monotouch_tv_PARALLEL_SUBDIRS = $(monotouch_PARALLEL_SUBDIRS)
 
+xbox_PARALLEL_SUBDIRS :=
+
 mobile_only_SUBDIRS = System.Net.Ping System.Runtime.Serialization.Formatters System.Security.Cryptography.Csp System.Security.Cryptography.Pkcs \
 System.Security.Cryptography.Cng
 
index eacc1b2391fdcf529011e34749abca2698f7bf67..6d38b0ca55a3085d27779eeb61b4658d45a63e9d 100644 (file)
@@ -123,6 +123,8 @@ monotouch_runtime_dirs := \
 monotouch_watch_runtime_dirs := $(filter-out Mono.Security Mono.Data.Tds,$(monotouch_runtime_dirs))
 monotouch_tv_runtime_dirs := $(monotouch_runtime_dirs)
 
+xbox_dirs := $(monotouch_dirs) System.Drawing
+
 xammac_4_5_dirs := \
        corlib  \
        Mono.Security \
@@ -341,6 +343,7 @@ net_4_x_SUBDIRS := $(net_4_x_dirs) $(xbuild_4_0_dirs)
 net_4_x_PARALLEL_SUBDIRS := $(net_4_x_parallel_dirs)
 xbuild_12_SUBDIRS := $(xbuild_4_0_dirs)
 xbuild_14_SUBDIRS := $(xbuild_4_0_dirs) Microsoft.NuGet.Build.Tasks
+xbox_SUBDIRS := $(xbox_dirs)
 
 include ../build/rules.make
 
diff --git a/mcs/class/Mono.CSharp/xbox_Mono.CSharp.dll.sources b/mcs/class/Mono.CSharp/xbox_Mono.CSharp.dll.sources
new file mode 100644 (file)
index 0000000..4c30fc6
--- /dev/null
@@ -0,0 +1,4 @@
+#include Mono.CSharp.dll.sources
+../corlib/System.Reflection.Emit/PEFileKinds.cs
+../corlib/System.Reflection.Emit/MethodToken.cs
+monotouch.cs
diff --git a/mcs/class/Mono.Security/xbox_Mono.Security.dll.sources b/mcs/class/Mono.Security/xbox_Mono.Security.dll.sources
new file mode 100644 (file)
index 0000000..87eaa00
--- /dev/null
@@ -0,0 +1,5 @@
+#include mobile_Mono.Security.dll.sources
+./Mono.Security.Cryptography/ARC4Managed.cs
+./Mono.Security.Cryptography/MD2Managed.cs
+./Mono.Security.Cryptography/MD4Managed.cs
+./Mono.Security.Cryptography/SHA224Managed.cs
diff --git a/mcs/class/System.Core/xbox_System.Core.dll.sources b/mcs/class/System.Core/xbox_System.Core.dll.sources
new file mode 100644 (file)
index 0000000..c936fcc
--- /dev/null
@@ -0,0 +1 @@
+#include aot_only_System.Core.dll.sources
\ No newline at end of file
diff --git a/mcs/class/System.Data/xbox_System.Data.dll.sources b/mcs/class/System.Data/xbox_System.Data.dll.sources
new file mode 100644 (file)
index 0000000..bbc860b
--- /dev/null
@@ -0,0 +1 @@
+#include mobile_System.Data.dll.sources
index e815bbf4afb76ab33d200014641888020c38484d..7ccc1dcd83ca99a60c901ccca8c0a878dc1d4313 100644 (file)
@@ -5,11 +5,17 @@ SUBDIRS =
 LIBRARY = System.Drawing.dll
 
 LIB_REFS = System
-LIB_MCS_FLAGS = /unsafe -d:FEATURE_TYPECONVERTER \
+LIB_MCS_FLAGS = /unsafe \
        -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico \
        -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico \
        -resource:Assembly/Question.ico,Question.ico -resource:Assembly/Shield.ico,Shield.ico
 
+ifneq (xbox, $(PROFILE))
+LIB_MCS_FLAGS += -d:FEATURE_TYPECONVERTER,SUPPORTS_WINDOWS_COLORS
+else
+LIB_MCS_FLAGS += /keyfile:../msfinal.pub
+endif
+
 TEST_LIB_REFS = System.Drawing System.Runtime.Serialization.Formatters.Soap System.Xml
 
 TEST_MCS_FLAGS = $(LIB_MCS_FLAGS) -define:TEST -resource:Test/resources/indexed.png,indexed.png \
index 6e72b0ecb69a28d608f239c4db1f2975cb8405be..31b4842c845be0663c082ee879cadbe4a0470ce5 100644 (file)
@@ -38,7 +38,7 @@ using System.Runtime.InteropServices;
 
 namespace System.Drawing 
 {
-#if !MONOTOUCH && !MONOMAC
+#if !MONOTOUCH && !MONOMAC && FEATURE_TYPECONVERTER
        [TypeConverter(typeof(ColorConverter))]
        [Editor ("System.Drawing.Design.ColorEditor, " + Consts.AssemblySystem_Drawing_Design, typeof (System.Drawing.Design.UITypeEditor))]
 #endif
index 0440d8e30599a99504dc91416f1abaa2a5613aba..77b1b16251dbcf5bf7b840ec3918670b371097bd 100644 (file)
@@ -210,7 +210,7 @@ namespace System.Drawing {
                        0xFF316AC5,     /* 174 - MenuHighlight */
                };
 
-#if !MONOTOUCH && !MONOMAC
+#if !MONOTOUCH && !MONOMAC && SUPPORTS_WINDOWS_COLORS
                static KnownColors ()
                {
                        if (GDIPlus.RunningOnWindows ()) {
diff --git a/mcs/class/System.Drawing/netstandard.sources b/mcs/class/System.Drawing/netstandard.sources
new file mode 100644 (file)
index 0000000..809285b
--- /dev/null
@@ -0,0 +1,10 @@
+System.Drawing/Color.cs
+System.Drawing/KnownColor.cs
+System.Drawing/KnownColors.cs
+System.Drawing/Point.cs
+System.Drawing/PointF.cs
+System.Drawing/Rectangle.cs
+System.Drawing/RectangleF.cs
+System.Drawing/Size.cs
+System.Drawing/SizeF.cs
+
diff --git a/mcs/class/System.Drawing/xbox_System.Drawing.dll.sources b/mcs/class/System.Drawing/xbox_System.Drawing.dll.sources
new file mode 100644 (file)
index 0000000..c7c763e
--- /dev/null
@@ -0,0 +1,3 @@
+Assembly/AssemblyInfo.cs
+../../build/common/Consts.cs
+#include netstandard.sources
\ No newline at end of file
diff --git a/mcs/class/System.IdentityModel/xbox_System.IdentityModel.dll.sources b/mcs/class/System.IdentityModel/xbox_System.IdentityModel.dll.sources
new file mode 100644 (file)
index 0000000..4296367
--- /dev/null
@@ -0,0 +1 @@
+#include mobile_System.IdentityModel.dll.sources
diff --git a/mcs/class/System.Runtime.Serialization/xbox_System.Runtime.Serialization.dll.sources b/mcs/class/System.Runtime.Serialization/xbox_System.Runtime.Serialization.dll.sources
new file mode 100644 (file)
index 0000000..6caafd4
--- /dev/null
@@ -0,0 +1 @@
+#include mobile_System.Runtime.Serialization.dll.sources
diff --git a/mcs/class/System.ServiceModel.Web/xbox_System.ServiceModel.Web.dll.sources b/mcs/class/System.ServiceModel.Web/xbox_System.ServiceModel.Web.dll.sources
new file mode 100644 (file)
index 0000000..cbea0fa
--- /dev/null
@@ -0,0 +1 @@
+#include mobile_System.ServiceModel.Web.dll.sources
diff --git a/mcs/class/System.ServiceModel/xbox_System.ServiceModel.dll.sources b/mcs/class/System.ServiceModel/xbox_System.ServiceModel.dll.sources
new file mode 100644 (file)
index 0000000..22ece5c
--- /dev/null
@@ -0,0 +1 @@
+#include mobile_System.ServiceModel.dll.sources
diff --git a/mcs/class/System.Web.Services/xbox_System.Web.Services.dll.sources b/mcs/class/System.Web.Services/xbox_System.Web.Services.dll.sources
new file mode 100644 (file)
index 0000000..9e39dcc
--- /dev/null
@@ -0,0 +1 @@
+#include mobile_System.Web.Services.dll.sources
diff --git a/mcs/class/System.XML/xbox_System.Xml.dll.sources b/mcs/class/System.XML/xbox_System.Xml.dll.sources
new file mode 100644 (file)
index 0000000..b663093
--- /dev/null
@@ -0,0 +1 @@
+#include mobile_System.Xml.dll.sources
diff --git a/mcs/class/System/xbox_System.dll.sources b/mcs/class/System/xbox_System.dll.sources
new file mode 100644 (file)
index 0000000..e9469d0
--- /dev/null
@@ -0,0 +1,2 @@
+#include mobile_System.dll.sources
+Mono.Util/MonoPInvokeCallbackAttribute.cs