Merge pull request #1872 from xamarin/mono-2017-02

* Bump to mono master

* [build] Profiles cleanup

* Remove 4.x profile dependency

* Replace mdbrebase tool with pathmap and fix broken debug symbols mapping in public builds

* Bump mono and linker submodule

* Add netstandard to the build

* [build] Register linker for submodule checks

* Bump mono

* [build] Add .NET Core open source key

* [build] Update debug symbols to pdb

* [msbuild] Remove smcs compiler overrides

* Update after another Cecil breaking change

* Fixes mmp execution during build to use correct Mono.Cecil. For some reason setting MONO_PATH does not work

* [linker] Update list of Facade assemblies

*  [mtouch] Copy pdb debug symbols when available

* [msbuild] Update test to reflect Mono.Dynamic.Interpreter.dll removal

* [tuner] Update System.Core rule

* [msbuild] Update few test expected debug symbols

* Fixes missing Mono.Security dependency

* Updates mtouch.csproj

* Switch to Mono 2017-02 branch

* Adds pdb handling to mtouch

* Bump linker

* Wire up configuration to MonoTouchSweepStep

* Mono branch name update

* Remove mdbrebase which is no longer needed (compiler does it now)

* Update monomac tuner

* Revert "[linker] Inline BinaryCompatibility.TargetsAtLeast_Desktop_V4_5[_1] (#1518)"

This reverts commit e72b654890.

because it's no longer needed with latest mono

* Bump maccore for mdoc path fix

* Add missing reference

* Bump linker

* Updates mmp.csproj files path

* [tests][mac] Terminate test processes with extreme prejudice. Fixes #52604.

https://bugzilla.xamarin.com/show_bug.cgi?id=52604

* Bump Xamarin Studio to get fix for bug #52648.

Bump Xamarin Studio to get fix for bug #52648 causing build failures.

* Update system Mono to 2017-02

* More mdb to pdb checks update

* Update tests to work with csc compiler

* Another system mono bump

* [tests] Fix mlaunch path, it's no longer shipped with Xamarin Studio. (#1842)

* Fixes tuner IL optimization for get_Size to work with short branches

* Update IntPtrSizeOptimization test to consider Debug mode IL output

* Xamarin.Mac.FSharp.targets - Fix imports to work correctly with ..

.. MSBuildExtensionsPath* .

`MSBuildExtensionsPath*` supports search paths only if the string
`$(MSBuildExtensionsPath)` (or *32/*64) appear in the `Project`
attribute of the `Import` element. Otherwise the value of the property
or the default value is used. So, restructure to conditionally import
rather than a import using a property with the final path.

* [msbuild] Index into the correct item array when printing an error message (#1792)

Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=52860

When the ImageAssets contain an item that doesn't live within
a *.xcassets directory, index into ImageAssets[] rather than
items[] which hasn't been populated yet.

Also fixed the tagsList for-loop to use tagsList.Count instead
for correctness (even though tags.Count and tagsList.Count
should always be identical).

* [msbuild] Ignore .DS_Store files when cloning asset catalogs (#1776)

Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=52851

The problem here is that the .DS_Store file was included in
the .csproj file but did not exist on disk, so when we went
to clone that file into the obj/ dir before running actool
on it, File.Copy() would fail because the file did not
actually exist.

Since these files are worthless anyway, we can safely ignore
them.

Also added logic to verify that files exist before copying
them in order to report a better error than an exception
stack trace.

* [msbuild] Make a build error more clearly worded (#1794)

Related to https://bugzilla.xamarin.com/show_bug.cgi?id=52847

* [msbuild] Remove an unused enum that causes confusion (#1798)

* [msbuild] sanity check TargetiOSDevice property for conflicts (#1799)

Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=52847

If the device archs do not match the configuration, don't
do a device-specific build.

* [msbuild] Make sure to codesign appex dylibs (#1812)

Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=52745

Added a new CodesignNativeLibraries task that scans for
and then codesigns each *.dylib and *.metallib in the
app bundle (minus those in the PlugIns and Watch dirs).

* [msbuild] Run the _ComputeTargetArchitectures target before cleaning (#1828)

Some of the Clean steps need the _ComputeTargetArchitectures
target to run before they can properly do their thing because
they depend on DeviceSpecific paths.

Also added logic to rm -rf extension *.dSYM and framework *.dSYM
dirs in the container app bin dir (which fails on xbuild due to
a bug in xbuild... yay!)

Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=53007

* [msbuild] ALWAYS log ibtool/actool exitCode != 0 as an error (#1840)

Log this as an error even if the log file does not exist and/or
is parseable.

Previously, it was possible that if the log file didn't exist
or it was perfectly validly formatted, we would never log that
error code and so it's possible that we wouldn't log *any*
error at all (e.g. empty log file).

* [msbuild] Added logging for all of the overridden MSBuild default tasks (#1829)

* [msbuild] Fixed PathUtils.AbsoluteToRelative() logic (#1861)

* [msbuild] Fixed PathUtils.AbsoluteToRelative() logic

Don't require the 'absolute' path argument to be a FullPath.

The code already calls Path.GetFullPath() on the 'absolute'
path anyway.

Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=53176

* Fixed ResolveSymbolicLinks() to return the input path if realpath() fails

* [msbuild] Use stamp files to force container app's _CompileToNative (#1878)

Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=53303

* Bump mono

* Another mono bump

* Mono bump

* Update .gitignore with pdb files

* Bump mono

* Mono bump

* Revert "Bump maccore for mdoc path fix"

This reverts commit 50f4564b6b.

* Bump maccore

* Bump mono

* Remove TlsProviderFactoryCallback

* Update linker tests after appletls merge

* Mono bump

* Bump mono to include fix for bug #53481

* Bump mono

* Bump system mono to get fix for #53481.

https://bugzilla.xamarin.com/show_bug.cgi?id=53481

* Bump mono

* Bump mono

* Remove Mono.Dynamic.Interpreter from mtouch tests
This commit is contained in:
Sebastien Pouliot 2017-03-29 14:55:47 -05:00 коммит произвёл GitHub
Родитель 5b36c1ce2b 834d169706
Коммит 743c28f7e0
47 изменённых файлов: 314 добавлений и 309 удалений

1
.gitignore поставляемый
Просмотреть файл

@ -9,6 +9,7 @@ _mac-build
*.exe
*.dll
*.mdb
*.pdb
bin
obj
packages

5
.gitmodules поставляемый
Просмотреть файл

@ -5,7 +5,7 @@
[submodule "external/mono"]
path = external/mono
url = ../../mono/mono.git
branch = mono-4.6.0-branch
branch = 2017-02
[submodule "external/fsharp"]
path = external/fsharp
url = ../../fsharp/fsharp.git
@ -29,3 +29,6 @@
[submodule "external/guiunit"]
path = external/guiunit
url = ../../mono/guiunit.git
[submodule "external/linker"]
path = external/linker
url = ../../mono/linker.git

Просмотреть файл

@ -53,9 +53,9 @@ XCODE_URL=http://xamarin-storage/bot-provisioning/Xcode_8.3.xip
XCODE_DEVELOPER_ROOT=/Applications/Xcode83.app/Contents/Developer
# Minimum Mono version
MIN_MONO_VERSION=4.8.0.269
MAX_MONO_VERSION=4.8.99
MIN_MONO_URL=http://bosstoragemirror.blob.core.windows.net/wrench/mono-4.8.0/e5/e51aa0a7043a8185e264d6332ac7bc1f8f87cd39/MonoFramework-MDK-4.8.0.269.macos10.xamarin.universal.pkg
MIN_MONO_VERSION=5.0.0.18
MAX_MONO_VERSION=5.0.99
MIN_MONO_URL=https://bosstoragemirror.blob.core.windows.net/wrench/mono-2017-02/9e/9ed0907eea13005d4e93b9c5f42c5c3015eba409/MonoFramework-MDK-5.0.0.18.macos10.xamarin.universal.pkg
# Minimum Xamarin Studio version
MIN_XAMARIN_STUDIO_URL=https://bosstoragemirror.blob.core.windows.net/wrench/monodevelop-lion-master/a0/a04f5191c0d91121215fbbaa866f9d420521b6ee/XamarinStudio-6.4.0.5.dmg
@ -228,6 +228,7 @@ OPENTK_PATH=$(TOP)/external/opentk
XAMARIN_MACDEV_PATH=$(TOP)/external/Xamarin.MacDev
GUI_UNIT_PATH=$(TOP)/external/guiunit
MACCORE_PATH=$(TOP)/../maccore
LINKER_TOOLS_PATH=$(TOP)/external/linker
MONO_PREFIX ?= /Library/Frameworks/Mono.framework/Versions/Current
SYSTEM_MCS=$(MONO_PREFIX)/bin/mcs
@ -269,8 +270,6 @@ MAC_PACKAGE_DMG_DIRNAME="$(MAC_PACKAGE_TITLE)"
MAC_PACKAGE_UTI=com.$(MAC_PACKAGE_NAME_LOWER).pkg
MAC_PACKAGE_INSTALL_LOCATION=$(MAC_FRAMEWORK_VERSIONED_DIR)
MDB_REBASE_EXE = $(abspath $(MONO_PATH))/mcs/class/lib/net_4_x/mdbrebase.exe
MDB_REBASE = MONO_PATH=$(dir $(MDB_REBASE_EXE)) $(TOP)/builds/install/tools64/bin/mono --debug $(MDB_REBASE_EXE)
TT = $(SYSTEM_MONO) "/Applications/Xamarin Studio.app/Contents/Resources/lib/monodevelop/AddIns/MonoDevelop.TextTemplating/TextTransform.exe"
PRODUCT_KEY_PATH?=$(TOP)/product.snk
@ -279,6 +278,12 @@ include $(TOP)/mk/quiet.mk
MDTOOL?=DYLD_FALLBACK_LIBRARY_PATH=$(HOME)/lib:/usr/local/lib:/lib:/usr/lib:/Library/Frameworks/Mono.framework/Versions/Current/lib $(SYSTEM_MONO) "/Applications/Xamarin Studio.app/Contents/Resources/lib/monodevelop/bin/mdtool.exe" $(MDTOOL_VERBOSITY)
ifneq ($(BUILD_REVISION),)
# wrench build only
IOS_MCS_FLAGS=-pathmap:$(abspath $(MONO_PATH))/=$(IOS_FRAMEWORK_DIR)/Versions/$(IOS_PACKAGE_VERSION)/src/mono/
MAC_MCS_FLAGS=-pathmap:$(abspath $(MONO_PATH))/=$(MAC_FRAMEWORK_DIR)/Versions/$(MAC_PACKAGE_VERSION)/src/mono/
endif
ifdef ENABLE_XAMARIN
-include $(MACCORE_PATH)/Make.config
endif

Просмотреть файл

@ -140,11 +140,11 @@ MAC_4_5_ASSEMBLY_NAMES = $(MAC_ASSEMBLY_NAMES) $(MAC_4_5_ADDITIONAL_ASSEMBLY_NAM
MAC_4_5_FACADE_ASSEMBLY_NAMES = $(xammac_net_4_5_PARALLEL_SUBDIRS) $(xammac_net_4_5_SUBDIRS)
MAC_ASSEMBLIES = $(addsuffix .dll,$(MAC_ASSEMBLY_NAMES))
MAC_FACADE_ASSEMBLIES = $(addsuffix .dll,$(MAC_FACADE_ASSEMBLY_NAMES))
MAC_NO_MDB_ASSEMBLIES = System.Windows.dll System.Xml.Serialization.dll
MAC_4_5_ASSEMBLIES = $(addsuffix .dll,$(MAC_4_5_ASSEMBLY_NAMES))
MAC_4_5_FACADE_ASSEMBLIES = $(addsuffix .dll,$(MAC_4_5_FACADE_ASSEMBLY_NAMES))
MAC_ASSEMBLIES = $(MAC_ASSEMBLY_NAMES)
MAC_FACADE_ASSEMBLIES = $(MAC_FACADE_ASSEMBLY_NAMES)
MAC_NO_MDB_ASSEMBLIES = System.Windows System.Xml.Serialization
MAC_4_5_ASSEMBLIES = $(MAC_4_5_ASSEMBLY_NAMES)
MAC_4_5_FACADE_ASSEMBLIES = $(MAC_4_5_FACADE_ASSEMBLY_NAMES)
MAC_DIRECTORIES = \
$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/bin \
@ -158,12 +158,12 @@ MAC_DIRECTORIES = \
$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/etc/mono/assemblies/System \
MAC_BCL_TARGETS = \
$(foreach file,$(MAC_ASSEMBLIES),$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/Xamarin.Mac/$(file)) \
$(foreach file,$(filter-out $(MAC_NO_MDB_ASSEMBLIES),$(MAC_ASSEMBLIES)),$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/Xamarin.Mac/$(file).mdb) \
$(foreach file,$(MAC_FACADE_ASSEMBLIES),$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/Xamarin.Mac/Facades/$(file)) \
$(foreach file,$(MAC_4_5_ASSEMBLIES),$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/4.5/$(file)) \
$(foreach file,$(filter-out $(MAC_NO_MDB_ASSEMBLIES),$(MAC_4_5_ASSEMBLIES)),$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/4.5/$(file).mdb) \
$(foreach file,$(MAC_4_5_FACADE_ASSEMBLIES),$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/4.5/Facades/$(file)) \
$(foreach file,$(MAC_ASSEMBLIES),$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/Xamarin.Mac/$(file).dll) \
$(foreach file,$(filter-out $(MAC_NO_MDB_ASSEMBLIES),$(MAC_ASSEMBLIES)),$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/Xamarin.Mac/$(file).pdb) \
$(foreach file,$(MAC_FACADE_ASSEMBLIES),$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/Xamarin.Mac/Facades/$(file).dll) \
$(foreach file,$(MAC_4_5_ASSEMBLIES),$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/4.5/$(file).dll) \
$(foreach file,$(filter-out $(MAC_NO_MDB_ASSEMBLIES),$(MAC_4_5_ASSEMBLIES)),$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/4.5/$(file).pdb) \
$(foreach file,$(MAC_4_5_FACADE_ASSEMBLIES),$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/4.5/Facades/$(file).dll) \
MAC_TARGETS = \
$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/libmono-profiler-log.a \
@ -236,7 +236,7 @@ MAC_DIRECTORIES += \
$$(BUILD_DESTDIR)/mac/$(2)/bcl/Facades \
$$(BUILD_DESTDIR)/mac/$(2)/bcl \
# copy to temporary directory before signing / mdb-rebasing,
# copy to temporary directory before signing,
# otherwise we end up re-signing if installing into a different directory.
$$(BUILD_DESTDIR)/mac/$(2)/bcl/Facades/%.dll: $$(MONO_PATH)/mcs/class/lib/$(2)/Facades/%.dll | $$(BUILD_DESTDIR)/mac/$(2)/bcl/Facades
@# sign the Facade assembly
@ -248,17 +248,14 @@ $$(BUILD_DESTDIR)/mac/$(2)/bcl/%.dll: $$(MONO_PATH)/mcs/class/lib/$(2)/%.dll | $
$$(Q) cp $$< $$@
$$(Q_SN) MONO_CFG_DIR=$(TOP) $(SYSTEM_SN) -q -R $$@ $$(PRODUCT_KEY_PATH)
$$(BUILD_DESTDIR)/mac/$(2)/bcl/%.mdb: $$(MONO_PATH)/mcs/class/lib/$(2)/%.mdb .stamp-build-tools64 | $$(BUILD_DESTDIR)/mac/$(2)/bcl
@# mdb-rebase the mdb
$$(BUILD_DESTDIR)/mac/$(2)/bcl/%.pdb: $$(MONO_PATH)/mcs/class/lib/$(2)/%.pdb .stamp-build-tools64 | $$(BUILD_DESTDIR)/mac/$(2)/bcl
$$(Q) cp $$< $$@
$$(MAC_DESTDIR)$$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/$(1)/%.dll: $$(BUILD_DESTDIR)/mac/$(2)/bcl/%.dll | $$(MAC_DESTDIR)$$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/$(1)/Facades
$$(Q) install -m 0755 $$< $$@
$$(MAC_DESTDIR)$$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/$(1)/%.mdb: $$(BUILD_DESTDIR)/mac/$(2)/bcl/%.mdb | $$(MAC_DESTDIR)$$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/$(1)/Facades
$$(MAC_DESTDIR)$$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/$(1)/%.pdb: $$(BUILD_DESTDIR)/mac/$(2)/bcl/%.pdb | $$(MAC_DESTDIR)$$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/$(1)/Facades
$$(Q) install -m 0644 $$< $$@
$$(Q_MDB) $$(MDB_REBASE) -q -i $$(abspath $$(MONO_PATH))/ -o $$(MAC_TARGETDIR)$$(MAC_FRAMEWORK_CURRENT_DIR)/src/mono/ $$@
$$(Q) chmod 0644 $$@
endef
$(eval $(call MacInstallBclTemplate,Xamarin.Mac,xammac))
@ -270,7 +267,7 @@ $(MAC_DIRECTORIES) $(BUILD_DESTDIR):
mac-facade-check:
$(Q) rm -f .$@*
$(Q) echo $(MAC_4_5_FACADE_ASSEMBLIES) | tr ' ' '\n' | sort > .$@1
$(Q) ls -1 $(MONO_PATH)/mcs/class/lib/xammac_net_4_5/Facades | grep dll$$ | sort > .$@2
$(Q) ls -1 $(MONO_PATH)/mcs/class/lib/xammac_net_4_5/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/xammac_net_4_5/Facades " not defined in "$(FACADE_SUBDIRS_MK)" ***\n"; exit 1; fi
$(Q) rm -f .$@*
@ -395,9 +392,7 @@ TOOLS64_CONFIGURE_FLAGS= --build=x86_64-apple-darwin10 \
--cache-file=../tools64.config.cache \
--with-glib=embedded \
--enable-minimal=com \
--with-profile2=no \
--with-profile4=no \
--with-profile4_5=yes \
--with-profile4_x=no \
--with-monotouch=yes \
--with-xammac=yes \
--with-mcs-docs=no \
@ -447,7 +442,7 @@ build-tools-bcl: build-tools64
build-tools: build-tools64
.stamp-build-tools64: .stamp-configure-tools64
$(MAKE) -C tools64 all EXTERNAL_MCS=$(SYSTEM_MCS) EXTERNAL_RUNTIME=$(SYSTEM_MONO)
$(MAKE) -C tools64 all EXTERNAL_MCS=$(SYSTEM_MCS) EXTERNAL_RUNTIME=$(SYSTEM_MONO) MONOTOUCH_MCS_FLAGS=$(IOS_MCS_FLAGS) XAMMAC_MCS_FLAGS=$(MAC_MCS_FLAGS)
# NO_INSTALL is defined in mono/mcs/build/profiles except for net_4_5. If we don't have it, then it attempts to install into a gac, and sometimes fail
NO_INSTALL=1 $(MAKE) -C tools64 -j 1 install EXTERNAL_MCS=$(SYSTEM_MCS) EXTERNAL_RUNTIME=$(SYSTEM_MONO)
@touch .stamp-build-tools64
@ -569,7 +564,7 @@ IOS_ASSEMBLIES = I18N.CJK I18N.MidEast I18N.Other I18N.Rare I18N.West I18N Mono.
System.Net.Http.WinHttpHandler \
System.Numerics.Vectors System.Reflection.Context System.Reflection.DispatchProxy \
System.Runtime.InteropServices.RuntimeInformation System.Security System.Xml.XPath.XmlDocument \
System.Windows System.Xml.Serialization System.Net Mono.Dynamic.Interpreter \
System.Windows System.Xml.Serialization System.Net \
Microsoft.CSharp Mono.CSharp
IOS_REPL_ASSEMBLIES = mscorlib System System.Core System.Xml Mono.CSharp
@ -639,17 +634,17 @@ TVOS_BCL_TARGETS_DIRS += \
IOS_BCL_TARGETS += \
$(foreach file,$(IOS_ASSEMBLIES),$(PREFIX)/lib/mono/2.1/$(file).dll) \
$(foreach file,$(filter-out $(NO_MDB_ASSEMBLIES),$(IOS_ASSEMBLIES)),$(PREFIX)/lib/mono/2.1/$(file).dll.mdb) \
$(foreach file,$(filter-out $(NO_MDB_ASSEMBLIES),$(IOS_ASSEMBLIES)),$(PREFIX)/lib/mono/2.1/$(file).pdb) \
$(foreach file,$(IOS_ASSEMBLIES),$(PREFIX)/lib/mono/Xamarin.iOS/$(file).dll) \
$(foreach file,$(filter-out $(NO_MDB_ASSEMBLIES),$(IOS_ASSEMBLIES)),$(PREFIX)/lib/mono/Xamarin.iOS/$(file).dll.mdb) \
$(foreach file,$(filter-out $(NO_MDB_ASSEMBLIES),$(IOS_ASSEMBLIES)),$(PREFIX)/lib/mono/Xamarin.iOS/$(file).pdb) \
$(PREFIX)/lib/mono/Xamarin.iOS/mscorlib.dll \
$(PREFIX)/lib/mono/2.1/mscorlib.dll \
$(foreach file,$(IOS_FACADE_ASSEMBLIES),$(PREFIX)/lib/mono/2.1/Facades/$(file).dll) \
$(foreach file,$(IOS_FACADE_ASSEMBLIES),$(PREFIX)/lib/mono/Xamarin.iOS/Facades/$(file).dll) \
$(foreach file,$(IOS_REPL_ASSEMBLIES),$(PREFIX)/lib/mono/2.1/repl/$(file).dll) \
$(foreach file,$(IOS_REPL_ASSEMBLIES),$(PREFIX)/lib/mono/2.1/repl/$(file).dll.mdb) \
$(foreach file,$(IOS_REPL_ASSEMBLIES),$(PREFIX)/lib/mono/2.1/repl/$(file).pdb) \
$(foreach file,$(IOS_REPL_ASSEMBLIES),$(PREFIX)/lib/mono/Xamarin.iOS/repl/$(file).dll) \
$(foreach file,$(IOS_REPL_ASSEMBLIES),$(PREFIX)/lib/mono/Xamarin.iOS/repl/$(file).dll.mdb) \
$(foreach file,$(IOS_REPL_ASSEMBLIES),$(PREFIX)/lib/mono/Xamarin.iOS/repl/$(file).pdb) \
ifndef IKVM
IOS_BCL_TARGETS += $(PREFIX)/bin/btouch-mono
@ -657,11 +652,11 @@ endif
WATCH_BCL_TARGETS += \
$(foreach file,$(WATCHOS_ASSEMBLIES),$(PREFIX)/lib/mono/Xamarin.WatchOS/$(file).dll) \
$(foreach file,$(filter-out $(NO_MDB_ASSEMBLIES),$(WATCHOS_ASSEMBLIES)),$(PREFIX)/lib/mono/Xamarin.WatchOS/$(file).dll.mdb) \
$(foreach file,$(filter-out $(NO_MDB_ASSEMBLIES),$(WATCHOS_ASSEMBLIES)),$(PREFIX)/lib/mono/Xamarin.WatchOS/$(file).pdb) \
$(PREFIX)/lib/mono/Xamarin.WatchOS/mscorlib.dll \
$(foreach file,$(WATCHOS_FACADE_ASSEMBLIES),$(PREFIX)/lib/mono/Xamarin.WatchOS/Facades/$(file).dll) \
$(foreach file,$(WATCHOS_REPL_ASSEMBLIES),$(PREFIX)/lib/mono/Xamarin.WatchOS/repl/$(file).dll) \
$(foreach file,$(WATCHOS_REPL_ASSEMBLIES),$(PREFIX)/lib/mono/Xamarin.WatchOS/repl/$(file).dll.mdb) \
$(foreach file,$(WATCHOS_REPL_ASSEMBLIES),$(PREFIX)/lib/mono/Xamarin.WatchOS/repl/$(file).pdb) \
ifndef IKVM
WATCH_BCL_TARGETS += $(PREFIX)/bin/bwatch-mono
@ -669,20 +664,18 @@ endif
TVOS_BCL_TARGETS += \
$(foreach file,$(TVOS_ASSEMBLIES),$(PREFIX)/lib/mono/Xamarin.TVOS/$(file).dll) \
$(foreach file,$(filter-out $(NO_MDB_ASSEMBLIES),$(TVOS_ASSEMBLIES)),$(PREFIX)/lib/mono/Xamarin.TVOS/$(file).dll.mdb) \
$(foreach file,$(filter-out $(NO_MDB_ASSEMBLIES),$(TVOS_ASSEMBLIES)),$(PREFIX)/lib/mono/Xamarin.TVOS/$(file).pdb) \
$(PREFIX)/lib/mono/Xamarin.TVOS/mscorlib.dll \
$(foreach file,$(TVOS_FACADE_ASSEMBLIES),$(PREFIX)/lib/mono/Xamarin.TVOS/Facades/$(file).dll) \
$(foreach file,$(TVOS_REPL_ASSEMBLIES),$(PREFIX)/lib/mono/Xamarin.TVOS/repl/$(file).dll) \
$(foreach file,$(TVOS_REPL_ASSEMBLIES),$(PREFIX)/lib/mono/Xamarin.TVOS/repl/$(file).dll.mdb) \
$(foreach file,$(TVOS_REPL_ASSEMBLIES),$(PREFIX)/lib/mono/Xamarin.TVOS/repl/$(file).pdb) \
ifndef IKVM
TVOS_BCL_TARGETS += $(PREFIX)/bin/btv-mono
endif
$(PREFIX)/lib/mono/Xamarin.iOS/%.mdb: $(BUILD_DESTDIR)/ios/bcl/%.mdb | $(PREFIX)/lib/mono/Xamarin.iOS $(PREFIX)/lib/mono/Xamarin.iOS/repl
$(PREFIX)/lib/mono/Xamarin.iOS/%.pdb: $(BUILD_DESTDIR)/ios/bcl/%.pdb | $(PREFIX)/lib/mono/Xamarin.iOS $(PREFIX)/lib/mono/Xamarin.iOS/repl
$(Q) install -m 0644 $< $@
$(Q_MDB) $(MDB_REBASE) -q -i $(abspath $(MONO_PATH))/ -o $(IOS_TARGETDIR)$(MONOTOUCH_PREFIX)/src/mono/ $@
$(Q) chmod 0644 $@
$(PREFIX)/lib/mono/Xamarin.iOS/Facades/%.dll: $(BUILD_DESTDIR)/ios/bcl/Facades/%.dll | $(PREFIX)/lib/mono/Xamarin.iOS/Facades
$(Q) install -m 0755 $< $@
@ -699,10 +692,8 @@ $(PREFIX)/lib/mono/2.1/Facades/%.dll: $(BUILD_DESTDIR)/ios/bcl/Facades/%.dll | $
$(PREFIX)/lib/mono/2.1/%.dll: $(BUILD_DESTDIR)/ios/bcl/%.dll | $(PREFIX)/lib/mono/2.1 $(PREFIX)/lib/mono/2.1/repl
$(Q) install -m 0755 $< $@
$(PREFIX)/lib/mono/2.1/%.mdb: $(BUILD_DESTDIR)/ios/bcl/%.mdb | $(PREFIX)/lib/mono/2.1 $(PREFIX)/lib/mono/2.1/repl
$(PREFIX)/lib/mono/2.1/%.pdb: $(BUILD_DESTDIR)/ios/bcl/%.pdb | $(PREFIX)/lib/mono/2.1 $(PREFIX)/lib/mono/2.1/repl
$(Q) install -m 0644 $< $@
$(Q_MDB) $(MDB_REBASE) -q -i $(abspath $(MONO_PATH))/ -o $(IOS_TARGETDIR)$(MONOTOUCH_PREFIX)/src/mono/ $@
$(Q) chmod 0644 $@
ifndef IKVM
$(PREFIX)/bin/btouch-mono: $(BUILD_DESTDIR)/tools64/bin/mono | $(PREFIX)/bin
@ -715,10 +706,8 @@ $(PREFIX)/lib/mono/Xamarin.WatchOS/Facades/%.dll: $(BUILD_DESTDIR)/watchos/bcl/F
$(PREFIX)/lib/mono/Xamarin.WatchOS/%.dll: $(BUILD_DESTDIR)/watchos/bcl/%.dll | $(PREFIX)/lib/mono/Xamarin.WatchOS $(PREFIX)/lib/mono/Xamarin.WatchOS/repl
$(Q) install -m 0755 $< $@
$(PREFIX)/lib/mono/Xamarin.WatchOS/%.mdb: $(BUILD_DESTDIR)/watchos/bcl/%.mdb | $(PREFIX)/lib/mono/Xamarin.WatchOS $(PREFIX)/lib/mono/Xamarin.WatchOS/repl
$(PREFIX)/lib/mono/Xamarin.WatchOS/%.pdb: $(BUILD_DESTDIR)/watchos/bcl/%.pdb | $(PREFIX)/lib/mono/Xamarin.WatchOS $(PREFIX)/lib/mono/Xamarin.WatchOS/repl
$(Q) install -m 0644 $< $@
$(Q_MDB) $(MDB_REBASE) -q -i $(abspath $(MONO_PATH))/ -o $(IOS_TARGETDIR)$(MONOTOUCH_PREFIX)/src/mono/ $@
$(Q) chmod 0644 $@
$(PREFIX)/lib/mono/Xamarin.TVOS/Facades/%.dll: $(BUILD_DESTDIR)/tvos/bcl/Facades/%.dll | $(PREFIX)/lib/mono/Xamarin.TVOS/Facades
$(Q) install -m 0755 $< $@
@ -726,10 +715,8 @@ $(PREFIX)/lib/mono/Xamarin.TVOS/Facades/%.dll: $(BUILD_DESTDIR)/tvos/bcl/Facades
$(PREFIX)/lib/mono/Xamarin.TVOS/%.dll: $(BUILD_DESTDIR)/tvos/bcl/%.dll | $(PREFIX)/lib/mono/Xamarin.TVOS $(PREFIX)/lib/mono/Xamarin.TVOS/repl
$(Q) install -m 0755 $< $@
$(PREFIX)/lib/mono/Xamarin.TVOS/%.mdb: $(BUILD_DESTDIR)/tvos/bcl/%.mdb | $(PREFIX)/lib/mono/Xamarin.TVOS $(PREFIX)/lib/mono/Xamarin.TVOS/repl
$(PREFIX)/lib/mono/Xamarin.TVOS/%.pdb: $(BUILD_DESTDIR)/tvos/bcl/%.pdb | $(PREFIX)/lib/mono/Xamarin.TVOS $(PREFIX)/lib/mono/Xamarin.TVOS/repl
$(Q) install -m 0644 $< $@
$(Q_MDB) $(MDB_REBASE) -q -i $(abspath $(MONO_PATH))/ -o $(IOS_TARGETDIR)$(MONOTOUCH_PREFIX)/src/mono/ $@
$(Q) chmod 0644 $@
ifndef IKVM
$(PREFIX)/bin/btv-mono: $(BUILD_DESTDIR)/tools64/bin/mono | $(PREFIX)/bin
@ -743,7 +730,7 @@ endif
$(Q) install -s -m 0755 $< $@
endif
# copy to temporary directory before signing / mdb-rebasing,
# copy to temporary directory before signing
# otherwise we end up re-signing if installing into a different directory.
$(BUILD_DESTDIR)/ios/bcl/Facades/%.dll: $(MONO_PATH)/mcs/class/lib/monotouch/Facades/%.dll | $(BUILD_DESTDIR)/ios/bcl/Facades
@# sign the Facade assembly
@ -760,12 +747,10 @@ $(BUILD_DESTDIR)/ios/bcl/repl/%.dll: $(MONO_PATH)/mcs/class/lib/monotouch_runtim
$(Q) cp $< $@
$(Q_SN) MONO_CFG_DIR=$(TOP) $(SYSTEM_SN) -q -R $@ $(PRODUCT_KEY_PATH)
$(BUILD_DESTDIR)/ios/bcl/%.mdb: $(MONO_PATH)/mcs/class/lib/monotouch/%.mdb .stamp-build-tools64 | $(BUILD_DESTDIR)/ios/bcl
@# mdb-rebase the mdb
$(BUILD_DESTDIR)/ios/bcl/%.pdb: $(MONO_PATH)/mcs/class/lib/monotouch/%.pdb .stamp-build-tools64 | $(BUILD_DESTDIR)/ios/bcl
$(Q) cp $< $@
$(BUILD_DESTDIR)/ios/bcl/repl/%.mdb: $(MONO_PATH)/mcs/class/lib/monotouch_runtime/%.mdb .stamp-build-tools64 | $(BUILD_DESTDIR)/ios/bcl/repl
@# mdb-rebase the mdb
$(BUILD_DESTDIR)/ios/bcl/repl/%.pdb: $(MONO_PATH)/mcs/class/lib/monotouch_runtime/%.pdb .stamp-build-tools64 | $(BUILD_DESTDIR)/ios/bcl/repl
$(Q) cp $< $@
$(BUILD_DESTDIR)/watchos/bcl/Facades/%.dll: $(WATCH_MONO_PATH)/mcs/class/lib/monotouch_watch/Facades/%.dll | $(BUILD_DESTDIR)/watchos/bcl/Facades
@ -783,12 +768,10 @@ $(BUILD_DESTDIR)/watchos/bcl/repl/%.dll: $(WATCH_MONO_PATH)/mcs/class/lib/monoto
$(Q) cp $< $@
$(Q_SN) MONO_CFG_DIR=$(TOP) $(SYSTEM_SN) -q -R $@ $(PRODUCT_KEY_PATH)
$(BUILD_DESTDIR)/watchos/bcl/%.mdb: $(WATCH_MONO_PATH)/mcs/class/lib/monotouch_watch/%.mdb .stamp-build-watchbcl .stamp-build-tools64 | $(BUILD_DESTDIR)/watchos/bcl
@# mdb-rebase the mdb
$(BUILD_DESTDIR)/watchos/bcl/%.pdb: $(WATCH_MONO_PATH)/mcs/class/lib/monotouch_watch/%.pdb .stamp-build-watchbcl .stamp-build-tools64 | $(BUILD_DESTDIR)/watchos/bcl
$(Q) cp $< $@
$(BUILD_DESTDIR)/watchos/bcl/repl/%.mdb: $(WATCH_MONO_PATH)/mcs/class/lib/monotouch_watch_runtime/%.mdb .stamp-build-watchbcl .stamp-build-tools64 | $(BUILD_DESTDIR)/watchos/bcl/repl
@# mdb-rebase the mdb
$(BUILD_DESTDIR)/watchos/bcl/repl/%.pdb: $(WATCH_MONO_PATH)/mcs/class/lib/monotouch_watch_runtime/%.pdb .stamp-build-watchbcl .stamp-build-tools64 | $(BUILD_DESTDIR)/watchos/bcl/repl
$(Q) cp $< $@
$(BUILD_DESTDIR)/tvos/bcl/Facades/%.dll: $(MONO_PATH)/mcs/class/lib/monotouch_tv/Facades/%.dll | $(BUILD_DESTDIR)/tvos/bcl/Facades
@ -806,37 +789,35 @@ $(BUILD_DESTDIR)/tvos/bcl/repl/%.dll: $(MONO_PATH)/mcs/class/lib/monotouch_tv_ru
$(Q) cp $< $@
$(Q_SN) MONO_CFG_DIR=$(TOP) $(SYSTEM_SN) -q -R $@ $(PRODUCT_KEY_PATH)
$(BUILD_DESTDIR)/tvos/bcl/%.mdb: $(MONO_PATH)/mcs/class/lib/monotouch_tv/%.mdb .stamp-build-tools64 | $(BUILD_DESTDIR)/tvos/bcl
@# mdb-rebase the mdb
$(BUILD_DESTDIR)/tvos/bcl/%.pdb: $(MONO_PATH)/mcs/class/lib/monotouch_tv/%.pdb .stamp-build-tools64 | $(BUILD_DESTDIR)/tvos/bcl
$(Q) cp $< $@
$(BUILD_DESTDIR)/tvos/bcl/repl/%.mdb: $(MONO_PATH)/mcs/class/lib/monotouch_tv_runtime/%.mdb .stamp-build-tools64 | $(BUILD_DESTDIR)/tvos/bcl/repl
@# mdb-rebase the repl mdb
$(BUILD_DESTDIR)/tvos/bcl/repl/%.pdb: $(MONO_PATH)/mcs/class/lib/monotouch_tv_runtime/%.pdb .stamp-build-tools64 | $(BUILD_DESTDIR)/tvos/bcl/repl
$(Q) cp $< $@
$(IOS_BCL_TARGETS_DIRS) $(WATCH_BCL_TARGETS_DIRS) $(TVOS_BCL_TARGETS_DIRS):
$(Q) mkdir -p $@
.SECONDARY: $(foreach file,$(IOS_FACADE_ASSEMBLIES),$(BUILD_DESTDIR)/ios/bcl/Facades/$(file).dll) $(foreach file,$(IOS_ASSEMBLIES),$(BUILD_DESTDIR)/ios/bcl/$(file).dll.mdb) $(foreach file,$(IOS_ASSEMBLIES),$(BUILD_DESTDIR)/ios/bcl/$(file).dll)
.SECONDARY: $(foreach file,$(IOS_FACADE_ASSEMBLIES),$(BUILD_DESTDIR)/ios/bcl/Facades/$(file).dll) $(foreach file,$(IOS_ASSEMBLIES),$(BUILD_DESTDIR)/ios/bcl/$(file).pdb) $(foreach file,$(IOS_ASSEMBLIES),$(BUILD_DESTDIR)/ios/bcl/$(file).dll)
.SECONDARY: \
$(foreach file,$(MAC_FACADE_ASSEMBLIES),$(BUILD_DESTDIR)/mac/xammac/bcl/Facades/$(file)) \
$(foreach file,$(MAC_ASSEMBLIES),$(BUILD_DESTDIR)/mac/xammac/bcl/$(file).mdb) \
$(foreach file,$(MAC_ASSEMBLIES),$(BUILD_DESTDIR)/mac/xammac/bcl/$(file)) \
$(foreach file,$(MAC_FACADE_ASSEMBLIES),$(BUILD_DESTDIR)/mac/net_4_5/bcl/Facades/$(file)) \
$(foreach file,$(MAC_4_5_ASSEMBLIES),$(BUILD_DESTDIR)/mac/net_4_5/bcl/$(file).mdb) \
$(foreach file,$(MAC_4_5_ASSEMBLIES),$(BUILD_DESTDIR)/mac/net_4_5/bcl/$(file)) \
$(foreach file,$(MAC_FACADE_ASSEMBLIES),$(BUILD_DESTDIR)/mac/xammac/bcl/Facades/$(file).dll) \
$(foreach file,$(MAC_ASSEMBLIES),$(BUILD_DESTDIR)/mac/xammac/bcl/$(file).pdb) \
$(foreach file,$(MAC_ASSEMBLIES),$(BUILD_DESTDIR)/mac/xammac/bcl/$(file).dll) \
$(foreach file,$(MAC_FACADE_ASSEMBLIES),$(BUILD_DESTDIR)/mac/net_4_5/bcl/Facades/$(file).dll) \
$(foreach file,$(MAC_4_5_ASSEMBLIES),$(BUILD_DESTDIR)/mac/net_4_5/bcl/$(file).pdb) \
$(foreach file,$(MAC_4_5_ASSEMBLIES),$(BUILD_DESTDIR)/mac/net_4_5/bcl/$(file).dll) \
.SECONDARY: \
$(foreach file,$(WATCHOS_FACADE_ASSEMBLIES),$(BUILD_DESTDIR)/watchos/bcl/Facades/$(file).dll) \
$(foreach file,$(WATCHOS_ASSEMBLIES),$(BUILD_DESTDIR)/watchos/bcl/$(file).dll.mdb) \
$(foreach file,$(WATCHOS_ASSEMBLIES),$(BUILD_DESTDIR)/watchos/bcl/$(file).pdb) \
$(foreach file,$(WATCHOS_ASSEMBLIES),$(BUILD_DESTDIR)/watchos/bcl/$(file).dll) \
$(foreach file,$(WATCHOS_REPL_ASSEMBLIES),$(BUILD_DESTDIR)/watchos/bcl/repl/$(file).dll) \
$(foreach file,$(WATCHOS_REPL_ASSEMBLIES),$(BUILD_DESTDIR)/watchos/bcl/repl/$(file).dll.mdb) \
$(foreach file,$(WATCHOS_REPL_ASSEMBLIES),$(BUILD_DESTDIR)/watchos/bcl/repl/$(file).pdb) \
$(foreach file,$(TVOS_FACADE_ASSEMBLIES),$(BUILD_DESTDIR)/tvos/bcl/Facades/$(file).dll) \
$(foreach file,$(TVOS_ASSEMBLIES),$(BUILD_DESTDIR)/tvos/bcl/$(file).dll.mdb) \
$(foreach file,$(TVOS_ASSEMBLIES),$(BUILD_DESTDIR)/tvos/bcl/$(file).pdb) \
$(foreach file,$(TVOS_ASSEMBLIES),$(BUILD_DESTDIR)/tvos/bcl/$(file).dll) \
$(foreach file,$(TVOS_REPL_ASSEMBLIES),$(BUILD_DESTDIR)/tvos/bcl/repl/$(file).dll) \
$(foreach file,$(TVOS_REPL_ASSEMBLIES),$(BUILD_DESTDIR)/tvos/bcl/repl/$(file).dll.mdb) \
$(foreach file,$(TVOS_REPL_ASSEMBLIES),$(BUILD_DESTDIR)/tvos/bcl/repl/$(file).pdb) \
install-tools-tvos: $(TVOS_BCL_TARGETS)
$(Q) $(MAKE) tvos-facade-check

1
external/linker поставляемый Submodule

@ -0,0 +1 @@
Subproject commit 76eefca920b5c303ec6f56f85a03a4b11a663384

2
external/mono поставляемый

@ -1 +1 @@
Subproject commit e464ddae64cd181c360d4cf93d087db79c4fb192
Subproject commit 5a3b524b608ba4c3b2e21d3f3832b2e149f41d90

Просмотреть файл

@ -65,6 +65,7 @@ $(eval $(call CheckSubmoduleTemplate,Touch.Unit,TOUCH_UNIT))
$(eval $(call CheckSubmoduleTemplate,opentk,OPENTK))
$(eval $(call CheckSubmoduleTemplate,Xamarin.MacDev,XAMARIN_MACDEV))
$(eval $(call CheckSubmoduleTemplate,guiunit,GUI_UNIT))
$(eval $(call CheckSubmoduleTemplate,linker,LINKER_TOOLS))
include $(TOP)/mk/xamarin.mk

Просмотреть файл

@ -12,6 +12,8 @@
<map Token="7cec85d7bea7798e" PublicKey="0024000004800000940000000602000000240000525341310004000011000000438ac2a5acfbf16cbd2b2b47a62762f273df9cb2795ceccdf77d10bf508e69e7a362ea7a45455bbf3ac955e1f2e2814f144e5d817efc4c6502cc012df310783348304e3ae38573c6d658c234025821fda87a0be8a0d504df564e2c93b2b878925f42503e9d54dfef9f9586d9e6f38a305769587b1de01f6c0410328b2c9733db" />
<!-- Mono key: I18N*.dll, Mono.Data.Sqlite.dll, Mono.Data.Tds.dll, Mono.Security.dll -->
<map Token="0738eb9f132ed756" PublicKey="0024000004800000940000000602000000240000525341310004000011000000438ac2a5acfbf16cbd2b2b47a62762f273df9cb2795ceccdf77d10bf508e69e7a362ea7a45455bbf3ac955e1f2e2814f144e5d817efc4c6502cc012df310783348304e3ae38573c6d658c234025821fda87a0be8a0d504df564e2c93b2b878925f42503e9d54dfef9f9586d9e6f38a305769587b1de01f6c0410328b2c9733db" />
<!-- .NET Core open source key: System.ValueTuple.dll -->
<map Token="cc7b13ffcd2ddd51" PublicKey="0024000004800000940000000602000000240000525341310004000011000000438ac2a5acfbf16cbd2b2b47a62762f273df9cb2795ceccdf77d10bf508e69e7a362ea7a45455bbf3ac955e1f2e2814f144e5d817efc4c6502cc012df310783348304e3ae38573c6d658c234025821fda87a0be8a0d504df564e2c93b2b878925f42503e9d54dfef9f9586d9e6f38a305769587b1de01f6c0410328b2c9733db" />
</pubTokenMapping>
</strongNames>
</configuration>

Просмотреть файл

@ -34,7 +34,8 @@ Copyright (C) 2013-2014 Xamarin. All rights reserved.
<AllowedReferenceRelatedFileExtensions>
$(AllowedReferenceRelatedFileExtensions);
.dll.mdb;
.exe.mdb
.exe.mdb;
.pdb
</AllowedReferenceRelatedFileExtensions>
</PropertyGroup>

Просмотреть файл

@ -14,11 +14,6 @@
<!-- Version/fx properties -->
<TargetFrameworkVersion Condition="'$(TargetFrameworkIdentifier)' == '' And '$(TargetFrameworkVersion)' ==''">v4.5</TargetFrameworkVersion>
<FSharpTargets Condition="Exists('$(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.1\Framework\v4.0\Microsoft.FSharp.Targets')">$(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.1\Framework\v4.0\Microsoft.FSharp.Targets</FSharpTargets>
<FSharpTargets Condition="Exists('$(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.0\Framework\v4.0\Microsoft.FSharp.Targets')">$(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.1\Framework\v4.0\Microsoft.FSharp.Targets</FSharpTargets>
<FSharpTargets Condition="'$(FSharpTargets)' == '' And Exists('$(MSBuildFrameworkToolsPath32)\Microsoft.FSharp.Targets')">$(MSBuildFrameworkToolsPath32)\Microsoft.FSharp.Targets</FSharpTargets>
<FSharpTargets Condition="'$(FSharpTargets)' == ''">$(MSBuildBinPath)\Microsoft.FSharp.Targets</FSharpTargets>
<!-- This should be done in the F# target files, but _DebugFileExt is not an upstream
msbuild feature yet, so F# doesn't have this. Once, upstream F# adds it, we can
remove this -->
@ -26,7 +21,18 @@
<_DebugFileExt Condition="'$(_DebugFileExt)' == ''">.mdb</_DebugFileExt>
</PropertyGroup>
<Import Project="$(FSharpTargets)" />
<Import Condition="Exists('$(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.1\Framework\v4.0\Microsoft.FSharp.Targets')"
Project="$(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.1\Framework\v4.0\Microsoft.FSharp.Targets" />
<Import Condition="!$(MSBuildAllProjects.Contains('Microsoft.FSharp.Targets')) and Exists('$(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.0\Framework\v4.0\Microsoft.FSharp.Targets')"
Project="$(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.0\Framework\v4.0\Microsoft.FSharp.Targets" />
<Import Condition="!$(MSBuildAllProjects.Contains('Microsoft.FSharp.Targets')) and Exists('$(MSBuildFrameworkToolsPath32)\Microsoft.FSharp.Targets')"
Project="$(MSBuildFrameworkToolsPath32)\Microsoft.FSharp.Targets" />
<Import Condition="!$(MSBuildAllProjects.Contains('Microsoft.FSharp.Targets'))"
Project="$(MSBuildBinPath)\Microsoft.FSharp.Targets" />
<Import Project="Xamarin.Mac.Common.targets" />
<Import Project="$(MSBuildThisFileDirectory)$(MSBuildThisFileName).After.targets"

Просмотреть файл

@ -29,7 +29,8 @@ Copyright (C) 2014 Xamarin. All rights reserved.
<AllowedReferenceRelatedFileExtensions>
$(AllowedReferenceRelatedFileExtensions);
.dll.mdb;
.exe.mdb
.exe.mdb;
.pdb
</AllowedReferenceRelatedFileExtensions>
</PropertyGroup>

Просмотреть файл

@ -21,13 +21,6 @@ Copyright (C) 2014-2016 Xamarin. All rights reserved.
<!-- Version/fx properties -->
<TargetFrameworkIdentifier Condition="'$(TargetFrameworkIdentifier)' == ''">Xamarin.iOS</TargetFrameworkIdentifier>
<TargetFrameworkVersion Condition="'$(TargetFrameworkVersion)' == ''">v1.0</TargetFrameworkVersion>
<CscToolPath Condition="'$(CscToolPath)' == '' And '$(MD_MTOUCH_SDK_ROOT)' != '' And Exists('$(MD_MTOUCH_SDK_ROOT)/bin/mtouch')">$(MD_MTOUCH_SDK_ROOT)/bin</CscToolPath>
<CscToolPath Condition="'$(CscToolPath)' == '' And '$(MD_MTOUCH_SDK_ROOT)' != '' And Exists('$(MD_MTOUCH_SDK_ROOT)/usr/bin/mtouch')">$(MD_MTOUCH_SDK_ROOT)/usr/bin</CscToolPath>
<CscToolPath Condition="'$(CscToolPath)' == '' And Exists('/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin/mtouch')">/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin</CscToolPath>
<CscToolPath Condition="'$(CscToolPath)' == ''">/Developer/MonoTouch/usr/bin</CscToolPath>
<CscToolExe Condition="'$(CscToolExe)' == ''">smcs</CscToolExe>
<!-- We default to smcs compiler above, so, select the .mdb as the debug ext -->
<CscDebugFileExt Condition="'$(CscDebugFileExt)' == ''">.mdb</CscDebugFileExt>
<DefineConstants>__UNIFIED__;__MOBILE__;__IOS__;$(DefineConstants)</DefineConstants>
</PropertyGroup>

Просмотреть файл

@ -21,14 +21,6 @@ Copyright (C) 2013-2016 Xamarin. All rights reserved.
<!-- Version/fx properties -->
<TargetFrameworkIdentifier Condition="'$(TargetFrameworkIdentifier)' == ''">Xamarin.iOS</TargetFrameworkIdentifier>
<TargetFrameworkVersion Condition="'$(TargetFrameworkVersion)' == ''">v1.0</TargetFrameworkVersion>
<CscToolPath Condition="'$(CscToolPath)' == '' And '$(MD_MTOUCH_SDK_ROOT)' != '' And Exists('$(MD_MTOUCH_SDK_ROOT)/bin/mtouch')">$(MD_MTOUCH_SDK_ROOT)/bin</CscToolPath>
<CscToolPath Condition="'$(CscToolPath)' == '' And '$(MD_MTOUCH_SDK_ROOT)' != '' And Exists('$(MD_MTOUCH_SDK_ROOT)/usr/bin/mtouch')">$(MD_MTOUCH_SDK_ROOT)/usr/bin</CscToolPath>
<CscToolPath Condition="'$(CscToolPath)' == '' And Exists('/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin/mtouch')">/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin</CscToolPath>
<CscToolPath Condition="'$(CscToolPath)' == ''">/Developer/MonoTouch/usr/bin</CscToolPath>
<CscToolExe Condition="'$(CscToolExe)' == '' And '$(TargetFrameworkIdentifier)' == 'Xamarin.iOS'">smcs</CscToolExe>
<CscToolExe Condition="'$(CscToolExe)' == ''">/Library/Frameworks/Mono.framework/Commands/mcs</CscToolExe>
<!-- We default to *mcs compiler above, so, select the .mdb as the debug ext -->
<CscDebugFileExt Condition="'$(CscDebugFileExt)' == ''">.mdb</CscDebugFileExt>
<DefineConstants>__UNIFIED__;__MOBILE__;__IOS__;$(DefineConstants)</DefineConstants>
</PropertyGroup>

Просмотреть файл

@ -29,7 +29,8 @@ Copyright (C) 2013-2016 Xamarin. All rights reserved.
<AllowedReferenceRelatedFileExtensions>
$(AllowedReferenceRelatedFileExtensions);
.dll.mdb;
.exe.mdb
.exe.mdb;
.pdb
</AllowedReferenceRelatedFileExtensions>
</PropertyGroup>

Просмотреть файл

@ -31,17 +31,6 @@ Copyright (C) 2013-2016 Xamarin Inc. All rights reserved.
<TargetFrameworkIdentifier Condition="'$(TargetFrameworkIdentifier)' == ''">Xamarin.iOS</TargetFrameworkIdentifier>
<TargetFrameworkVersion Condition="'$(TargetFrameworkVersion)' == ''">v1.0</TargetFrameworkVersion>
<CscToolPath Condition="'$(CscToolPath)' == '' And Exists('$(MonoTouchSdkRoot)/bin/mtouch')">$(MonoTouchSdkRoot)/bin</CscToolPath>
<CscToolPath Condition="'$(CscToolPath)' == '' And Exists('$(MonoTouchSdkRoot)/usr/bin/mtouch')">$(MonoTouchSdkRoot)/usr/bin</CscToolPath>
<CscToolPath Condition="'$(CscToolPath)' == '' And Exists('/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin/mtouch')">/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin</CscToolPath>
<CscToolPath Condition="'$(CscToolPath)' == ''">/Developer/MonoTouch/usr/bin</CscToolPath>
<CscToolExe Condition="'$(CscToolExe)' == '' And '$(TargetFrameworkIdentifier)' == 'Xamarin.TVOS'">/Library/Frameworks/Mono.framework/Commands/mcs</CscToolExe>
<CscToolExe Condition="'$(CscToolExe)' == '' And '$(TargetFrameworkIdentifier)' == 'Xamarin.WatchOS'">/Library/Frameworks/Mono.framework/Commands/mcs</CscToolExe>
<CscToolExe Condition="'$(CscToolExe)' == ''">smcs</CscToolExe>
<!-- We default to *mcs compiler above, so, select the .mdb as the debug ext. This file gets correctly
imported *before* Microsoft.CSharp.targets -->
<CscDebugFileExt Condition="'$(CscDebugFileExt)' == ''">.mdb</CscDebugFileExt>
<BaseLibDllPath Condition="'$(OS)' == 'Unix' And '$(TargetFrameworkIdentifier)' == 'Xamarin.iOS'">$(MonoTouchSdkRoot)/lib/mono/Xamarin.iOS/Xamarin.iOS.dll</BaseLibDllPath>
<BaseLibDllPath Condition="'$(OS)' != 'Unix' And '$(TargetFrameworkIdentifier)' == 'Xamarin.iOS'">$(MSBuildExtensionsPath)\Xamarin\DontKnowWhereYet\Xamarin.iOS.dll</BaseLibDllPath>
<BTouchToolPath Condition="'$(OS)' == 'Unix' And '$(TargetFrameworkIdentifier)' == 'Xamarin.iOS' And '$(BTouchToolPath)' == ''">$(MonoTouchSdkRoot)/bin/</BTouchToolPath>

Просмотреть файл

@ -35,7 +35,8 @@ Copyright (C) 2013-2016 Xamarin. All rights reserved.
<AllowedReferenceRelatedFileExtensions>
$(AllowedReferenceRelatedFileExtensions);
.dll.mdb;
.exe.mdb
.exe.mdb;
.pdb
</AllowedReferenceRelatedFileExtensions>
</PropertyGroup>

Просмотреть файл

@ -21,13 +21,6 @@ Copyright (C) 2015-2016 Xamarin. All rights reserved.
<!-- Version/fx properties -->
<TargetFrameworkIdentifier Condition="'$(TargetFrameworkIdentifier)' == ''">Xamarin.iOS</TargetFrameworkIdentifier>
<TargetFrameworkVersion Condition="'$(TargetFrameworkVersion)' == ''">v1.0</TargetFrameworkVersion>
<CscToolPath Condition="'$(CscToolPath)' == '' And '$(MD_MTOUCH_SDK_ROOT)' != '' And Exists('$(MD_MTOUCH_SDK_ROOT)/bin/mtouch')">$(MD_MTOUCH_SDK_ROOT)/bin</CscToolPath>
<CscToolPath Condition="'$(CscToolPath)' == '' And '$(MD_MTOUCH_SDK_ROOT)' != '' And Exists('$(MD_MTOUCH_SDK_ROOT)/usr/bin/mtouch')">$(MD_MTOUCH_SDK_ROOT)/usr/bin</CscToolPath>
<CscToolPath Condition="'$(CscToolPath)' == '' And Exists('/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin/mtouch')">/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin</CscToolPath>
<CscToolPath Condition="'$(CscToolPath)' == ''">/Developer/MonoTouch/usr/bin</CscToolPath>
<CscToolExe Condition="'$(CscToolExe)' == ''">smcs</CscToolExe>
<!-- We default to smcs compiler above, so, select .mdb as the debug ext -->
<CscDebugFileExt Condition="'$(CscDebugFileExt)' == ''">.mdb</CscDebugFileExt>
<DefineConstants>__UNIFIED__;__MOBILE__;__IOS__;$(DefineConstants)</DefineConstants>
</PropertyGroup>

Просмотреть файл

@ -66,23 +66,21 @@ namespace Xamarin.iOS.Tasks
"MonoTouchDebugConfiguration.txt",
"Info.plist",
Path.Combine ("Settings.bundle", "Root.plist"),
"Mono.Dynamic.Interpreter.dll",
"Mono.Dynamic.Interpreter.dll.mdb",
"MyLibrary.dll",
"MyLibrary.dll.mdb",
"MyLibrary.pdb",
"MySingleView",
"MySingleView.exe",
"MySingleView.exe.mdb",
"MySingleView.pdb",
"System.Core.dll",
"System.Core.dll.mdb",
"System.Core.pdb",
"System.Xml.dll",
"System.Xml.dll.mdb",
"System.Xml.pdb",
"System.dll",
"System.dll.mdb",
"System.pdb",
"Xamarin.iOS.dll",
"Xamarin.iOS.dll.mdb",
"mscorlib.dll",
"mscorlib.dll.mdb",
"mscorlib.pdb",
"runtime-options.plist",
};
@ -371,7 +369,7 @@ namespace Xamarin.iOS.Tasks
var entries = Directory.GetFileSystemEntries (LibraryProjectBinPath);
Assert.AreEqual (2, entries.Length, "#1");
Assert.IsTrue (File.Exists (library), "#2");
Assert.IsTrue (File.Exists (library + ".mdb"), "#3");
Assert.IsTrue (File.Exists (Path.ChangeExtension (library, ".pdb")), "#3");
var assemblyDef = AssemblyDefinition.ReadAssembly (library);
var actualResources = assemblyDef.MainModule.Resources.Select (n => n.Name).ToList ();

Просмотреть файл

@ -49,11 +49,11 @@ namespace Xamarin.iOS.Tasks
coreFiles.Add ("mscorlib.dll");
if (config == "Debug")
coreFiles.Add ("mscorlib.dll.mdb");
coreFiles.Add ("mscorlib.pdb");
coreFiles.Add (managedExe);
if (config == "Debug")
coreFiles.Add (managedExe + ".mdb");
coreFiles.Add (Path.ChangeExtension (managedExe, ".pdb"));
coreFiles.Add (nativeExe);

Просмотреть файл

@ -125,6 +125,7 @@ define IOS_GENERATOR_template
$(IOS_BUILD_DIR)/$(1)/core.dll: $$(IOS_PMCS) $$(IOS_CORE_SOURCES) frameworks.sources
@mkdir -p $(IOS_BUILD_DIR)/$(1)
$$(call Q_PROF_PMCS,ios/$(1)) PMCS_PROFILE=$(3) $$(IOS_PMCS) -out:$$@ -target:library -debug -unsafe \
-r:$(IOS_LIBDIR)/Mono.Security.dll \
-nowarn:219,618,114,414,1635,3021,$$(IOS_WARNINGS_THAT_YOU_SHOULD_FIX) \
-define:COREBUILD $$(IOS_DEFINES) \
$$(IOS_CORE_SOURCES)
@ -171,6 +172,7 @@ IOS_VARIANTS_TARGETS += $(IOS_BUILD_DIR)/$(1)/$(3)
$(IOS_BUILD_DIR)/$(1)/$(3): $$(IOS_SOURCES) $(IOS_BUILD_DIR)/$(4)/generated_sources $(PRODUCT_KEY_PATH)
@mkdir -p $(IOS_BUILD_DIR)/$(1)
$$(call Q_PROF_PMCS,ios/$(1)) PMCS_PROFILE=$(5) $$(IOS_PMCS) -out:$$@ -target:library -debug -unsafe -optimize \
-r:$(IOS_LIBDIR)/Mono.Security.dll \
-keyfile:$(PRODUCT_KEY_PATH) $$(IOS_DEFINES) \
-nowarn:219,618,114,414,1635,3021,$$(IOS_WARNINGS_THAT_YOU_SHOULD_FIX) \
$$(IOS_SOURCES) @$(IOS_BUILD_DIR)/$(4)/generated_sources
@ -236,7 +238,7 @@ $(IOS_BUILD_DIR)/reference/Xamarin.iOS.dll.mdb: $(IOS_BUILD_DIR)/reference/Xamar
$(Q) cp $< $<.mdb .
#
# System.Drawing.Primitives special handling as it has dependency on monotouch.dll/Xamarin.iOS.dll
# Assemblies which require special handling as they have dependency on monotouch.dll/Xamarin.iOS.dll
# hence we cannot built it as part of Mono BCL
#
@ -251,7 +253,14 @@ $(MONO_PATH)/mcs/class/lib/monotouch/reference_Facades/System.Drawing.Primitives
$(IOS_BUILD_DIR)/%/Facades/System.Drawing.Primitives.dll: $(MONO_PATH)/mcs/class/lib/monotouch/%_Facades/System.Drawing.Primitives.dll | $(IOS_BUILD_DIR)/compat/Facades $(IOS_BUILD_DIR)/reference/Facades
$(Q) cp $< $@
.SECONDARY: $(IOS_BUILD_DIR)/reference/Facades/System.Drawing.Primitives.dll $(IOS_BUILD_DIR)/compat/Facades/System.Drawing.Primitives.dll
$(MONO_PATH)/mcs/class/lib/monotouch/reference_Facades/netstandard.dll: $(IOS_BUILD_DIR)/reference/Xamarin.iOS.dll $(IOS_BUILD_DIR)/reference/OpenTK-1.0.dll
$(call Q_PROF_MCS,ios/unified) $(MAKE) $(if $(V),,-s) -C $(MONO_PATH)/mcs/class/Facades/netstandard PROFILE=monotouch LIBRARY_SUBDIR=reference_Facades MONOTOUCH_MCS_FLAGS="-r:$(abspath $(IOS_BUILD_DIR)/reference/Xamarin.iOS.dll),$(abspath $(IOS_BUILD_DIR)/reference/OpenTK-1.0.dll)"
@touch $@
$(IOS_BUILD_DIR)/reference/Facades/netstandard.dll: $(MONO_PATH)/mcs/class/lib/monotouch/reference_Facades/netstandard.dll | $(IOS_BUILD_DIR)/reference/Facades
$(Q) cp $< $@
.SECONDARY: $(IOS_BUILD_DIR)/reference/Facades/System.Drawing.Primitives.dll $(IOS_BUILD_DIR)/compat/Facades/System.Drawing.Primitives.dll $(IOS_BUILD_DIR)/reference/Facades/netstandard.dll
#
# System.Net.Http is special
@ -277,11 +286,11 @@ IOS_EXTRA_SYSTEM_NET_HTTP_FILES = \
# build (into custom LIBRARY_SUBDIR)
$(MONO_PATH)/mcs/class/lib/monotouch/compat/System.Net.Http.dll: $(IOS_EXTRA_SYSTEM_NET_HTTP_FILES) $(MONO_PATH)/mcs/class/lib/monotouch/System.Net.Http.dll $(IOS_BUILD_DIR)/compat/monotouch.dll
$(call Q_PROF_MCS,ios/compat) $(MAKE) $(if $(V),,-s) -C $(MONO_PATH)/mcs/class/System.Net.Http PROFILE=monotouch LIBRARY_SUBDIR=compat EXTRA_LIB_MCS_FLAGS="-r:$(abspath $(IOS_BUILD_DIR)/compat/monotouch.dll) $(IOS_EXTRA_SYSTEM_NET_HTTP_FILES) -D:XAMARIN_MODERN -d:SYSTEM_NET_HTTP"
$(call Q_PROF_MCS,ios/compat) $(MAKE) $(if $(V),,-s) -C $(MONO_PATH)/mcs/class/System.Net.Http PROFILE=monotouch LIBRARY_SUBDIR=compat MONOTOUCH_MCS_FLAGS=$(IOS_MCS_FLAGS) EXTRA_LIB_MCS_FLAGS="-r:$(abspath $(IOS_BUILD_DIR)/compat/monotouch.dll) $(IOS_EXTRA_SYSTEM_NET_HTTP_FILES) -D:XAMARIN_MODERN -d:SYSTEM_NET_HTTP"
$(Q) touch $@
$(MONO_PATH)/mcs/class/lib/monotouch/reference/System.Net.Http.dll: $(IOS_EXTRA_SYSTEM_NET_HTTP_FILES) $(MONO_PATH)/mcs/class/lib/monotouch/System.Net.Http.dll $(IOS_BUILD_DIR)/reference/Xamarin.iOS.dll
$(call Q_PROF_MCS,ios/unified) $(MAKE) $(if $(V),,-s) -C $(MONO_PATH)/mcs/class/System.Net.Http PROFILE=monotouch LIBRARY_SUBDIR=reference EXTRA_LIB_MCS_FLAGS="-r:$(abspath $(IOS_BUILD_DIR)/reference/Xamarin.iOS.dll) $(IOS_EXTRA_SYSTEM_NET_HTTP_FILES) -D:XAMCORE_2_0 -D:XAMARIN_MODERN -D:SYSTEM_NET_HTTP -D:UNIFIED -D:__UNIFIED__"
$(call Q_PROF_MCS,ios/unified) $(MAKE) $(if $(V),,-s) -C $(MONO_PATH)/mcs/class/System.Net.Http PROFILE=monotouch LIBRARY_SUBDIR=reference MONOTOUCH_MCS_FLAGS=$(IOS_MCS_FLAGS) EXTRA_LIB_MCS_FLAGS="-r:$(abspath $(IOS_BUILD_DIR)/reference/Xamarin.iOS.dll) $(IOS_EXTRA_SYSTEM_NET_HTTP_FILES) -D:XAMCORE_2_0 -D:XAMARIN_MODERN -D:SYSTEM_NET_HTTP -D:UNIFIED -D:__UNIFIED__"
$(Q) touch $@
$(MONO_PATH)/mcs/class/lib/monotouch/reference/System.Net.Http.dll.mdb: $(MONO_PATH)/mcs/class/lib/monotouch/reference/System.Net.Http.dll
@ -295,11 +304,9 @@ $(IOS_BUILD_DIR)/%/System.Net.Http.dll: $(MONO_PATH)/mcs/class/lib/monotouch/%/S
$(Q) cp $< $@
$(call Q_PROF_SN,ios/$@) MONO_CFG_DIR=$(TOP) $(SYSTEM_SN) -q -R $@ $(PRODUCT_KEY_PATH)
# mdb rebase (one target for both compat+reference)
# (one target for both compat+reference)
$(IOS_BUILD_DIR)/%/System.Net.Http.dll.mdb: $(MONO_PATH)/mcs/class/lib/monotouch/%/System.Net.Http.dll.mdb | $(IOS_BUILD_DIR)/compat $(IOS_BUILD_DIR)/reference
@# mdb-rebase the mdb
$(Q) cp $< $@
$(call Q_PROF_GEN,ios/$*) $(MDB_REBASE) -i $(abspath $(MONO_PATH))/ -o $(IOS_TARGETDIR)$(MONOTOUCH_PREFIX)/src/mono/ $@
.SECONDARY: $(IOS_BUILD_DIR)/reference/System.Net.Http.dll $(IOS_BUILD_DIR)/compat/System.Net.Http.dll
@ -356,6 +363,7 @@ IOS_TARGETS += \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.iOS/OpenTK-1.0.dll.config \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.iOS/System.Net.Http.dll \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.iOS/System.Net.Http.dll.mdb \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.iOS/Facades/netstandard.dll \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/32bits/Xamarin.iOS.dll \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/32bits/Xamarin.iOS.dll.mdb \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/64bits/Xamarin.iOS.dll \
@ -559,6 +567,7 @@ $(MAC_BUILD_DIR)/$(1)/$(2): $(MAC_BUILD_DIR)/$(3)/generated-sources $(MAC_SOURCE
$$(call Q_PROF_PMCS,mac/$(1)) PMCS_PROFILE=$(5) $(MAC_BUILD_DIR)/$(3)/pmcs \
-out:$$@ -target:library -debug -unsafe \
$$(MAC_COMMON_DEFINES),OBJECT_REF_TRACKING \
-r:Mono.Security.dll \
-keyfile:$(SN_KEY) \
-nowarn:3021,1635,612,618,0219,0414,$(MAC_WARNINGS_TO_FIX) \
$(4) \
@ -586,7 +595,14 @@ $(MONO_PATH)/mcs/class/lib/xammac/reference_Facades/System.Drawing.Primitives.dl
$(MAC_BUILD_DIR)/mobile/Facades/System.Drawing.Primitives.dll: $(MONO_PATH)/mcs/class/lib/xammac/reference_Facades/System.Drawing.Primitives.dll $(MAC_BUILD_DIR)/mobile/Facades
$(Q) cp $< $@
.SECONDARY: $(MAC_BUILD_DIR)/mobile/Facades/System.Drawing.Primitives.dll
$(MONO_PATH)/mcs/class/lib/xammac/reference_Facades/netstandard.dll: $(MAC_BUILD_DIR)/mobile-reference/Xamarin.Mac.dll $(MAC_BUILD_DIR)/mobile-reference/OpenTK.dll
$(call Q_PROF_MCS,xammac) $(MAKE) $(if $(V),,-s) -C $(MONO_PATH)/mcs/class/Facades/netstandard PROFILE=xammac LIBRARY_SUBDIR=reference_Facades XAMMAC_MCS_FLAGS="-r:$(abspath $(MAC_BUILD_DIR)/mobile-reference/Xamarin.Mac.dll),$(abspath $(MAC_BUILD_DIR)/mobile-reference/OpenTK.dll)"
@touch $@
$(MAC_BUILD_DIR)/mobile/Facades/netstandard.dll: $(MONO_PATH)/mcs/class/lib/xammac/reference_Facades/netstandard.dll $(MAC_BUILD_DIR)/mobile/Facades
$(Q) cp $< $@
.SECONDARY: $(MAC_BUILD_DIR)/mobile/Facades/System.Drawing.Primitives.dll $(MAC_BUILD_DIR)/mobile/Facades/netstandard.dll
$(MAC_BUILD_DIR)/compat/XamMac.CFNetwork.dll: $(MAC_CFNETWORK_SOURCES) $(MAC_BUILD_DIR)/compat/XamMac.dll $(SN_KEY)
@ -607,6 +623,7 @@ MAC_VARIANTS_TARGETS = \
$(MAC_BUILD_DIR)/mobile-reference/Xamarin.Mac.dll \
$(MAC_BUILD_DIR)/full-reference/Xamarin.Mac.dll \
$(MAC_BUILD_DIR)/mobile/Facades/System.Drawing.Primitives.dll \
$(MAC_BUILD_DIR)/mobile/Facades/netstandard.dll \
$(MAC_BUILD_DIR)/compat/XamMac.CFNetwork.dll
INSTALL_TARGETS+=install-mac
@ -654,10 +671,14 @@ MAC_TARGETS += \
$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/Version \
$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/pkgconfig/xammac.pc \
$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/Xamarin.Mac/Facades/System.Drawing.Primitives.dll \
$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/Xamarin.Mac/Facades/netstandard.dll
$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/Xamarin.Mac/Facades/System.Drawing.Primitives.dll: $(MAC_BUILD_DIR)/mobile/Facades/System.Drawing.Primitives.dll | $(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/Xamarin.Mac/Facades
$(Q) install -m 0755 $< $@
$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/Xamarin.Mac/Facades/netstandard.dll: $(MAC_BUILD_DIR)/mobile/Facades/netstandard.dll | $(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/Xamarin.Mac/Facades
$(Q) install -m 0755 $< $@
$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono/XamMac.dll: $(MAC_BUILD_DIR)/compat/XamMac.dll | $(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mono
$(Q) install -m 0755 $< $@
$(Q) install -m 0644 $<.mdb $@.mdb
@ -843,6 +864,15 @@ $(WATCH_BUILD_DIR)/reference/MonoTouch.NUnitLite.dll: $(WATCHOS_TOUCHUNIT_SOURCE
$(WATCH_BUILD_DIR)/reference/MonoTouch.NUnitLite.dll.mdb: $(WATCH_BUILD_DIR)/reference/MonoTouch.NUnitLite.dll
@touch $@
$(MONO_PATH)/mcs/class/lib/monotouch_watch/reference_Facades/netstandard.dll: $(WATCH_BUILD_DIR)/reference/Xamarin.WatchOS.dll
$(call Q_PROF_MCS,watch) $(MAKE) $(if $(V),,-s) -C $(WATCH_MONO_PATH)/mcs/class/Facades/netstandard PROFILE=monotouch_watch LIBRARY_SUBDIR=reference_Facades MONOTOUCH_MCS_FLAGS="-r:$(abspath $(WATCH_BUILD_DIR)/reference/Xamarin.WatchOS.dll)"
@touch $@
$(WATCH_BUILD_DIR)/%/Facades/netstandard.dll: $(MONO_PATH)/mcs/class/lib/monotouch_watch/%_Facades/netstandard.dll | $(WATCH_BUILD_DIR)/reference/Facades
$(Q) cp $< $@
.SECONDARY: $(WATCH_BUILD_DIR)/reference/Facades/netstandard.dll
# System.Net.Http.dll is special. See comment in src/Makefile
WATCH_EXTRA_SYSTEM_NET_HTTP_FILES = \
@ -852,7 +882,7 @@ WATCH_EXTRA_SYSTEM_NET_HTTP_FILES = \
# build (into custom LIBRARY_SUBDIR)
$(WATCH_MONO_PATH)/mcs/class/lib/monotouch_watch/reference/System.Net.Http.dll: $(WATCH_EXTRA_SYSTEM_NET_HTTP_FILES) $(WATCH_MONO_PATH)/mcs/class/lib/monotouch_watch/System.Net.Http.dll $(WATCH_BUILD_DIR)/reference/Xamarin.WatchOS.dll
$(call Q_PROF_MCS,watch) $(MAKE) $(if $(V),,-s) -C $(WATCH_MONO_PATH)/mcs/class/System.Net.Http PROFILE=monotouch_watch LIBRARY_SUBDIR=reference EXTRA_LIB_MCS_FLAGS="-r:$(abspath $(WATCH_BUILD_DIR)/reference/Xamarin.WatchOS.dll) $(WATCH_EXTRA_SYSTEM_NET_HTTP_FILES) -D:XAMCORE_2_0 -D:XAMCORE_3_0 -D:XAMARIN_MODERN -D:SYSTEM_NET_HTTP -D:UNIFIED -D:__UNIFIED__"
$(call Q_PROF_MCS,watch) $(MAKE) $(if $(V),,-s) -C $(WATCH_MONO_PATH)/mcs/class/System.Net.Http PROFILE=monotouch_watch LIBRARY_SUBDIR=reference MONOTOUCH_MCS_FLAGS=$(IOS_MCS_FLAGS) EXTRA_LIB_MCS_FLAGS="-r:$(abspath $(WATCH_BUILD_DIR)/reference/Xamarin.WatchOS.dll) $(WATCH_EXTRA_SYSTEM_NET_HTTP_FILES) -D:XAMCORE_2_0 -D:XAMCORE_3_0 -D:XAMARIN_MODERN -D:SYSTEM_NET_HTTP -D:UNIFIED -D:__UNIFIED__"
$(Q) touch $@
$(WATCH_MONO_PATH)/mcs/class/lib/monotouch_watch/reference/System.Net.Http.dll.mdb: $(WATCH_MONO_PATH)/mcs/class/lib/monotouch_watch/reference/System.Net.Http.dll
@ -863,11 +893,8 @@ $(WATCH_BUILD_DIR)/reference/System.Net.Http.dll: $(WATCH_MONO_PATH)/mcs/class/l
$(Q) cp $< $@
$(call Q_PROF_SN,watch) MONO_CFG_DIR=$(TOP) $(SYSTEM_SN) -q -R $@ $(PRODUCT_KEY_PATH)
# mdb rebase
$(WATCH_BUILD_DIR)/reference/System.Net.Http.dll.mdb: $(WATCH_MONO_PATH)/mcs/class/lib/monotouch_watch/reference/System.Net.Http.dll.mdb
@# mdb-rebase the mdb
$(Q) cp $< $@
$(call Q_PROF_GEN,watch) $(MDB_REBASE) -i $(abspath $(WATCH_MONO_PATH))/ -o $(IOS_TARGETDIR)$(MONOTOUCH_PREFIX)/src/mono/ $@
.SECONDARY: $(WATCH_BUILD_DIR)/reference/System.Net.Http.dll
@ -888,6 +915,7 @@ WATCH_TARGETS_DIRS += \
$(WATCH_BUILD_DIR)/watch \
$(WATCH_BUILD_DIR)/watch-32 \
$(WATCH_BUILD_DIR)/reference \
$(WATCH_BUILD_DIR)/reference/Facades \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.WatchOS \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/share/doc/Xamarin.WatchOS\
@ -898,6 +926,7 @@ WATCH_TARGETS += \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.WatchOS/Xamarin.WatchOS.dll.mdb \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/32bits/Xamarin.WatchOS.dll \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/32bits/Xamarin.WatchOS.dll.mdb \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.WatchOS/Facades/netstandard.dll \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.WatchOS/System.Net.Http.dll \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.WatchOS/System.Net.Http.dll.mdb \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.WatchOS/MonoTouch.NUnitLite.dll \
@ -907,6 +936,9 @@ WATCH_TARGETS += \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.WatchOS/%.dll: $(WATCH_BUILD_DIR)/reference/%.dll | $(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.WatchOS
$(Q) install -m 0755 $< $@
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.WatchOS/Facades/%.dll: $(WATCH_BUILD_DIR)/reference/Facades/%.dll | $(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.WatchOS/Facades
$(Q) install -m 0755 $< $@
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.WatchOS/%.mdb: $(WATCH_BUILD_DIR)/reference/%.mdb | $(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.WatchOS
$(Q) install -m 0644 $< $@
@ -1022,6 +1054,7 @@ $(TVOS_BUILD_DIR)/tvos/generated_sources: $(TVOS_GENERATOR) $(TVOS_APIS) $(TVOS_
$(TVOS_BUILD_DIR)/tvos-64/Xamarin.TVOS.dll: $(TVOS_SOURCES) $(TVOS_BUILD_DIR)/tvos/generated_sources $(PRODUCT_KEY_PATH) | $(TVOS_BUILD_DIR)/tvos-64
$(call Q_PROF_PMCS,tvos) PMCS_PROFILE=tvos-64 $(TVOS_PMCS) -out:$@ -target:library -debug -unsafe -optimize \
-keyfile:$(PRODUCT_KEY_PATH) $(TVOS_DEFINES) \
-r:$(TVOS_LIBDIR)/Mono.Security.dll \
-nowarn:219,618,114,414,1635,3021,$(IOS_WARNINGS_THAT_YOU_SHOULD_FIX) \
$(TVOS_SOURCES) @$(TVOS_BUILD_DIR)/tvos/generated_sources
@ -1064,7 +1097,14 @@ $(MONO_PATH)/mcs/class/lib/monotouch_tv/reference_Facades/System.Drawing.Primiti
$(TVOS_BUILD_DIR)/%/Facades/System.Drawing.Primitives.dll: $(MONO_PATH)/mcs/class/lib/monotouch_tv/%_Facades/System.Drawing.Primitives.dll | $(TVOS_BUILD_DIR)/reference/Facades
$(Q) cp $< $@
.SECONDARY: $(IOS_BUILD_DIR)/reference/Facades/System.Drawing.Primitives.dll
$(MONO_PATH)/mcs/class/lib/monotouch_tv/reference_Facades/netstandard.dll: $(TVOS_BUILD_DIR)/reference/Xamarin.TVOS.dll $(TVOS_BUILD_DIR)/reference/OpenTK-1.0.dll
$(call Q_PROF_MCS,tvos) $(MAKE) $(if $(V),,-s) -C $(MONO_PATH)/mcs/class/Facades/netstandard PROFILE=monotouch_tv LIBRARY_SUBDIR=reference_Facades MONOTOUCH_MCS_FLAGS="-r:$(abspath $(TVOS_BUILD_DIR)/reference/Xamarin.TVOS.dll),$(abspath $(TVOS_BUILD_DIR)/reference/OpenTK-1.0.dll)"
@touch $@
$(TVOS_BUILD_DIR)/%/Facades/netstandard.dll: $(MONO_PATH)/mcs/class/lib/monotouch_tv/%_Facades/netstandard.dll | $(TVOS_BUILD_DIR)/reference/Facades
$(Q) cp $< $@
.SECONDARY: $(IOS_BUILD_DIR)/reference/Facades/System.Drawing.Primitives.dll $(IOS_BUILD_DIR)/reference/Facades/netstandard.dll
# System.Net.Http.dll is special. See comment in src/Makefile
@ -1077,7 +1117,7 @@ TVOS_EXTRA_SYSTEM_NET_HTTP_FILES = \
# build (into custom LIBRARY_SUBDIR)
$(MONO_PATH)/mcs/class/lib/monotouch_tv/reference/System.Net.Http.dll: $(TVOS_EXTRA_SYSTEM_NET_HTTP_FILES) $(MONO_PATH)/mcs/class/lib/monotouch_tv/System.Net.Http.dll $(TVOS_BUILD_DIR)/reference/Xamarin.TVOS.dll
$(call Q_PROF_MCS,tvos) $(MAKE) $(if $(V),,-s) -C $(MONO_PATH)/mcs/class/System.Net.Http PROFILE=monotouch_tv LIBRARY_SUBDIR=reference EXTRA_LIB_MCS_FLAGS="-r:$(abspath $(TVOS_BUILD_DIR)/reference/Xamarin.TVOS.dll) $(TVOS_EXTRA_SYSTEM_NET_HTTP_FILES) -D:XAMCORE_2_0 -D:XAMCORE_3_0 -D:XAMARIN_MODERN -D:SYSTEM_NET_HTTP -D:UNIFIED -D:__UNIFIED__"
$(call Q_PROF_MCS,tvos) $(MAKE) $(if $(V),,-s) -C $(MONO_PATH)/mcs/class/System.Net.Http PROFILE=monotouch_tv LIBRARY_SUBDIR=reference MONOTOUCH_MCS_FLAGS=$(IOS_MCS_FLAGS) EXTRA_LIB_MCS_FLAGS="-r:$(abspath $(TVOS_BUILD_DIR)/reference/Xamarin.TVOS.dll) $(TVOS_EXTRA_SYSTEM_NET_HTTP_FILES) -D:XAMCORE_2_0 -D:XAMCORE_3_0 -D:XAMARIN_MODERN -D:SYSTEM_NET_HTTP -D:UNIFIED -D:__UNIFIED__"
$(Q) touch $@
$(MONO_PATH)/mcs/class/lib/monotouch_tv/reference/System.Net.Http.dll.mdb: $(MONO_PATH)/mcs/class/lib/monotouch_tv/reference/System.Net.Http.dll
@ -1088,11 +1128,8 @@ $(TVOS_BUILD_DIR)/reference/System.Net.Http.dll: $(MONO_PATH)/mcs/class/lib/mono
$(Q) cp $< $@
$(call Q_PROF_SN,tvos) MONO_CFG_DIR=$(TOP) $(SYSTEM_SN) -q -R $@ $(PRODUCT_KEY_PATH)
# mdb rebase
$(TVOS_BUILD_DIR)/reference/System.Net.Http.dll.mdb: $(MONO_PATH)/mcs/class/lib/monotouch_tv/reference/System.Net.Http.dll.mdb
@# mdb-rebase the mdb
$(Q) cp $< $@
$(call Q_PROF_GEN,tvos) $(MDB_REBASE) -i $(abspath $(MONO_PATH))/ -o $(IOS_TARGETDIR)$(MONOTOUCH_PREFIX)/src/mono/ $@
.SECONDARY: $(TVOS_BUILD_DIR)/reference/System.Net.Http.dll
@ -1136,6 +1173,7 @@ TVOS_TARGETS += \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.TVOS/OpenTK-1.0.dll \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.TVOS/OpenTK-1.0.dll.mdb \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.TVOS/OpenTK-1.0.dll.config \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.TVOS/Facades/netstandard.dll \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.TVOS/MonoTouch.Dialog-1.dll \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.TVOS/MonoTouch.Dialog-1.dll.mdb \
$(IOS_DESTDIR)$(MONOTOUCH_PREFIX)/lib/mono/Xamarin.TVOS/MonoTouch.NUnitLite.dll \

Просмотреть файл

@ -200,10 +200,6 @@ namespace XamCore.ObjCRuntime {
Class.Initialize (options);
InitializePlatform (options);
#if !COREBUILD && (XAMARIN_APPLETLS || XAMARIN_NO_TLS)
MonoTlsProviderFactory._PrivateFactoryDelegate = TlsProviderFactoryCallback;
#endif
#if !XAMMAC_SYSTEM_MONO
UseAutoreleasePoolInThreadPool = true;
#endif
@ -293,13 +289,6 @@ namespace XamCore.ObjCRuntime {
return managed_exception_mode;
}
#if !COREBUILD && (XAMARIN_APPLETLS || XAMARIN_NO_TLS)
static MonoTlsProvider TlsProviderFactoryCallback ()
{
return new AppleTlsProvider ();
}
#endif
static IntPtr GetFunctionPointer (Delegate d)
{
delegates.Add (d);

Просмотреть файл

@ -33,6 +33,7 @@
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="Mono.Security" />
</ItemGroup>
<ItemGroup>
<!--%FILES%-->

Просмотреть файл

@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
#if XAMCORE_2_0
using AppKit;
using Foundation;
@ -51,6 +52,9 @@ namespace Xamarin.Mac.Tests
#endif
}
[DllImport ("/usr/lib/libSystem.dylib")]
static extern void _exit (int exit_code);
#if !NO_GUI_TESTING
class NSRunLoopIntegration : NSObject, IMainLoopIntegration
{
@ -70,7 +74,7 @@ namespace Xamarin.Mac.Tests
public void Shutdown ()
{
Environment.Exit (TestRunner.ExitCode);
_exit (TestRunner.ExitCode);
}
}
#else
@ -91,7 +95,7 @@ namespace Xamarin.Mac.Tests
public void Shutdown ()
{
Environment.Exit (TestRunner.ExitCode);
_exit (TestRunner.ExitCode);
}
}
#endif

Просмотреть файл

@ -1,33 +0,0 @@
using System;
using System.Reflection;
using NUnit.Framework;
namespace DontLink {
[TestFixture]
public class CanaryTest {
static void AssertCallStaticReturnBool (Type t, string method, bool expected)
{
AssertCallStaticReturnBool (t, method, null, expected);
}
static void AssertCallStaticReturnBool (Type t, string method, object [] parameters, bool expected)
{
var m = t.GetMethod (method, BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic);
Assert.NotNull (m, $"{t.Name}::{method} is missing");
var result = (bool)m.Invoke (null, parameters);
Assert.That (result, Is.EqualTo (expected), $"{t.Name}::{method} returned `{result}` not the expected `{expected}`");
}
[Test]
public void Mscorlib ()
{
// type is internal - but we need to ensure it does not change the value it returns (without a corresponding update to InlinerSubStep.cs)
var bc = Type.GetType ("System.Runtime.Versioning.BinaryCompatibility, mscorlib");
Assert.IsNotNull (bc, "BinaryCompatibility");
AssertCallStaticReturnBool (bc, "get_TargetsAtLeast_Desktop_V4_5", true);
AssertCallStaticReturnBool (bc, "get_TargetsAtLeast_Desktop_V4_5_1", false);
}
}
}

Просмотреть файл

@ -150,7 +150,6 @@
<Compile Include="DontLinkRegressionTests.cs" />
<Compile Include="TableViewSourceTest.cs" />
<Compile Include="CalendarTest.cs" />
<Compile Include="CanaryTest.cs" />
</ItemGroup>
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" />
<ItemGroup>

Просмотреть файл

@ -446,9 +446,12 @@ namespace LinkAll {
string GetField (object o, string s)
{
var f = o.GetType ().GetField (s, BindingFlags.Instance | BindingFlags.NonPublic);
if (f == null)
var type = o.GetType ();
var f1 = type.GetField (s, BindingFlags.Instance | BindingFlags.NonPublic);
var f2 = type.GetField (s + "i__Field", BindingFlags.Instance | BindingFlags.NonPublic);
if (f1 == null && f2 == null)
return s;
//Console.WriteLine (f.GetValue (o));
return null;
}
@ -526,11 +529,7 @@ namespace LinkAll {
{
// make test work for classic (monotouch) and unified (iOS, tvOS and watchOS)
var fqn = typeof (NSObject).AssemblyQualifiedName.Replace ("Foundation.NSObject", "Security.Tls.AppleTlsProvider");
#if __WATCHOS__
Assert.Null (Type.GetType (fqn), "Should NOT be included (no SslStream or Socket support)");
#else
Assert.NotNull (Type.GetType (fqn), "Should be included");
#endif
}
}
}

Просмотреть файл

@ -29,7 +29,6 @@ namespace LinkSdk {
{
// Not critical (on failure) but not optimal - the linker should be able to remove those types entirely
AssertAbsentType ("System.Security.SecurityManager, mscorlib");
AssertAbsentType ("System.Runtime.Versioning.BinaryCompatibility, mscorlib");
}
}
}

Просмотреть файл

@ -1041,14 +1041,12 @@ namespace LinkSdk {
Assert.Null (Type.GetType (fqn), "Should not be included");
}
#if !__WATCHOS__
[Test]
public void AppleTls_Default ()
{
// make test work for classic (monotouch) and unified (iOS, tvOS and watchOS)
var fqn = typeof (NSObject).AssemblyQualifiedName.Replace ("Foundation.NSObject", "Security.Tls.AppleTlsProvider");
Assert.NotNull (Type.GetType (fqn), "Should be included");
Assert.Null (Type.GetType (fqn), "Should be included");
}
#endif // !__WATCHOS__
}
}

Просмотреть файл

@ -184,8 +184,13 @@ namespace Linker.Shared {
}
// the optimization is turned off in case of fat apps (32/64 bits)
if (IsMainExecutableDual ())
if (IsMainExecutableDual ()) {
#if DEBUG
Assert.Inconclusive ("debug IL code");
#else
Assert.IsFalse (contains11 && contains22, "neither instructions removed");
#endif
}
// even if disabled this condition remains
Assert.IsFalse (!contains11 && !contains22, "both instructions removed");
}

Просмотреть файл

@ -134,6 +134,7 @@
<Reference Include="Xamarin.iOS" />
<Reference Include="MonoTouch.NUnitLite" />
<Reference Include="Mono.Data.Sqlite" />
<Reference Include="Mono.Security" />
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.ServiceModel" />
<Reference Include="support">

Просмотреть файл

@ -354,9 +354,9 @@ namespace Xamarin
var msymDir = appDir + ".mSYM";
var is_dual_asm = !is_sim && extra_mtouch_args.Contains ("--abi") && extra_mtouch_args.Contains (",");
if (!is_dual_asm) {
Assert.AreEqual (has_mdb, File.Exists (Path.Combine (appDir, "mscorlib.dll.mdb")), "#mdb");
Assert.AreEqual (has_mdb, File.Exists (Path.Combine (appDir, "mscorlib.pdb")), "#pdb");
} else {
Assert.AreEqual (has_mdb, File.Exists (Path.Combine (appDir, ".monotouch-32", "mscorlib.dll.mdb")), "#mdb");
Assert.AreEqual (has_mdb, File.Exists (Path.Combine (appDir, ".monotouch-32", "mscorlib.pdb")), "#pdb");
}
if (has_msym) {
@ -870,7 +870,6 @@ namespace Xamarin
mtouch.AssertError (105, "No assembly build target was specified for 'System'.");
mtouch.AssertError (105, "No assembly build target was specified for 'System.Xml'.");
mtouch.AssertError (105, "No assembly build target was specified for 'System.Core'.");
mtouch.AssertError (105, "No assembly build target was specified for 'Mono.Dynamic.Interpreter'.");
mtouch.AssertError (105, "No assembly build target was specified for 'Xamarin.iOS'.");
}
}

Просмотреть файл

@ -853,7 +853,7 @@ namespace XamCore.Registrar {
}
if (corlib == null) {
corlib = first.MainModule.AssemblyResolver.Resolve (AssemblyNameReference.Parse ("mscorlib"));
corlib = first.MainModule.AssemblyResolver.Resolve (AssemblyNameReference.Parse ("mscorlib"), new ReaderParameters ());
}
foreach (var type in corlib.MainModule.Types) {
if (type.Namespace == "System" && type.Name == "Void")

Просмотреть файл

@ -171,6 +171,7 @@ namespace Xamarin.Linker {
"System.Threading.ThreadPool",
"System.Threading.Timer",
"System.Threading",
"System.ValueTuple",
"System.Xml.ReaderWriter",
"System.Xml.XDocument",
"System.Xml.XPath.XDocument",
@ -178,6 +179,7 @@ namespace Xamarin.Linker {
"System.Xml.XmlDocument",
"System.Xml.XmlSerializer",
"System.Xml.Xsl.Primitives",
"netstandard"
};
protected override bool IsSdk (string assemblyName)

Просмотреть файл

@ -13,6 +13,11 @@ namespace Xamarin.Linker {
// would produce invalid assemblies
public class MobileSweepStep : SweepStep {
public MobileSweepStep (bool sweepSymbols)
: base (sweepSymbols)
{
}
public AssemblyAction CurrentAction { get; private set; }
protected override void Process ()

Просмотреть файл

@ -53,17 +53,6 @@ namespace Xamarin.Linker.Steps {
break;
}
}
// this removes System.Runtime.Versioning's BinaryCompatibility / BinaryCompatibilityMap / CompatibilitySwitch / TargetFrameworkId
if (!mr.HasParameters && mr.DeclaringType.Is ("System.Runtime.Versioning", "BinaryCompatibility")) {
switch (mr.Name) {
case "get_TargetsAtLeast_Desktop_V4_5":
il.OpCode = OpCodes.Ldc_I4_1;
break;
case "get_TargetsAtLeast_Desktop_V4_5_1":
il.OpCode = OpCodes.Ldc_I4_0;
break;
}
}
}
}
}

Просмотреть файл

@ -142,16 +142,18 @@ namespace MonoTouch.Tuner {
case "System.Linq.Expressions":
switch (type.Name) {
case "LambdaExpression":
var expr_t = type.Module.GetType ("System.Linq.Expressions.Expression`1");
if (expr_t != null)
MarkNamedMethod (expr_t, "Create");
var expr_t = type.Module.GetType ("System.Linq.Expressions.ExpressionCreator`1");
if (expr_t != null) {
MarkNamedMethod (expr_t, "CreateExpressionFunc");
}
break;
}
break;
case "System.Linq.Expressions.Compiler":
case "System.Linq.Expressions.Interpreter":
switch (type.Name) {
case "LambdaCompiler":
MarkMethods (GetType ("Mono.Dynamic.Interpreter", "Microsoft.Scripting.Interpreter.LightLambda"));
case "LightDelegateCreator":
// TODO: Should be more selective
MarkMethods (type.Module.GetType ("System.Linq.Expressions.Interpreter.LightLambda"));
break;
}
break;

Просмотреть файл

@ -10,6 +10,11 @@ namespace MonoTouch.Tuner {
public class MonoTouchSweepStep : MobileSweepStep {
public MonoTouchSweepStep (LinkerOptions options)
: base (options.LinkSymbols)
{
}
protected override void SweepAssembly (AssemblyDefinition assembly)
{
base.SweepAssembly (assembly);

Просмотреть файл

@ -135,7 +135,7 @@ namespace MonoTouch.Tuner {
if (!mr.DeclaringType.Is ("System", "IntPtr"))
return;
if (ins.Next.OpCode != OpCodes.Ldc_I4_8 || ins.Next.Next.OpCode != OpCodes.Bne_Un)
if (!(ins.Next.OpCode == OpCodes.Ldc_I4_8 && (ins.Next.Next.OpCode == OpCodes.Bne_Un || ins.Next.Next.OpCode == OpCodes.Bne_Un_S)))
return;
#if DEBUG
Console.WriteLine ("\t{0} get_Size {1} bits", caller, Arch * 8);

Просмотреть файл

@ -16,9 +16,8 @@ $(MONO_CECIL_MDB_DLL): $(MONO_CECIL_DLL) $(CECIL_PATH)/symbols/mdb/Mono.Cecil.Md
BCL_LOCATION=$(MONO_PATH)/mcs/class/lib/xammac_net_4_5
TOOLS_DIR=$(MONO_PATH)/mcs/tools
LINKER_DIR=$(TOOLS_DIR)/linker
TUNER_DIR=$(TOOLS_DIR)/tuner
LINKER_DIR=$(LINKER_TOOLS_PATH)/linker
TUNER_DIR=$(LINKER_TOOLS_PATH)/tuner
linker_sources = \
$(LINKER_DIR)/Mono.Linker/Pipeline.cs \
@ -134,6 +133,7 @@ LOCAL_MMP = \
mmp.exe: Makefile $(MONO_CECIL_DLL) $(MONO_CECIL_MDB_DLL) $(mmp_sources) config config_mobile Info.plist.tmpl $(tuner_sources) $(linker_resources)
$(Q_MCS) $(SYSTEM_MCS) -unsafe -out:mmp.exe $(DEFINES) -r:$(MONO_CECIL_DLL) -r:$(MONO_CECIL_MDB_DLL) -r:Mono.Security.dll -resource:config -resource:config_mobile -resource:machine.4_5.config -resource:Info.plist.tmpl $(linker_resources:%=-resource:%) $(tuner_sources) $(mmp_sources)
$(Q) cp $(MONO_CECIL_DLL) $(MONO_CECIL_MDB_DLL) .
Mono.Cecil.dll: $(MONO_CECIL_DLL)
$(Q) cp $<* $(dir $@)
@ -172,7 +172,7 @@ $(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/mmp/Xamarin.Mac.registrar.%.a: Xa
$(MMP_DIRECTORIES):
$(Q) mkdir -p $@
GENERATE_PART_REGISTRAR = $(Q_GEN) $(SYSTEM_MONO) --debug mmp.exe --xamarin-framework-directory=$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR) -q --runregistrar:$(abspath $@) --sdkroot $(XCODE_DEVELOPER_ROOT) --sdk $(OSX_SDK_VERSION) $< --registrar:static
GENERATE_PART_REGISTRAR = $(Q_GEN) $(SYSTEM_MONO) --debug mmp.exe --xamarin-framework-directory=$(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR) -q --runregistrar:$(abspath $@) --sdkroot $(XCODE_DEVELOPER_ROOT) --sdk $(OSX_SDK_VERSION) $< --registrar:static
Xamarin.Mac.registrar.mobile.i386.m: $(MAC_DESTDIR)$(MAC_FRAMEWORK_CURRENT_DIR)/lib/i386/mobile/Xamarin.Mac.dll $(LOCAL_MMP)
$(GENERATE_PART_REGISTRAR) --target-framework Xamarin.Mac,v1.0 --arch=i386

Просмотреть файл

@ -163,7 +163,7 @@ namespace MonoMac.Tuner {
pipeline.AppendStep (new MonoMacMarkStep ());
pipeline.AppendStep (new MacRemoveResources (options));
pipeline.AppendStep (new MobileSweepStep ());
pipeline.AppendStep (new MobileSweepStep (options.LinkSymbols));
pipeline.AppendStep (new CleanStep ());
pipeline.AppendStep (new MonoMacNamespaces ());

Просмотреть файл

@ -61,115 +61,115 @@
<Compile Include="Tuning.cs" />
<Compile Include="Assembly.cs" />
<Compile Include="error.cs" />
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\ApplyPreserveAttributeBase.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\ApplyPreserveAttributeBase.cs">
<Link>Mono.Tuner\ApplyPreserveAttributeBase.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\CecilRocks.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\CecilRocks.cs">
<Link>Mono.Tuner\CecilRocks.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\CustomizeActions.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\CustomizeActions.cs">
<Link>Mono.Tuner\CustomizeActions.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\Dispatcher.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\Dispatcher.cs">
<Link>Mono.Tuner\Dispatcher.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\Extensions.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\Extensions.cs">
<Link>Mono.Tuner\Extensions.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\PreserveCrypto.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\PreserveCrypto.cs">
<Link>Mono.Tuner\PreserveCrypto.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\PreserveSoapHttpClients.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\PreserveSoapHttpClients.cs">
<Link>Mono.Tuner\PreserveSoapHttpClients.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\RemoveAttributesBase.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\RemoveAttributesBase.cs">
<Link>Mono.Tuner\RemoveAttributesBase.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\RemoveResources.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\RemoveResources.cs">
<Link>Mono.Tuner\RemoveResources.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\RemoveSecurity.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\RemoveSecurity.cs">
<Link>Mono.Tuner\RemoveSecurity.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\TunerAnnotations.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\TunerAnnotations.cs">
<Link>Mono.Tuner\TunerAnnotations.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\Annotations.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\Annotations.cs">
<Link>Mono.Linker\Annotations.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\AssemblyAction.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\AssemblyAction.cs">
<Link>Mono.Linker\AssemblyAction.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\AssemblyResolver.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\AssemblyResolver.cs">
<Link>Mono.Linker\AssemblyResolver.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\I18nAssemblies.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\I18nAssemblies.cs">
<Link>Mono.Linker\I18nAssemblies.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\IXApiVisitor.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\IXApiVisitor.cs">
<Link>Mono.Linker\IXApiVisitor.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\LinkContext.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\LinkContext.cs">
<Link>Mono.Linker\LinkContext.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\MethodAction.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\MethodAction.cs">
<Link>Mono.Linker\MethodAction.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\Pipeline.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\Pipeline.cs">
<Link>Mono.Linker\Pipeline.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\TypePreserve.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\TypePreserve.cs">
<Link>Mono.Linker\TypePreserve.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\XApiReader.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\XApiReader.cs">
<Link>Mono.Linker\XApiReader.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\BaseStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\BaseStep.cs">
<Link>Mono.Linker.Steps\BaseStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\BlacklistStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\BlacklistStep.cs">
<Link>Mono.Linker.Steps\BlacklistStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\CleanStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\CleanStep.cs">
<Link>Mono.Linker.Steps\CleanStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\IStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\IStep.cs">
<Link>Mono.Linker.Steps\IStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\LoadI18nAssemblies.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\LoadI18nAssemblies.cs">
<Link>Mono.Linker.Steps\LoadI18nAssemblies.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\LoadReferencesStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\LoadReferencesStep.cs">
<Link>Mono.Linker.Steps\LoadReferencesStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\MarkStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\MarkStep.cs">
<Link>Mono.Linker.Steps\MarkStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\OutputStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\OutputStep.cs">
<Link>Mono.Linker.Steps\OutputStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\RegenerateGuidStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\RegenerateGuidStep.cs">
<Link>Mono.Linker.Steps\RegenerateGuidStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\ResolveFromAssemblyStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\ResolveFromAssemblyStep.cs">
<Link>Mono.Linker.Steps\ResolveFromAssemblyStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\ResolveFromXApiStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\ResolveFromXApiStep.cs">
<Link>Mono.Linker.Steps\ResolveFromXApiStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\ResolveFromXmlStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\ResolveFromXmlStep.cs">
<Link>Mono.Linker.Steps\ResolveFromXmlStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\ResolveStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\ResolveStep.cs">
<Link>Mono.Linker.Steps\ResolveStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\SweepStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\SweepStep.cs">
<Link>Mono.Linker.Steps\SweepStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\TypeMapStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\TypeMapStep.cs">
<Link>Mono.Linker.Steps\TypeMapStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\Profile.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\Profile.cs">
<Link>Mono.Tuner\Profile.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\class\Mono.Options\Mono.Options\Options.cs">

Просмотреть файл

@ -116,9 +116,15 @@ namespace Xamarin.Bundler {
Driver.Log (3, "Target '{0}' is up-to-date.", target);
}
// Update the mdb even if the assembly didn't change.
if (copy_mdb && File.Exists (source + ".mdb"))
Application.UpdateFile (source + ".mdb", target + ".mdb", true);
// Update the debug symbols file even if the assembly didn't change.
if (copy_mdb) {
if (File.Exists (source + ".mdb"))
Application.UpdateFile (source + ".mdb", target + ".mdb", true);
var spdb = Path.ChangeExtension (source, "pdb");
if (File.Exists (spdb))
Application.UpdateFile (spdb, Path.ChangeExtension (target, "pdb"), true);
}
CopyConfigToDirectory (Path.GetDirectoryName (target));
} catch (Exception e) {
@ -135,6 +141,10 @@ namespace Xamarin.Bundler {
string mdb_target = Path.Combine (directory, FileName + ".mdb");
Application.UpdateFile (mdb_src, mdb_target);
}
var spdb = Path.ChangeExtension (FullPath, "pdb");
if (File.Exists (spdb))
Application.UpdateFile (spdb, Path.Combine (directory, Path.ChangeExtension (FileName, "pdb")), true);
}
public void CopyMSymToDirectory (string directory)

Просмотреть файл

@ -11,9 +11,8 @@ CECIL_PATH=$(MONO_PATH)/external/cecil
MONO_CECIL_FILES = $(wildcard $(CECIL_PATH)/*.cs) $(wildcard $(CECIL_PATH)/*/*.cs) $(wildcard $(CECIL_PATH)/*/*/*.cs) $(wildcard $(CECIL_PATH)/*/*/*/*.cs) $(wildcard $(CECIL_PATH)/*/*/*/*/*.cs)
MONO_DIR=$(MONO_PATH)
MCS_TOOLS_DIR=$(MONO_DIR)/mcs/tools
MONOLINKER=$(MCS_TOOLS_DIR)/linker
MONO_TUNER=$(MCS_TOOLS_DIR)/tuner
MONOLINKER=$(LINKER_TOOLS_PATH)/linker
MONO_TUNER=$(LINKER_TOOLS_PATH)/tuner
LINKER_RESOURCES = \
$(LINKER_DIR)/Descriptors/mscorlib.xml

Просмотреть файл

@ -630,6 +630,11 @@ namespace Xamarin.Bundler
inputs.Add (input + ".mdb");
outputs.Add (output + ".mdb");
}
var pdb = Path.ChangeExtension (input, "pdb");
if (File.Exists (pdb)) {
inputs.Add (pdb);
outputs.Add (Path.ChangeExtension (output, "pdb"));
}
if (File.Exists (input + ".config")) {
// If a config file changes, then the AOT-compiled output can be different,
// so make sure to take config files into account as well.
@ -762,6 +767,9 @@ namespace Xamarin.Bundler
Driver.Touch (a.FullPath);
if (File.Exists (a.FullPath + ".mdb"))
Driver.Touch (a.FullPath + ".mdb");
var pdb = Path.ChangeExtension (a.FullPath, "pdb");
if (File.Exists (pdb))
Driver.Touch (pdb);
}
// Now copy to the build directory

Просмотреть файл

@ -172,7 +172,7 @@ namespace MonoTouch.Tuner {
pipeline.AppendStep (new RemoveResources (options.I18nAssemblies)); // remove collation tables
pipeline.AppendStep (new MonoTouchMarkStep ());
pipeline.AppendStep (new MonoTouchSweepStep ());
pipeline.AppendStep (new MonoTouchSweepStep (options));
pipeline.AppendStep (new CleanStep ());
if (!options.DebugBuild)

Просмотреть файл

@ -755,6 +755,14 @@ namespace Xamarin.Bundler
string sdebug = source + ".mdb";
if (File.Exists (sdebug))
File.Copy (sdebug, tdebug);
string tpdb = Path.ChangeExtension (target, "pdb");
if (File.Exists (tpdb))
File.Delete (tpdb);
string spdb = Path.ChangeExtension (source, "pdb");
if (File.Exists (spdb))
File.Copy (spdb, tpdb);
}
public static bool SymlinkAssembly (Application app, string source, string target, string target_dir)
@ -785,6 +793,15 @@ namespace Xamarin.Bundler
string sdebug = source + ".mdb";
if (File.Exists (sdebug))
Symlink (sdebug, tdebug);
string tpdb = Path.ChangeExtension (target, "pdb");
if (File.Exists (tpdb))
File.Delete (tpdb);
string spdb = Path.ChangeExtension (source, "pdb");
if (File.Exists (spdb))
Symlink (spdb, tpdb);
return true;
}

Просмотреть файл

@ -80,106 +80,106 @@
<Compile Include="..\linker\MonoTouch.Tuner\MonoTouchTypeMap.cs">
<Link>MonoTouch.Tuner\MonoTouchTypeMap.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\XApiReader.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\XApiReader.cs">
<Link>Mono.Linker\XApiReader.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\Annotations.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\Annotations.cs">
<Link>Mono.Linker\Annotations.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\LinkContext.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\LinkContext.cs">
<Link>Mono.Linker\LinkContext.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\Pipeline.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\Pipeline.cs">
<Link>Mono.Linker\Pipeline.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\AssemblyResolver.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\AssemblyResolver.cs">
<Link>Mono.Linker\AssemblyResolver.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\IXApiVisitor.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\IXApiVisitor.cs">
<Link>Mono.Linker\IXApiVisitor.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\I18nAssemblies.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\I18nAssemblies.cs">
<Link>Mono.Linker\I18nAssemblies.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\AssemblyAction.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\AssemblyAction.cs">
<Link>Mono.Linker\AssemblyAction.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\TypePreserve.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\TypePreserve.cs">
<Link>Mono.Linker\TypePreserve.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker\MethodAction.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker\MethodAction.cs">
<Link>Mono.Linker\MethodAction.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\BaseStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\BaseStep.cs">
<Link>Mono.Linker.Steps\BaseStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\BlacklistStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\BlacklistStep.cs">
<Link>Mono.Linker.Steps\BlacklistStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\CleanStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\CleanStep.cs">
<Link>Mono.Linker.Steps\CleanStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\IStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\IStep.cs">
<Link>Mono.Linker.Steps\IStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\LoadI18nAssemblies.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\LoadI18nAssemblies.cs">
<Link>Mono.Linker.Steps\LoadI18nAssemblies.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\LoadReferencesStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\LoadReferencesStep.cs">
<Link>Mono.Linker.Steps\LoadReferencesStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\MarkStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\MarkStep.cs">
<Link>Mono.Linker.Steps\MarkStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\OutputStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\OutputStep.cs">
<Link>Mono.Linker.Steps\OutputStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\ResolveFromAssemblyStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\ResolveFromAssemblyStep.cs">
<Link>Mono.Linker.Steps\ResolveFromAssemblyStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\ResolveFromXApiStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\ResolveFromXApiStep.cs">
<Link>Mono.Linker.Steps\ResolveFromXApiStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\ResolveFromXmlStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\ResolveFromXmlStep.cs">
<Link>Mono.Linker.Steps\ResolveFromXmlStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\ResolveStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\ResolveStep.cs">
<Link>Mono.Linker.Steps\ResolveStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\SweepStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\SweepStep.cs">
<Link>Mono.Linker.Steps\SweepStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\linker\Mono.Linker.Steps\TypeMapStep.cs">
<Compile Include="..\..\external\linker\linker\Mono.Linker.Steps\TypeMapStep.cs">
<Link>Mono.Linker.Steps\TypeMapStep.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\ApplyPreserveAttributeBase.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\ApplyPreserveAttributeBase.cs">
<Link>Mono.Tuner\ApplyPreserveAttributeBase.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\RemoveAttributesBase.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\RemoveAttributesBase.cs">
<Link>Mono.Tuner\RemoveAttributesBase.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\PreserveSoapHttpClients.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\PreserveSoapHttpClients.cs">
<Link>Mono.Tuner\PreserveSoapHttpClients.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\Profile.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\Profile.cs">
<Link>Mono.Tuner\Profile.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\CustomizeActions.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\CustomizeActions.cs">
<Link>Mono.Tuner\CustomizeActions.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\RemoveResources.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\RemoveResources.cs">
<Link>Mono.Tuner\RemoveResources.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\RemoveSecurity.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\RemoveSecurity.cs">
<Link>Mono.Tuner\RemoveSecurity.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\Extensions.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\Extensions.cs">
<Link>Mono.Tuner\Extensions.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\FixModuleFlags.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\FixModuleFlags.cs">
<Link>Mono.Tuner\FixModuleFlags.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\Dispatcher.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\Dispatcher.cs">
<Link>Mono.Tuner\Dispatcher.cs</Link>
</Compile>
<Compile Include="..\linker\MonoTouch.Tuner\MonoTouchSweepStep.cs">
@ -188,7 +188,7 @@
<Compile Include="..\linker\MonoTouch.Tuner\ProcessExportedFields.cs">
<Link>MonoTouch.Tuner\ProcessExportedFields.cs</Link>
</Compile>
<Compile Include="..\..\external\mono\mcs\tools\tuner\Mono.Tuner\CecilRocks.cs">
<Compile Include="..\..\external\linker\tuner\Mono.Tuner\CecilRocks.cs">
<Link>Mono.Tuner\CecilRocks.cs</Link>
</Compile>
<Compile Include="..\linker\MobileProfile.cs">