Integrate binary reference assemblies for v2.0/3.5 into the build system
[mono.git] / mcs / class / Makefile
index b3d367cb2e04d080cd5782ecc11b6e830a2a4343..5e3a041c1e2dd789b1567efd256b78e769d16765 100644 (file)
@@ -16,16 +16,68 @@ build_SUBDIRS :=  \
        Mono.Posix \
        System.Core
 
-net_1_1_java_SUBDIRS = \
-       System.Xml                                      \
-       System.Data                                     \
-       System.Drawing                                  \
-       Novell.Directory.Ldap                           \
-       System.DirectoryServices                        \
-       System.Runtime.Serialization.Formatters.Soap    \
-       System.Runtime.Remoting
+pcl_facade_dirs := Facades
+
+mobile_common_dirs := \
+       corlib  \
+       System  \
+       System.Core     \
+       System.XML      \
+       Mono.Security   \
+       System  \
+       I18N            \
+       System.ServiceModel.Internals   \
+       SMDiagnostics   \
+       System.Runtime.Serialization    \
+       System.Xml.Linq \
+       System.ServiceModel     \
+       System.ServiceModel.Web \
+       System.Json     \
+       System.Web.Services     \
+       Mono.Data.Tds   \
+       System.Transactions     \
+       System.Numerics \
+       System.Data     \
+       Mono.Cairo      \
+       Mono.Data.Sqlite        \
+       System.Data.Services.Client \
+       System.IO.Compression \
+       System.IO.Compression.FileSystem \
+       System.ComponentModel.DataAnnotations \
+       System.ComponentModel.Composition.4.5 \
+       System.Net \
+       System.Windows \
+       System.Xml.Serialization \
+       Mono.CSharp     \
+       Microsoft.CSharp \
+       $(pcl_facade_dirs)
+
+mobile_static_dirs := \
+       $(mobile_common_dirs)   \
+       Mono.Dynamic.Interpreter
+
+mobile_dynamic_dirs := \
+       $(mobile_common_dirs)   \
+       Mono.CompilerServices.SymbolWriter      \
+       System.Net.Http
+
+xammac_dirs := \
+       $(mobile_dynamic_dirs)
+
+monodroid_dirs := \
+       $(mobile_dynamic_dirs)
+
+monotouch_dirs := \
+       $(mobile_static_dirs)
+
+monotouch_runtime_dirs := \
+       corlib \
+       System \
+       System.Core \
+       System.XML \
+       Mono.CSharp
 
-net_2_0_dirs := \
+net_4_5_dirs := \
        corlib                          \
        System                          \
        System.XML                      \
@@ -34,18 +86,19 @@ net_2_0_dirs := \
        System.Core                     \
        Mono.Security                   \
        System.Security                 \
-       System.Configuration            \
-       I18N                            \
+       System.Configuration    \
        $(resgen_dir)                   \
        System.Drawing                  \
        System.Transactions             \
        System.EnterpriseServices       \
        Mono.Data.Tds                   \
+       System.Numerics         \
        System.Data                     \
+       System.ComponentModel.DataAnnotations   \
        Accessibility                   \
        Mono.WebBrowser                 \
        System.Runtime.Serialization.Formatters.Soap \
-       Managed.Windows.Forms           \
+       System.Windows.Forms            \
        Mono.Data.Sqlite                \
        System.Web.ApplicationServices  \
        System.Web                      \
@@ -54,34 +107,19 @@ net_2_0_dirs := \
        System.Configuration.Install    \
        System.Management               \
        System.Data.OracleClient        \
-       Microsoft.VisualC               \
        Cscompmgd                       \
-       PEAPI                           \
-       Npgsql                          \
        Commons.Xml.Relaxng             \
-       Novell.Directory.Ldap           \
-       Mono.Security.Win32             \
-       System.DirectoryServices        \
-       System.DirectoryServices.Protocols      \
-       RabbitMQ.Client                 \
        Mono.Messaging                  \
        System.Messaging                \
-       Mono.Messaging.RabbitMQ         \
        System.ServiceProcess           \
        System.Drawing.Design           \
        System.Design                   \
        ICSharpCode.SharpZipLib         \
-       Mono.Http                       \
-       Mono.Cairo                      \
        IBM.Data.DB2                    \
        CustomMarshalers                \
-       Mono.Cecil                      \
-       Mono.Cecil.Mdb                  \
-       Mono.Debugger.Soft              \
        SystemWebTestShim                       \
-       System.Xml.Linq                 \
        System.Runtime.Serialization    \
-       System.Data.DataSetExtensions   \
+       System.Xml.Linq                 \
        System.Data.Linq                \
        System.Web.Abstractions         \
        System.Web.Routing              \
@@ -90,89 +128,11 @@ net_2_0_dirs := \
        System.ServiceModel             \
        System.Web.Extensions           \
        System.Web.Extensions.Design    \
-       System.ComponentModel.DataAnnotations   \
        System.Web.DynamicData          \
-       System.Web.Mvc2                 \
-       Mono.C5                         \
-       Mono.Management                 \
-       Mono.Options                    \
-       Mono.Simd                       \
-       Mono.Tasklets                   \
-       System.Dynamic                  \
        Mono.CSharp                     \
        System.Net                      \
-       System.Json
-
-net_2_0_only_dirs := \
-       System.Web.Extensions_1.0       \
-       System.Web.Extensions.Design_1.0\
-       Compat.ICSharpCode.SharpZipLib  \
-       WindowsBase                     \
-       System.ServiceModel.Web         \
-       System.Data.Services.Client     \
-       System.Data.Services            \
-       System.Web.Mvc \
-
-pcl_facade_dirs := Facades
-
-mobile_dirs := \
-       corlib  \
-       System  \
-       System.Core     \
-       System.XML      \
-       Mono.Security   \
-       System  \
-       I18N            \
-       System.Xml.Linq \
-       System.Runtime.Serialization    \
-       System.ServiceModel     \
-       System.ServiceModel.Web \
-       System.Json     \
-       System.Web.Services     \
-       Mono.Data.Tds   \
-       System.Transactions     \
-       System.Data     \
-       Mono.Cairo      \
-       Mono.Data.Sqlite        \
-       System.Numerics \
-       System.Data.Services.Client \
-       System.IO.Compression \
-       System.IO.Compression.FileSystem \
-       System.ComponentModel.DataAnnotations \
-       System.ComponentModel.Composition.4.5 \
-       System.Net \
-       System.Windows \
-       System.Xml.Serialization \
-       $(pcl_facade_dirs)
-
-monodroid_dirs := \
-       Mono.CompilerServices.SymbolWriter      \
-       Mono.CSharp     \
-       Microsoft.CSharp \
-       System.Net.Http
-
-xammac_dirs := \
-       Mono.CompilerServices.SymbolWriter      \
-       Mono.CSharp     \
-       Microsoft.CSharp \
-       System.Net.Http
-
-monotouch_runtime_dirs := \
-       corlib \
-       System \
-       System.Core \
-       System.XML \
-       Mono.CSharp
-
-monotouch_dirs := \
-       Mono.CSharp     \
-       Microsoft.CSharp \
-       Mono.Dynamic.Interpreter
-
-net_4_0_dirs := \
-       System.Numerics         \
+       System.Json             \
        Microsoft.CSharp        \
-       System.Windows.Forms.DataVisualization  \
        System.Xaml \
        WindowsBase \
        System.ServiceModel.Activation \
@@ -180,7 +140,41 @@ net_4_0_dirs := \
        System.ServiceModel.Discovery \
        System.Runtime.Caching \
        System.Runtime.DurableInstancing \
+       Microsoft.Web.Infrastructure \
+       System.ServiceModel.Web \
+       System.Net.Http \
+       System.Net.Http.WebRequest \
+       System.Web.Razor \
+       System.Web.WebPages.Deployment \
+       System.Web.WebPages \
+       System.Web.WebPages.Razor \
+       System.Web.Mvc3 \
+       System.Net.Http.Formatting \
+       System.Web.Http \
+       System.Web.Http.SelfHost \
+       System.Web.Http.WebHost
+
+# These are the subdirs which depends on libs in net_4_5_dirs
+# or have proper dependencies between each other
+net_4_5_parallel_dirs := \
+       PEAPI                           \
+       I18N                            \
+       Mono.Http                       \
+       Mono.Cairo                      \
+       Mono.Cecil                      \
+       Mono.Cecil.Mdb                  \
+       Mono.Debugger.Soft              \
+       Mono.C5                         \
+       Mono.Management                 \
+       Mono.Options                    \
+       Mono.Simd                       \
+       Mono.Tasklets                   \
+       Mono.CodeContracts \
        Mono.Parallel \
+       Mono.Security.Win32             \
+       Mono.Messaging.RabbitMQ         \
+       System.Dynamic                  \
+       System.Windows.Forms.DataVisualization  \
        System.Reactive.Interfaces \
        System.Reactive.Core \
        System.Reactive.Linq \
@@ -192,38 +186,24 @@ net_4_0_dirs := \
        System.Reactive.Observable.Aliases \
        System.Reactive.Experimental \
        System.Reactive.Debugger \
-       Microsoft.Web.Infrastructure \
-       WebMatrix.Data \
-       System.ServiceModel.Web \
        System.Data.Services.Client     \
        System.Data.Services \
+       System.Data.Entity \
+       System.Data.DataSetExtensions   \
        System.Json.Microsoft \
-       monodoc
-
-net_4_0_only_dirs := \
-       System.ComponentModel.Composition
-
-net_4_5_dirs := \
        System.Threading.Tasks.Dataflow \
        System.ComponentModel.Composition.4.5 \
-       System.Net.Http \
-       System.Net.Http.WebRequest \
-       System.Web.Razor \
-       System.Web.WebPages.Deployment \
-       System.Web.WebPages \
-       System.Web.WebPages.Razor \
-       System.Web.Mvc3 \
-       System.Net.Http.Formatting \
-       System.Web.Http \
-       System.Web.Http.SelfHost \
-       System.Web.Http.WebHost \
-       EntityFramework \
-       EntityFramework.SqlServer       \
-       Mono.CodeContracts \
        System.IO.Compression \
        System.IO.Compression.FileSystem \
        System.Windows \
        System.Xml.Serialization \
+       Novell.Directory.Ldap           \
+       System.DirectoryServices        \
+       System.DirectoryServices.Protocols      \
+       RabbitMQ.Client                 \
+       Microsoft.VisualC               \
+       WebMatrix.Data \
+       monodoc \
        $(pcl_facade_dirs)
 
 xbuild_2_0_dirs := \
@@ -237,23 +217,23 @@ xbuild_4_0_dirs := \
        $(xbuild_2_0_dirs)      \
        Microsoft.Build
 
-net_2_0_SUBDIRS := $(net_2_0_dirs) $(net_2_0_only_dirs) $(xbuild_2_0_dirs) aot-compiler
-monodroid_SUBDIRS := $(mobile_dirs) $(monodroid_dirs)
-monotouch_SUBDIRS := $(mobile_dirs) $(monotouch_dirs)
+monodroid_SUBDIRS := $(monodroid_dirs)
+monotouch_SUBDIRS := $(monotouch_dirs)
 monotouch_runtime_SUBDIRS := $(monotouch_runtime_dirs)
-mobile_static_SUBDIRS := $(mobile_dirs)
-mobile_SUBDIRS := $(mobile_dirs)
-xammac_SUBDIRS := $(mobile_dirs) $(xammac_dirs)
-net_3_5_SUBDIRS := $(xbuild_2_0_dirs)
-net_4_0_SUBDIRS := $(net_2_0_dirs) $(net_4_0_dirs) $(net_4_0_only_dirs) $(xbuild_4_0_dirs)
-net_4_5_SUBDIRS := $(net_2_0_dirs) $(net_4_0_dirs) $(net_4_5_dirs) $(xbuild_4_0_dirs) aot-compiler
+mobile_static_SUBDIRS := $(mobile_static_dirs)
+mobile_SUBDIRS := $(mobile_dynamic_dirs)
+xammac_SUBDIRS := $(xammac_dirs)
+binary_reference_assemblies_SUBDIRS := reference-assemblies
+net_4_5_SUBDIRS := $(net_4_5_dirs) $(xbuild_4_0_dirs)
+net_4_5_PARALLEL_SUBDIRS := $(net_4_5_parallel_dirs) aot-compiler
 xbuild_12_SUBDIRS := $(xbuild_4_0_dirs)
+xbuild_14_SUBDIRS := $(xbuild_4_0_dirs)
 
 include ../build/rules.make
 
-SUBDIRS = $(net_2_0_dirs) $(net_2_0_only_dirs) $(mobile_dirs) $(monotouch_dirs) $(net_4_0_dirs) $(net_4_0_only_dirs) $(net_4_5_dirs)
+SUBDIRS = $(mobile_static_dirs) $(mobile_dynamic_dirs) $(monotouch_dirs) $(monodroid_dirs) $(xammac_dirs) $(net_4_5_dirs) $(net_4_5_parallel_dirs)
 
-DIST_ONLY_SUBDIRS = dlr aot-compiler $(xbuild_4_0_dirs)
+DIST_ONLY_SUBDIRS = dlr aot-compiler reference-assemblies $(xbuild_4_0_dirs)
 
 # No new makefiles for: System.Messaging, System.Web.Mobile,
 # System.ServiceProcess
@@ -274,6 +254,7 @@ DISTFILES = \
        doc/TemplateTest.cs     \
        notes/BitVecto32.txt    \
        MicrosoftAjaxLibrary/License.htm        \
+       test-helpers/NetworkHelpers.cs  \
        $(monolite_files)
 
 .PHONY: all-local $(STD_TARGETS:=-local)
@@ -299,3 +280,5 @@ dist-local: dist-default
 
 csproj-local:
 
+do-clean:
+       $(RM) -rf $(topdir)/class/lib/$(PROFILE)