Skip to content

Instantly share code, notes, and snippets.

View jonpryor's full-sized avatar

Jonathan Pryor jonpryor

View GitHub Profile
diff --git a/mcs/class/monodoc/Makefile b/mcs/class/monodoc/Makefile
index 3ebba80..8e550e1 100644
--- a/mcs/class/monodoc/Makefile
+++ b/mcs/class/monodoc/Makefile
@@ -141,7 +141,7 @@ Monodoc.Ecma/EcmaUrlParser.cs: Monodoc.Ecma/EcmaUrlParser.jay $(topdir)/jay/skel
$(topdir)/$(thisdir)/jay.sh $(topdir) $< $@ $(JAY_FLAGS)
parser.exe: Monodoc.Ecma/EcmaUrlParser.cs Monodoc.Ecma/EcmaUrlTokenizer.cs Monodoc.Ecma/EcmaUrlParserDriver.cs Monodoc.Ecma/EcmaDesc.cs
- mcs /out:$@ /debug $^
+ mcs /out:$@ /unsafe /debug $^
using System;
using System.Diagnostics;
using System.Reflection;
class App {
const int C = 1000000;
static void TimeReflection (PropertyInfo p, string value)
{
var sw = Stopwatch.StartNew ();
diff --git a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj
index 8e50ac0..8f16b76 100644
--- a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj
+++ b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj
@@ -65,6 +65,7 @@
</Reference>
</ItemGroup>
<ItemGroup>
+ <Compile Include="$(IntermediateOutputPath)Profile.g.cs" />
<Compile Include="Linker\LinkModes.cs" />
commit 25b5d95a918859a5d40365af5794848983b3371d
Author: Jonathan Pryor <[email protected]>
Date: Thu May 12 11:34:06 2016 -0400
[android-toolchains, mono-runtimes] Build armeabi, arm64-v8a.
diff --git a/Configuration.Override.props.in b/Configuration.Override.props.in
index 099d5de..fe8d457 100644
--- a/Configuration.Override.props.in
+++ b/Configuration.Override.props.in
diff --git a/Makefile b/Makefile
index 1c51739..aa34c01 100644
--- a/Makefile
+++ b/Makefile
@@ -3,6 +3,12 @@ CONFIGURATION = Debug
MSBUILD = xbuild /p:Configuration=$(CONFIGURATION) $(MSBUILD_ARGS)
RUNTIME := $(shell if [ -f `which mono64` ] ; then echo mono64 ; else echo mono; fi) --debug=casts
+LIB_MANDROID_PROJECTS = \
+ external/Java.Interop/tools/class-parse/class-parse.csproj \
diff --git a/external/Java.Interop b/external/Java.Interop
--- a/external/Java.Interop
+++ b/external/Java.Interop
@@ -1 +1 @@
-Subproject commit b6431ac85042960ba28dfb19f0be19573745d968
+Subproject commit b6431ac85042960ba28dfb19f0be19573745d968-dirty
diff --git a/src/Mono.Android/Mono.Android.targets b/src/Mono.Android/Mono.Android.targets
index 09878c4..0f357b0 100644
--- a/src/Mono.Android/Mono.Android.targets
+++ b/src/Mono.Android/Mono.Android.targets
diff --git a/src/Mono.Posix/Mono.Posix.csproj b/src/Mono.Posix/Mono.Posix.csproj
index 8120cc2..5d3f73e 100644
--- a/src/Mono.Posix/Mono.Posix.csproj
+++ b/src/Mono.Posix/Mono.Posix.csproj
@@ -245,6 +245,11 @@
<Name>Mono.Android</Name>
<Private>False</Private>
</ProjectReference>
+ <ProjectReference Include="..\Xamarin.Android.Build.Tasks\Xamarin.Android.Build.Tasks.csproj">
+ <Project>{3F1F2F50-AF1A-4A5A-BEDB-193372F068D7}</Project>
diff --git a/Configuration.props b/Configuration.props
index f71adb1..a71d4f3 100644
--- a/Configuration.props
+++ b/Configuration.props
@@ -11,6 +11,7 @@
<HostCc Condition=" '$(HostCc)' == '' ">cc</HostCc>
<HostCxx Condition=" '$(HostCxx)' == '' ">c++</HostCxx>
<ManagedRuntime Condition=" '$(ManagedRuntime)' == '' And '$(OS)' != 'Windows_NT' ">mono</ManagedRuntime>
+ <TargetFrameworkRootPath>$(MSBuildThisFileDirectory)bin\$(Configuration)\lib\xbuild-frameworks</TargetFrameworkRootPath>
<HOME Condition=" '$(HOME)' == '' ">$(HOMEDRIVE)$(HOMEPATH)</HOME>
diff --git a/build-tools/mono-runtimes/mono-runtimes.projitems b/build-tools/mono-runtimes/mono-runtimes.projitems
index ae79165..89484f8 100644
--- a/build-tools/mono-runtimes/mono-runtimes.projitems
+++ b/build-tools/mono-runtimes/mono-runtimes.projitems
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
- <_MonoRuntime Include="armeabi" Condition="$(AndroidSupportedTargetJitAbis.Contains (':armeabi:'))">
+ <_MonoRuntime Include="armeabi" Condition="$(AndroidSupportedTargetJitAbisForConditionalChecks.Contains (':armeabi:'))">

Binding Java 8 Interfaces from C♯

Help wanted! :-)

Background

Xamarin.Android binds the Android Java API, which means that all Java language features need to be "bound" to corresponding C# language features. For many language constructs, this binding is simple, e.g. type names are (usually) unchanged and identical, while other language features are changed in subtle