The Java.Interop build can be configured by specifying MSBuild properties to control behavior or by overriding make(1) variables on the command line.
MSbuild properties may be placed into the file Configuration.Override.props,
which can be copied from
Configuration.Override.props.in.
The Configuration.Override.props file is <Import/>ed by
Directory.Build.props; there is no need to
<Import/> it within other project files.
Overridable MSBuild properties include:
$(CecilSourceDirectory): If the empty string, Cecil will be obtained from NuGet packages. Otherwise,$(UtilityOutputFullPath)Xamarin.Android.Cecil.dllwill be used to reference Cecil.$(JdkJvmPath): Full path name to the JVM native library to linkjava-interopagainst. By default this is probed for from numerous locations withinbuild-tools/scripts/jdk.mk.$(JavaCPath): Path to thejavaccommand-line tool, by default set tojavac.$(JarPath): Path to thejarcommand-line tool, by default set tojar.- It may be desirable to override these on Windows, depending on your
PATH.
- It may be desirable to override these on Windows, depending on your
$(UtilityOutputFullPath): Directory to place various utilities such asclass-parse,generator, andlogcat-parse. This value should be a full path. By default this is$(MSBuildThisFileDirectory)bin/$(Configuration).
The following make(1) variables may be specified:
-
$(CONFIGURATION): The product configuration to build, and corresponds to the$(Configuration)MSBuild property when running$(MSBUILD). Valid values areDebugandRelease. Default value isDebug. -
$(RUNTIME): The managed runtime to use to execute utilities, tests. Default value ismono64if present in$PATH, otherwisemono. -
$(TESTS): Which unit tests to execute. Useful in conjunction with themake run-teststarget:make run-tests TESTS=bin/Debug/Java.Interop.Dynamic-Tests.dll -
$(V): If set to a non-empty string, adds/v:diagto$(MSBUILD_FLAGS)invocations. -
$(MSBUILD): The MSBuild build tool to execute for builds. Default value isxbuild.