Support binding NSObjects as IntPtr. This is usually not
a problem, because when we fetch the ObjC signature for a
method, we usually get the signature as exported by us,
(in which case a parameter bound as 'IntPtr' would be treated
as 'void *' in the dynamic registrar) *except* when the
selector corresponds with a protocol the type implements,
in which case we get the signature as defined in the protocol.
https://bugzilla.xamarin.com/show_bug.cgi?id=41132
Instead check if the maccore directory exists.
This prevents an issue where if the stamp file did not exist and
the maccore directory did, we'd reset the maccore directory even
for make targets that shouldn't change anything (such as 'check-versions').
* Restore the mono_jit_thread_attach signature to how it's in
the latest stable.
* Don't use the new attach/detach methods when using the dynamic
mono runtime, since the methods aren't available in any released
version of mono. Also XM doesn't support coop yet, so it's not
needed.
* And finally don't use the new attach/detach methods for anything
that isn't building using mono/master (iow only watchOS). This
should be changed once the rest of the products starts using
mono/master again.
This way we can pass pointers to managed objects to the native objects
without the coop GC interfering (since icalls won't automatically
switch to "gc safe" mode).
Usually mono does this for other apps, but not for watchOS (where mono doesn't
use signals at all).
watchOS can still raise signals though, so we need to ignore at least SIGPIPE.
commit mono/mono@e4d33f70d4
Author: Rolf Bjarne Kvinge <rolf@xamarin.com>
Date: Wed May 18 14:21:23 2016 +0200
[System] Throw PlatformNotSupportedException if NetworkInformation.NetworkChange is used on watchOS. (#3010)
NetworkInformation.NetworkChange requires the SystemConfiguration framework,
which isn't available on watchOS.
And add the new file to the build.
commit spouliot/Touch.Unit@ffe2a6dcff
Author: Rolf Bjarne Kvinge <rolf@xamarin.com>
Date: Wed May 25 18:11:59 2016 +0200
Add a HttpTextWriter that can send logs over http.
There is no public API to create raw sockets with watchOS, so
we can't use Tcp directly, thus the need for using Http.