diff --git a/.gitmodules b/.gitmodules index e68f7e698393..df7f39cd320e 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,7 +1,3 @@ -[submodule "external/fsharp"] - path = external/fsharp - url = ../../fsharp/fsharp.git - branch = master [submodule "external/guiunit"] path = external/guiunit url = ../../mono/guiunit.git diff --git a/Make.config b/Make.config index d506fd079911..3557857877e7 100644 --- a/Make.config +++ b/Make.config @@ -230,8 +230,6 @@ DEVICETV_OBJC_CFLAGS = $(DEVICETV_CFLAGS) $(DEVICE_OBJC_CFLAGS) # paths to the modules we depend on, as variables, so people can put # things in other places if they absolutely must. MONO_PATH=$(TOP)/external/mono -WATCH_MONO_PATH=$(TOP)/external/mono -FSHARP_PATH=$(TOP)/external/fsharp TOUCH_UNIT_PATH=$(TOP)/external/Touch.Unit NUNITLITE_PATH=$(TOP)/external/mono/external/nunit-lite OPENTK_PATH=$(TOP)/external/opentk diff --git a/Makefile b/Makefile index b3dd84855443..6b4565b51e03 100644 --- a/Makefile +++ b/Makefile @@ -97,7 +97,7 @@ $(MAC_DESTDIR)$(MAC_FRAMEWORK_DIR)/Commands: $(MAC_DESTDIR)/$(MAC_FRAMEWORK_CURRENT_DIR)/buildinfo: Make.config.inc .git/index | $(MAC_DESTDIR)/$(MAC_FRAMEWORK_CURRENT_DIR) $(Q_GEN) echo "Version: $(MAC_PACKAGE_VERSION)" > $@ $(Q) echo "Hash: $(shell git log --oneline -1 --pretty=%h)" >> $@ - $(Q) echo "Branch: $(shell git symbolic-ref --short HEAD)" >> $@ + $(Q) echo "Branch: $(CURRENT_BRANCH)" >> $@ $(Q) echo "Build date: $(shell date '+%Y-%m-%d %H:%M:%S%z')" >> $@ $(MAC_DESTDIR)/$(MAC_FRAMEWORK_CURRENT_DIR)/updateinfo: Make.config.inc diff --git a/Xamarin.Mac.sln b/Xamarin.Mac.sln index 9ee932978c73..127328a640ea 100644 --- a/Xamarin.Mac.sln +++ b/Xamarin.Mac.sln @@ -25,6 +25,12 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "generator", "src\generator. EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "generator-tests", "tests\generator\generator-tests.csproj", "{10790816-D00E-40A0-8653-2A8AB4DD33A9}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "link sdk-mac", "tests\linker\mac\link sdk\link sdk-mac.csproj", "{F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "link all-mac", "tests\linker\mac\link all\link all-mac.csproj", "{4C943B12-C5AF-4CD4-B583-B4011D13CAAB}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "dont link-mac-unified", "tests\linker\mac\dont link\dont link-mac-unified.csproj", "{78831857-A261-8EE0-A5F6-33D2628DE5D0}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -351,6 +357,90 @@ Global {10790816-D00E-40A0-8653-2A8AB4DD33A9}.winphone_Debug|Any CPU.Build.0 = Debug|Any CPU {10790816-D00E-40A0-8653-2A8AB4DD33A9}.winphone_Release|Any CPU.ActiveCfg = Debug|Any CPU {10790816-D00E-40A0-8653-2A8AB4DD33A9}.winphone_Release|Any CPU.Build.0 = Debug|Any CPU + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.Debug|Any CPU.ActiveCfg = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.Debug|Any CPU.Build.0 = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.Release|Any CPU.ActiveCfg = Release|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.Release|Any CPU.Build.0 = Release|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.Debug|x86.ActiveCfg = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.Debug|x86.Build.0 = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.Release|x86.ActiveCfg = Release|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.Release|x86.Build.0 = Release|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.net_2_0_Debug|Any CPU.ActiveCfg = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.net_2_0_Debug|Any CPU.Build.0 = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.net_2_0_Release|Any CPU.ActiveCfg = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.net_2_0_Release|Any CPU.Build.0 = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.net_3_5_Debug|Any CPU.ActiveCfg = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.net_3_5_Debug|Any CPU.Build.0 = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.net_3_5_Release|Any CPU.ActiveCfg = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.net_3_5_Release|Any CPU.Build.0 = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.net_4_0_Debug|Any CPU.ActiveCfg = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.net_4_0_Debug|Any CPU.Build.0 = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.net_4_0_Release|Any CPU.ActiveCfg = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.net_4_0_Release|Any CPU.Build.0 = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.silverlight_Debug|Any CPU.ActiveCfg = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.silverlight_Debug|Any CPU.Build.0 = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.silverlight_Release|Any CPU.ActiveCfg = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.silverlight_Release|Any CPU.Build.0 = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.winphone_Debug|Any CPU.ActiveCfg = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.winphone_Debug|Any CPU.Build.0 = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.winphone_Release|Any CPU.ActiveCfg = Debug|x86 + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579}.winphone_Release|Any CPU.Build.0 = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.Debug|Any CPU.ActiveCfg = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.Debug|Any CPU.Build.0 = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.Release|Any CPU.ActiveCfg = Release|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.Release|Any CPU.Build.0 = Release|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.Debug|x86.ActiveCfg = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.Debug|x86.Build.0 = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.Release|x86.ActiveCfg = Release|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.Release|x86.Build.0 = Release|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.net_2_0_Debug|Any CPU.ActiveCfg = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.net_2_0_Debug|Any CPU.Build.0 = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.net_2_0_Release|Any CPU.ActiveCfg = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.net_2_0_Release|Any CPU.Build.0 = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.net_3_5_Debug|Any CPU.ActiveCfg = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.net_3_5_Debug|Any CPU.Build.0 = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.net_3_5_Release|Any CPU.ActiveCfg = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.net_3_5_Release|Any CPU.Build.0 = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.net_4_0_Debug|Any CPU.ActiveCfg = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.net_4_0_Debug|Any CPU.Build.0 = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.net_4_0_Release|Any CPU.ActiveCfg = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.net_4_0_Release|Any CPU.Build.0 = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.silverlight_Debug|Any CPU.ActiveCfg = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.silverlight_Debug|Any CPU.Build.0 = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.silverlight_Release|Any CPU.ActiveCfg = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.silverlight_Release|Any CPU.Build.0 = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.winphone_Debug|Any CPU.ActiveCfg = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.winphone_Debug|Any CPU.Build.0 = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.winphone_Release|Any CPU.ActiveCfg = Debug|x86 + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB}.winphone_Release|Any CPU.Build.0 = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.Debug|Any CPU.ActiveCfg = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.Debug|Any CPU.Build.0 = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.Release|Any CPU.ActiveCfg = Release|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.Release|Any CPU.Build.0 = Release|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.Debug|x86.ActiveCfg = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.Debug|x86.Build.0 = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.Release|x86.ActiveCfg = Release|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.Release|x86.Build.0 = Release|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.net_2_0_Debug|Any CPU.ActiveCfg = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.net_2_0_Debug|Any CPU.Build.0 = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.net_2_0_Release|Any CPU.ActiveCfg = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.net_2_0_Release|Any CPU.Build.0 = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.net_3_5_Debug|Any CPU.ActiveCfg = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.net_3_5_Debug|Any CPU.Build.0 = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.net_3_5_Release|Any CPU.ActiveCfg = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.net_3_5_Release|Any CPU.Build.0 = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.net_4_0_Debug|Any CPU.ActiveCfg = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.net_4_0_Debug|Any CPU.Build.0 = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.net_4_0_Release|Any CPU.ActiveCfg = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.net_4_0_Release|Any CPU.Build.0 = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.silverlight_Debug|Any CPU.ActiveCfg = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.silverlight_Debug|Any CPU.Build.0 = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.silverlight_Release|Any CPU.ActiveCfg = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.silverlight_Release|Any CPU.Build.0 = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.winphone_Debug|Any CPU.ActiveCfg = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.winphone_Debug|Any CPU.Build.0 = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.winphone_Release|Any CPU.ActiveCfg = Debug|x86 + {78831857-A261-8EE0-A5F6-33D2628DE5D0}.winphone_Release|Any CPU.Build.0 = Debug|x86 EndGlobalSection GlobalSection(MonoDevelopProperties) = preSolution StartupItem = tools\mmp\mmp.csproj @@ -385,5 +475,8 @@ Global {D12F0F7B-8DE3-43EC-BA49-41052D065A9B} = {542D4426-F287-4126-9889-E17628DAECEA} {EA3E6B50-AE2B-4A63-BBFC-9888B93331CA} = {542D4426-F287-4126-9889-E17628DAECEA} {10790816-D00E-40A0-8653-2A8AB4DD33A9} = {542D4426-F287-4126-9889-E17628DAECEA} + {F5FF0F5E-0C30-4719-A2B1-5DAE33D1E579} = {542D4426-F287-4126-9889-E17628DAECEA} + {4C943B12-C5AF-4CD4-B583-B4011D13CAAB} = {542D4426-F287-4126-9889-E17628DAECEA} + {78831857-A261-8EE0-A5F6-33D2628DE5D0} = {542D4426-F287-4126-9889-E17628DAECEA} EndGlobalSection EndGlobal diff --git a/builds/Makefile b/builds/Makefile index 7e6d01fefd0a..85cdb1edbfac 100644 --- a/builds/Makefile +++ b/builds/Makefile @@ -91,9 +91,11 @@ CCACHE_CXXFLAGS=-Qunused-arguments # SDK_CONFIG=$(MONO_PATH)/sdks/Make.config SDK_ARGS=XCODE_DIR=$(XCODE_DEVELOPER_ROOT) IOS_VERSION=$(IOS_SDK_VERSION) IOS_VERSION_MIN=$(MIN_IOS_SDK_VERSION) TVOS_VERSION=$(TVOS_SDK_VERSION) TVOS_VERSION_MIN=$(MIN_TVOS_SDK_VERSION) WATCHOS_VERSION=$(WATCH_SDK_VERSION) WATCHOS_VERSION_MIN=$(MIN_WATCHOS_SDK_VERSION) IGNORE_PROVISION_LLVM=1 +SDK32_ARGS=XCODE_DIR=$(XCODE94_DEVELOPER_ROOT) IOS_VERSION=$(IOS_SDK_VERSION) IOS_VERSION_MIN=$(MIN_IOS_SDK_VERSION) TVOS_VERSION=$(TVOS_SDK_VERSION) TVOS_VERSION_MIN=$(MIN_TVOS_SDK_VERSION) WATCHOS_VERSION=$(WATCH_SDK_VERSION) WATCHOS_VERSION_MIN=$(MIN_WATCHOS_SDK_VERSION) IGNORE_PROVISION_LLVM=1 ifdef DISABLE_DOWNLOAD_LLVM SDK_ARGS += DISABLE_DOWNLOAD_LLVM=1 +SDK32_ARGS += DISABLE_DOWNLOAD_LLVM=1 endif SDK_BUILDDIR = $(MONO_PATH)/sdks/builds @@ -388,11 +390,6 @@ endif $(MONO_PATH)/configure: $(MONO_PATH)/configure.ac $(BUILDS_MAKEFILE_DEP) $(Q) ./wrap-autogen.sh $(MONO_PATH) mono $(XAMARIN_AUTOGEN_FLAGS) -ifneq ($(WATCH_MONO_PATH),$(MONO_PATH)) -$(WATCH_MONO_PATH)/configure: $(WATCH_MONO_PATH)/configure.ac $(BUILDS_MAKEFILE_DEP) - $(Q) ./wrap-autogen.sh $(WATCH_MONO_PATH) mono -endif - configure-mono: rm -f $(MONO_PATH)/configure $(MAKE) $(MONO_PATH)/configure @@ -420,6 +417,7 @@ TOOLS64_LDFLAGS=-arch x86_64 -mmacosx-version-min=$(MIN_OSX_SDK_VERSION) $(COMMO TOOLS64_CONFIGURE_FLAGS= --build=x86_64-apple-darwin10 \ --with-monotouch_tv=yes \ + --with-monotouch_watch=yes \ --prefix=$(BUILD_DESTDIR)/tools64 \ --enable-maintainer-mode \ --cache-file=../tools64.config.cache \ @@ -434,12 +432,6 @@ TOOLS64_CONFIGURE_FLAGS= --build=x86_64-apple-darwin10 \ --disable-boehm \ $(XAMARIN_IOS_CONFIGURE_FLAGS) \ -ifeq ($(WATCH_MONO_PATH),$(MONO_PATH)) -TOOLS64_CONFIGURE_FLAGS += --with-monotouch_watch=yes -else -TOOLS64_CONFIGURE_FLAGS += --with-monotouch_watch=no -endif - TOOLS64_ACVARS = $(COMMON_ACVARS) TOOLS64_CONFIGURE_ENVIRONMENT = \ @@ -493,79 +485,6 @@ install-local:: install-tools-tvos install-tools:: install-tools-tvos endif -# -# Xamarin.WatchOS BCL assemblies -# -# We need to build the WatchOS BCL using the same mono checkout as we're using for the -# corresponding Mono runtimes, which means we can't use the normal tools64 build -# -# Also we can't reuse the existing watchsimulator/targetwatch builds, since their -# monos don't run (correctly) on desktop OSX. -# -# So we build an entire Mono just to build the WatchOS BCL. -# - -WATCHBCL_CFLAGS=-arch x86_64 -mmacosx-version-min=$(MIN_OSX_SDK_VERSION) -WATCHBCL_CXXFLAGS=-arch x86_64 -mmacosx-version-min=$(MIN_OSX_SDK_VERSION) -WATCHBCL_LDFLAGS=-arch x86_64 -mmacosx-version-min=$(MIN_OSX_SDK_VERSION) $(COMMON_LDFLAGS) -WATCHBCL_ACVARS = $(COMMON_ACVARS) - - -WATCHBCL_CONFIGURE_FLAGS= --build=x86_64-apple-darwin10 \ - --prefix=$(BUILD_DESTDIR)/watchbcl \ - --enable-maintainer-mode \ - --cache-file=../watchbcl.config.cache \ - --with-glib=embedded \ - --enable-minimal=com \ - --with-profile4_x=no \ - --with-monotouch=no \ - --with-monotouch_watch=yes \ - --with-monotouch_tv=no \ - --with-xammac=no \ - --with-mcs-docs=no \ - --disable-nls \ - --disable-iconv \ - --disable-boehm \ - $(XAMARIN_IOS_CONFIGURE_FLAGS) - -WATCHBCL_CONFIGURE_ENVIRONMENT = \ - $(WATCHBCL_ACVARS) \ - CFLAGS="$(WATCHBCL_CFLAGS)" \ - CXXFLAGS="$(WATCHBCL_CXXFLAGS)" \ - LDFLAGS="$(WATCHBCL_LDFLAGS)" \ - CC="$(MAC_CC)" \ - CXX="$(MAC_CXX)" \ - -ifdef INCLUDE_WATCH -setup:: setup-watchbcl -build:: build-watchbcl -clean-local:: clean-watchbcl -endif - -watchbcl: build-watchbcl install-tools-watch - -setup-watchbcl: .stamp-configure-watchbcl - -ifneq ($(WATCH_MONO_PATH),$(MONO_PATH)) -.stamp-configure-watchbcl: $(WATCH_MONO_PATH)/configure - $(Q) $(WATCHBCL_CONFIGURE_ENVIRONMENT) ./wrap-configure.sh watchbcl ../$(WATCH_MONO_PATH)/configure $(WATCHBCL_CONFIGURE_FLAGS) -endif - -build-tools-bcl: build-watchbcl -build-tools: build-watchbcl - -ifeq ($(WATCH_MONO_PATH),$(MONO_PATH)) -.stamp-build-watchbcl: .stamp-build-tools64 $(MONO_DEPENDENCIES) -else -.stamp-build-watchbcl: .stamp-configure-watchbcl .stamp-build-tools64 $(MONO_DEPENDENCIES) - $(MAKE) -C watchbcl all EXTERNAL_MCS=$(SYSTEM_CSC) EXTERNAL_RUNTIME=$(SYSTEM_MONO) - $(MAKE) -C watchbcl install EXTERNAL_MCS=$(SYSTEM_CSC) EXTERNAL_RUNTIME=$(SYSTEM_MONO) -endif - $(Q) touch $@ - -clean-watchbcl: - rm -rf watchbcl .stamp-*-watchbcl watchbcl.config.cache - # # Xamarin.iOS/WatchOS/TVOS BCL assemblies # @@ -587,7 +506,6 @@ IOS_REPL_ASSEMBLIES = mscorlib System System.Core System.Xml Mono.CSharp IOS_FACADE_ASSEMBLIES = $(monotouch_PARALLEL_SUBDIRS) $(monotouch_SUBDIRS) -# TVOS/WATCHOS BCL is built from a different mono branch and the assembly list might differ across time TVOS_ASSEMBLIES = $(IOS_ASSEMBLIES) WATCHOS_ASSEMBLIES = $(filter-out Mono.Security Mono.Data.Tds,$(IOS_ASSEMBLIES)) TVOS_FACADE_ASSEMBLIES = $(IOS_FACADE_ASSEMBLIES) @@ -608,8 +526,8 @@ watch-facade-check: $(WATCH_BCL_TARGETS) disabled-watch-facade-check: $(WATCH_BCL_TARGETS) $(Q) rm -f .$@* $(Q) echo $(WATCHOS_FACADE_ASSEMBLIES) | tr ' ' '\n' | sort > .$@1 - $(Q) ls -1 $(WATCH_MONO_PATH)/mcs/class/lib/monotouch_watch/Facades | grep dll$$ | sed 's/[.]dll//' | sort > .$@2 - $(Q) if ! diff -u .$@1 .$@2; then echo "\n*** There are Facade assemblies in "$(WATCH_MONO_PATH)/mcs/class/lib/monotouch_watch/Facades" not defined in "$(FACADE_SUBDIRS_MK)" ***\n"; exit 1; fi + $(Q) ls -1 $(MONO_PATH)/mcs/class/lib/monotouch_watch/Facades | grep dll$$ | sed 's/[.]dll//' | sort > .$@2 + $(Q) if ! diff -u .$@1 .$@2; then echo "\n*** There are Facade assemblies in "$(MONO_PATH)/mcs/class/lib/monotouch_watch/Facades" not defined in "$(FACADE_SUBDIRS_MK)" ***\n"; exit 1; fi $(Q) rm -f .$@* tvos-facade-check: $(TVOS_BCL_TARGETS) @@ -806,13 +724,10 @@ $(2):: build-$(2) build:: build-$(2) clean-local:: clean-$(2) -# config/eglib-config.h is needed by the builds in runtime/ .stamp-build-$(2): $(MONO_PATH)/configure $(MONO_DEPENDENCIES) $(BUILD_DESTDIR)/$(2) $(MAKE) -C $(SDK_BUILDDIR) package-ios-$(3) $(SDK_ARGS) $(Q) cp -r $(SDK_DESTDIR)/ios-$(4)/lib $(BUILD_DESTDIR)/$(2) $(Q) cp -r $(SDK_DESTDIR)/ios-$(4)/include $(BUILD_DESTDIR)/$(2) - cp $(SDK_BUILDDIR)/ios-$(4)/config.h $(BUILD_DESTDIR)/$(2)/include/mono-2.0 - cp $(SDK_BUILDDIR)/ios-$(4)/mono/eglib/eglib-config.h $(BUILD_DESTDIR)/$(2)/include/mono-2.0 $(Q) touch $$@ build-$(2): .stamp-build-$(2) @@ -919,8 +834,6 @@ endif $(Q) mkdir -p $(BUILD_DESTDIR)/watchsimulator $(Q) cp -r $(SDK_DESTDIR)/ios-simwatch-release/lib $(BUILD_DESTDIR)/watchsimulator $(Q) cp -r $(SDK_DESTDIR)/ios-simwatch-release/include $(BUILD_DESTDIR)/watchsimulator - cp $(SDK_BUILDDIR)/ios-simwatch-release/config.h $(BUILD_DESTDIR)/watchsimulator/include/mono-2.0 - cp $(SDK_BUILDDIR)/ios-simwatch-release/mono/eglib/eglib-config.h $(BUILD_DESTDIR)/watchsimulator/include/mono-2.0 $(Q) touch $@ build-watchsimulator: .stamp-build-watchsimulator @@ -1000,8 +913,6 @@ endif $(Q) mkdir -p $(BUILD_DESTDIR)/tvsimulator $(Q) cp -r $(SDK_DESTDIR)/ios-simtv-release/lib $(BUILD_DESTDIR)/tvsimulator $(Q) cp -r $(SDK_DESTDIR)/ios-simtv-release/include $(BUILD_DESTDIR)/tvsimulator - cp $(SDK_BUILDDIR)/ios-simtv-release/config.h $(BUILD_DESTDIR)/tvsimulator/include/mono-2.0 - cp $(SDK_BUILDDIR)/ios-simtv-release/mono/eglib/eglib-config.h $(BUILD_DESTDIR)/tvsimulator/include/mono-2.0 $(Q) touch $@ build-tvsimulator: .stamp-build-tvsimulator @@ -1092,8 +1003,6 @@ clean-local:: clean-$(2) $(MAKE) -C $(SDK_BUILDDIR) package-ios-$(3) $(SDK_ARGS) $(Q) mkdir -p $(BUILD_DESTDIR)/$(2) $(Q) cp -r $(SDK_DESTDIR)/ios-$(3)-release/* $(BUILD_DESTDIR)/$(2) - $(Q) cp -r $(SDK_BUILDDIR)/ios-$(3)-release/config.h $(BUILD_DESTDIR)/$(2)/include/mono-2.0 - $(Q) cp -r $(SDK_BUILDDIR)/ios-$(3)-release/mono/eglib/eglib-config.h $(BUILD_DESTDIR)/$(2)/include/mono-2.0 $(Q) touch $$@ build-$(2): .stamp-build-$(2) @@ -1268,8 +1177,6 @@ watchos:: targetwatch $(MAKE) -C $(SDK_BUILDDIR) package-ios-targetwatch $(SDK_ARGS) $(Q) mkdir -p $(BUILD_DESTDIR)/targetwatch $(Q) cp -r $(SDK_DESTDIR)/ios-targetwatch-release/* $(BUILD_DESTDIR)/targetwatch - $(Q) cp -r $(SDK_BUILDDIR)/ios-targetwatch-release/config.h $(BUILD_DESTDIR)/targetwatch/include/mono-2.0 - $(Q) cp -r $(SDK_BUILDDIR)/ios-targetwatch-release/mono/eglib/eglib-config.h $(BUILD_DESTDIR)/targetwatch/include/mono-2.0 $(Q) touch $@ build-targetwatch: .stamp-build-targetwatch @@ -1381,8 +1288,6 @@ tvos:: targettv $(MAKE) -C $(SDK_BUILDDIR) package-ios-targettv $(SDK_ARGS) $(Q) mkdir -p $(BUILD_DESTDIR)/targettv $(Q) cp -r $(SDK_DESTDIR)/ios-targettv-release/* $(BUILD_DESTDIR)/targettv - $(Q) cp -r $(SDK_BUILDDIR)/ios-targettv-release/config.h $(BUILD_DESTDIR)/targettv/include/mono-2.0 - $(Q) cp -r $(SDK_BUILDDIR)/ios-targettv-release/mono/eglib/eglib-config.h $(BUILD_DESTDIR)/targettv/include/mono-2.0 $(Q) touch $@ build-targettv: .stamp-build-targettv @@ -1498,11 +1403,15 @@ ifdef INCLUDE_DEVICE clean-local:: clean-llvm endif -build-llvm32: .stamp-build-llvm -build-llvm64: .stamp-build-llvm +build-llvm32: .stamp-build-llvm .stamp-build-llvm32 +build-llvm64: .stamp-build-llvm .stamp-build-llvm32 .stamp-build-llvm: $(SDK_CONFIG) - $(MAKE) -C $(SDK_BUILDDIR) provision-llvm36-llvm32 provision-llvm-llvm64 $(SDK_ARGS) + $(MAKE) -C $(SDK_BUILDDIR) provision-llvm-llvm64 $(SDK_ARGS) + $(Q) touch $@ + +.stamp-build-llvm32: $(SDK_CONFIG) + $(MAKE) -C $(SDK_BUILDDIR) provision-llvm36-llvm32 $(SDK32_ARGS) $(Q) touch $@ clean-llvm: $(SDK_CONFIG) @@ -1531,8 +1440,8 @@ $(PREFIX)/LLVM/bin: $(PREFIX)/LLVM36/bin: $(Q) mkdir -p $@ -install-llvm32:.stamp-build-llvm $(LLVM_TARGETS) -install-llvm64: .stamp-build-llvm $(LLVM_TARGETS) +install-llvm32:.stamp-build-llvm .stamp-build-llvm32 $(LLVM_TARGETS) +install-llvm64: .stamp-build-llvm .stamp-build-llvm32 $(LLVM_TARGETS) llvm: build-llvm64 install-llvm llvm64: install-llvm64 @@ -1540,11 +1449,6 @@ llvm64: install-llvm64 $(MONO_PATH)/tools/offsets-tool/MonoAotOffsetsDumper.exe: $(MONO_PATH)/configure $(wildcard $(MONO_PATH)/tools/offsets-tool/*.cs) $(Q) $(MAKE) -C $(dir $@) MonoAotOffsetsDumper.exe -ifneq ($(WATCH_MONO_PATH),$(MONO_PATH)) -$(WATCH_MONO_PATH)/tools/offsets-tool/MonoAotOffsetsDumper.exe: $(wildcard $(WATCH_MONO_PATH)/tools/offsets-tool/*.cs) - $(Q) $(MAKE) -C $(dir $@) MonoAotOffsetsDumper.exe -endif - targetwatch/mono/arch/arm/arm_dpimacros.h: .stamp-configure-targetwatch $(Q) $(MAKE) -C $(dir $@) $(notdir $@) @@ -1574,7 +1478,7 @@ build:: build-$(1) install-local:: install-$(1) clean-local:: clean-$(1) -.stamp-build-$(1): .stamp-build-llvm $(MONO_PATH)/configure $(MONO_PATH)/tools/offsets-tool/MonoAotOffsetsDumper.exe $(MONO_DEPENDENCIES) $(SDK_CONFIG) +.stamp-build-$(1): .stamp-build-llvm .stamp-build-llvm32 $(MONO_PATH)/configure $(MONO_PATH)/tools/offsets-tool/MonoAotOffsetsDumper.exe $(MONO_DEPENDENCIES) $(SDK_CONFIG) $(MAKE) -C $(SDK_BUILDDIR) package-ios-$(1) $(SDK_ARGS) $(if $(5), XCODE_DIR=$(5)) $(Q) touch $$@ diff --git a/docs/website/mtouch-errors.md b/docs/website/mtouch-errors.md index 7be3a24de17b..58e6da56748e 100644 --- a/docs/website/mtouch-errors.md +++ b/docs/website/mtouch-errors.md @@ -915,7 +915,9 @@ Alternatively, enable the managed [linker](https://docs.microsoft.com/en-us/xama As a last-straw solution, use an older version of Xamarin.iOS that does not require these new SDKs to be present during the build process. -### MT0136: Cannot find the assembly {assembly} referenced from {assembly}. + + +### MT0136: Cannot find the assembly {assembly} referenced from {assembly}. This warning occurs when an assembly passed to mtouch contains a reference to another assembly that can't be found. @@ -923,7 +925,9 @@ another assembly that can't be found. mtouch may in certain cases still find references at a later point, which means that if the build otherwise succeeds, this warning can be ignored. -### MT0137: Cannot find the assembly {assembly}, referenced by an attribute in {assembly}. + + +### MT0137: Cannot find the assembly {assembly}, referenced by an attribute in {assembly}. This warning occurs when an attribute contains a reference to another assembly that can't be found. @@ -933,6 +937,14 @@ means that if the build otherwise succeeds, this warning can be ignored. + + +### MT0140: File '{framework_filename}' is not a valid framework. + +This error occurs when `mtouch` reads a binary in a `.framework` directory that is not a valid executable. + +It might be a broken file or a broken symlink (after decompressing an archive) to a valid file. The native framework should be removed and replaced with a valid one. + # MT1xxx: Project related error messages ### MT10xx: Installer / mtouch @@ -3116,6 +3128,25 @@ Where * can be: *MSBuild task: PropertyListEditorTaskBase* + + +### MT7068: Error loading '*': * + +*MSBuild task: IntentDefinitionCodegenTaskBase* +*MSBuild task: IntentDefinitionCompilerTaskBase* + + + +### MT7069: Unknown response parameter: * + +*MSBuild task: IntentDefinitionCodegenTaskBase* + + + +### MT7070: All Intents must have a Title + +*MSBuild task: IntentDefinitionCompilerTaskBase* + ## MT8xxx: Runtime error messages