|
5 | 5 | <Import Project="monodroid.projitems" /> |
6 | 6 | <Import Project="..\..\build-tools\scripts\RequiredPrograms.targets" /> |
7 | 7 | <UsingTask AssemblyFile="..\..\bin\Build$(Configuration)\Xamarin.Android.Tools.BootstrapTasks.dll" TaskName="Xamarin.Android.Tools.BootstrapTasks.GenerateMonoDroidIncludes" /> |
| 8 | + <UsingTask AssemblyFile="..\..\bin\Build$(Configuration)\xa-prep-tasks.dll" TaskName="Xamarin.Android.BuildTools.PrepTasks.ReplaceFileContents" /> |
8 | 9 | <PropertyGroup> |
9 | 10 | <_Conf>$(Configuration.ToLowerInvariant())</_Conf> |
10 | 11 | </PropertyGroup> |
|
116 | 117 | </ItemGroup> |
117 | 118 | </Target> |
118 | 119 | <Target Name="_BuildHostRuntimes" |
119 | | - DependsOnTargets="_GetBuildHostRuntimes;_CreateJavaInteropDllConfig" |
| 120 | + DependsOnTargets="_GetBuildHostRuntimes;_CreateJavaInteropDllConfigs" |
120 | 121 | Inputs="@(_CFile);@(_UnixCFile)" |
121 | 122 | Outputs="@(_HostRuntime->'$(OutputPath)%(OutputDirectory)\libmono-android.debug.%(NativeLibraryExtension)')"> |
122 | 123 | <Message Text="Building host runtime %(_HostRuntime.Identity) in $(OutputPath)%(_HostRuntime.OutputDirectory)"/> |
|
143 | 144 | Command="%(_HostRuntime.Strip) %(_HostRuntime.StripFlags) "$(OutputPath)%(_HostRuntime.OutputDirectory)\libmono-android.release.%(_HostRuntime.NativeLibraryExtension)"" |
144 | 145 | /> |
145 | 146 | </Target> |
146 | | - <Target Name="_CreateJavaInteropDllConfig" |
147 | | - Inputs="$(XAInstallPrefix)xbuild\Xamarin\Android\Java.Interop.dll" |
148 | | - Outputs="$(XAInstallPrefix)xbuild\Xamarin\Android\Java.Interop.dll.config"> |
| 147 | + <Target Name="_CreateJavaInteropDllConfigs" |
| 148 | + Inputs="$(XAInstallPrefix)xbuild\Xamarin\Android\Java.Interop.dll;$(JavaInteropSourceDirectory)\src\Java.Runtime.Environment\Java.Runtime.Environment.dll.config" |
| 149 | + Outputs="$(XAInstallPrefix)xbuild\Xamarin\Android\Java.Interop.dll.config;$(XAInstallPrefix)xbuild\Xamarin\Android\Java.Runtime.Environment.dll.config"> |
| 150 | + <ReadLinesFromFile |
| 151 | + File="../../build-tools/scripts/java-interop.dllmap"> |
| 152 | + <Output |
| 153 | + TaskParameter="Lines" |
| 154 | + ItemName="_JavaInteropDllMapContent" /> |
| 155 | + </ReadLinesFromFile> |
149 | 156 | <WriteLinesToFile |
150 | 157 | File="$(XAInstallPrefix)xbuild\Xamarin\Android\Java.Interop.dll.config" |
151 | | - Lines="<configuration> |
152 | | - <dllmap dll="java-interop" os="osx" target="lib/host-Darwin/libmono-android.debug.dylib" /> |
153 | | - <dllmap dll="java-interop" os="linux" target="lib/host-Linux/libmono-android.debug.so" /> |
154 | | - <dllmap dll="java-interop" os="windows" wordsize="64" target="lib/host-mxe-Win64/libmono-android.debug.dll" /> |
155 | | - <dllmap dll="java-interop" os="windows" wordsize="32" target="lib/host-mxe-Win32/libmono-android.debug.dll" /> |
156 | | -</configuration>" |
| 158 | + Lines="<configuration>;@(_JavaInteropDllMapContent);</configuration>" |
157 | 159 | Overwrite="True" |
158 | | - /> |
159 | | - </Target> |
| 160 | + /> |
| 161 | + <PropertyGroup> |
| 162 | + <DllMaps>@(_JavaInteropDllMapContent->'%(Identity)', '%0a ')</DllMaps> |
| 163 | + </PropertyGroup> |
| 164 | + <ReplaceFileContents |
| 165 | + SourceFile="$(JavaInteropSourceDirectory)\src\Java.Runtime.Environment\Java.Runtime.Environment.dll.config" |
| 166 | + DestinationFile="$(XAInstallPrefix)xbuild\Xamarin\Android\Java.Runtime.Environment.dll.config" |
| 167 | + Replacements="<configuration>=<configuration>%0a $(DllMaps)" |
| 168 | + /> |
| 169 | + </Target> |
160 | 170 | <Target Name="CoreCompile" |
161 | 171 | DependsOnTargets="Build"> |
162 | 172 | </Target> |
|
0 commit comments