Skip to content

Commit e6db87f

Browse files
committed
Adjust paths for dynamically linked LLVM toolchain
1 parent f1494ce commit e6db87f

File tree

7 files changed

+142
-38
lines changed

7 files changed

+142
-38
lines changed

Documentation/guides/building-apps/build-properties.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ the Android [binutils][binutils] such as `ld`, the native linker,
132132
and `as`, the native assembler. These tools are included in the
133133
Xamarin.Android installation.
134134

135-
The default value is `$(MonoAndroidBinDirectory)\binutils\`.
135+
The default value is `$(MonoAndroidBinDirectory)\binutils\bin\`.
136136

137137
Added in Xamarin.Android 10.0.
138138

build-tools/installers/create-installers.targets

Lines changed: 17 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -322,22 +322,22 @@
322322
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\lib64\libZipSharpNative.pdb" />
323323
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\proguard\bin\proguard.bat" />
324324
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\aapt2.exe" />
325-
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\as.exe" />
326-
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\ld.exe" />
327-
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\llvm-mc.exe" />
328-
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\llvm-strip.exe" />
329-
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\aarch64-linux-android-as.cmd" />
330-
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\aarch64-linux-android-ld.cmd" />
331-
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\aarch64-linux-android-strip.cmd" />
332-
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\arm-linux-androideabi-as.cmd" />
333-
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\arm-linux-androideabi-ld.cmd" />
334-
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\arm-linux-androideabi-strip.cmd" />
335-
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\i686-linux-android-as.cmd" />
336-
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\i686-linux-android-ld.cmd" />
337-
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\i686-linux-android-strip.cmd" />
338-
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\x86_64-linux-android-as.cmd" />
339-
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\x86_64-linux-android-ld.cmd" />
340-
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\x86_64-linux-android-strip.cmd" />
325+
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\bin\as.exe" />
326+
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\bin\ld.exe" />
327+
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\bin\llvm-mc.exe" />
328+
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\bin\llvm-strip.exe" />
329+
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\bin\aarch64-linux-android-as.cmd" />
330+
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\bin\aarch64-linux-android-ld.cmd" />
331+
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\bin\aarch64-linux-android-strip.cmd" />
332+
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\bin\arm-linux-androideabi-as.cmd" />
333+
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\bin\arm-linux-androideabi-ld.cmd" />
334+
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\bin\arm-linux-androideabi-strip.cmd" />
335+
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\bin\i686-linux-android-as.cmd" />
336+
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\bin\i686-linux-android-ld.cmd" />
337+
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\bin\i686-linux-android-strip.cmd" />
338+
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\bin\x86_64-linux-android-as.cmd" />
339+
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\bin\x86_64-linux-android-ld.cmd" />
340+
<_MSBuildFilesWin Include="$(MSBuildSrcDir)\binutils\bin\x86_64-linux-android-strip.cmd" />
341341
<_MSBuildLibHostFilesWin Include="$(MSBuildSrcDir)\lib\host-mxe-Win64\libmono-android.debug.dll" Condition=" '$(HostOS)' != 'Windows' " />
342342
<_MSBuildLibHostFilesWin Include="$(MSBuildSrcDir)\lib\host-mxe-Win64\libmono-android.release.dll" Condition=" '$(HostOS)' != 'Windows' " />
343343
<_MSBuildLibHostFilesWin Include="$(MSBuildSrcDir)\lib\host-mxe-Win64\libMonoPosixHelper.dll" />
@@ -356,23 +356,8 @@
356356
<Permission>755</Permission>
357357
</_MSBuildFilesUnixSignAndHarden>
358358
</ItemDefinitionGroup>
359+
<Import Project="unix-binutils.projitems" />
359360
<ItemGroup>
360-
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\as" />
361-
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\ld" />
362-
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\llvm-mc" />
363-
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\llvm-strip" />
364-
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\aarch64-linux-android-as" />
365-
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\aarch64-linux-android-ld" />
366-
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\aarch64-linux-android-strip" />
367-
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\arm-linux-androideabi-as" />
368-
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\arm-linux-androideabi-ld" />
369-
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\arm-linux-androideabi-strip" />
370-
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\i686-linux-android-as" />
371-
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\i686-linux-android-ld" />
372-
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\i686-linux-android-strip" />
373-
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\x86_64-linux-android-as" />
374-
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\x86_64-linux-android-ld" />
375-
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\x86_64-linux-android-strip" />
376361
<_MSBuildFilesUnix Include="$(MSBuildSrcDir)\$(HostOS)\illinkanalyzer" Permission="755" />
377362
<_MSBuildFilesUnix Include="$(MSBuildSrcDir)\$(HostOS)\jit-times" Permission="755" />
378363
<_MSBuildFilesUnix Include="$(MSBuildSrcDir)\$(HostOS)\aprofutil" ExcludeFromAndroidNETSdk="true" />
Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<PropertyGroup>
4+
<_LlvmLibExtension Condition=" '$(HostOS)' == 'Linux' ">so.13</_LlvmLibExtension>
5+
<_LlvmLibExtension Condition=" '$(HostOS)' == 'Darwin' ">dylib</_LlvmLibExtension>
6+
</PropertyGroup>
7+
8+
<ItemGroup>
9+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\bin\aarch64-linux-android-as" />
10+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\bin\aarch64-linux-android-ld" />
11+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\bin\aarch64-linux-android-strip" />
12+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\bin\arm-linux-androideabi-as" />
13+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\bin\arm-linux-androideabi-ld" />
14+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\bin\arm-linux-androideabi-strip" />
15+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\bin\as" />
16+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\bin\i686-linux-android-as" />
17+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\bin\i686-linux-android-ld" />
18+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\bin\i686-linux-android-strip" />
19+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\bin\ld" />
20+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\bin\llvm-mc" />
21+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\bin\llvm-strip" />
22+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\bin\x86_64-linux-android-as" />
23+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\bin\x86_64-linux-android-ld" />
24+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\bin\x86_64-linux-android-strip" />
25+
26+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\liblldCOFF.$(_LlvmLibExtension)" />
27+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\liblldCommon.$(_LlvmLibExtension)" />
28+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\liblldCore.$(_LlvmLibExtension)" />
29+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\liblldDriver.$(_LlvmLibExtension)" />
30+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\liblldELF.$(_LlvmLibExtension)" />
31+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\liblldMachO.$(_LlvmLibExtension)" />
32+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\liblldMachO2.$(_LlvmLibExtension)" />
33+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\liblldMinGW.$(_LlvmLibExtension)" />
34+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\liblldReaderWriter.$(_LlvmLibExtension)" />
35+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\liblldWasm.$(_LlvmLibExtension)" />
36+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\liblldYAML.$(_LlvmLibExtension)" />
37+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMAArch64AsmParser.$(_LlvmLibExtension)" />
38+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMAArch64CodeGen.$(_LlvmLibExtension)" />
39+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMAArch64Desc.$(_LlvmLibExtension)" />
40+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMAArch64Disassembler.$(_LlvmLibExtension)" />
41+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMAArch64Info.$(_LlvmLibExtension)" />
42+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMAArch64Utils.$(_LlvmLibExtension)" />
43+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMAggressiveInstCombine.$(_LlvmLibExtension)" />
44+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMAnalysis.$(_LlvmLibExtension)" />
45+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMARMAsmParser.$(_LlvmLibExtension)" />
46+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMARMCodeGen.$(_LlvmLibExtension)" />
47+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMARMDesc.$(_LlvmLibExtension)" />
48+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMARMDisassembler.$(_LlvmLibExtension)" />
49+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMARMInfo.$(_LlvmLibExtension)" />
50+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMARMUtils.$(_LlvmLibExtension)" />
51+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMAsmParser.$(_LlvmLibExtension)" />
52+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMAsmPrinter.$(_LlvmLibExtension)" />
53+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMBinaryFormat.$(_LlvmLibExtension)" />
54+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMBitReader.$(_LlvmLibExtension)" />
55+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMBitstreamReader.$(_LlvmLibExtension)" />
56+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMBitWriter.$(_LlvmLibExtension)" />
57+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMCFGuard.$(_LlvmLibExtension)" />
58+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMCodeGen.$(_LlvmLibExtension)" />
59+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMCore.$(_LlvmLibExtension)" />
60+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMCoroutines.$(_LlvmLibExtension)" />
61+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMDebugInfoCodeView.$(_LlvmLibExtension)" />
62+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMDebugInfoDWARF.$(_LlvmLibExtension)" />
63+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMDebugInfoMSF.$(_LlvmLibExtension)" />
64+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMDebugInfoPDB.$(_LlvmLibExtension)" />
65+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMDemangle.$(_LlvmLibExtension)" />
66+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMExtensions.$(_LlvmLibExtension)" />
67+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMFrontendOpenMP.$(_LlvmLibExtension)" />
68+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMGlobalISel.$(_LlvmLibExtension)" />
69+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMInstCombine.$(_LlvmLibExtension)" />
70+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMInstrumentation.$(_LlvmLibExtension)" />
71+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMipo.$(_LlvmLibExtension)" />
72+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMIRReader.$(_LlvmLibExtension)" />
73+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMLibDriver.$(_LlvmLibExtension)" />
74+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMLinker.$(_LlvmLibExtension)" />
75+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMLTO.$(_LlvmLibExtension)" />
76+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMMC.$(_LlvmLibExtension)" />
77+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMMCDisassembler.$(_LlvmLibExtension)" />
78+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMMCParser.$(_LlvmLibExtension)" />
79+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMMIRParser.$(_LlvmLibExtension)" />
80+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMObjCARCOpts.$(_LlvmLibExtension)" />
81+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMObject.$(_LlvmLibExtension)" />
82+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMOption.$(_LlvmLibExtension)" />
83+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMPasses.$(_LlvmLibExtension)" />
84+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMProfileData.$(_LlvmLibExtension)" />
85+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMRemarks.$(_LlvmLibExtension)" />
86+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMScalarOpts.$(_LlvmLibExtension)" />
87+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMSelectionDAG.$(_LlvmLibExtension)" />
88+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMSupport.$(_LlvmLibExtension)" />
89+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMTableGen.$(_LlvmLibExtension)" />
90+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMTableGenGlobalISel.$(_LlvmLibExtension)" />
91+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMTarget.$(_LlvmLibExtension)" />
92+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMTextAPI.$(_LlvmLibExtension)" />
93+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMTransformUtils.$(_LlvmLibExtension)" />
94+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMVectorize.$(_LlvmLibExtension)" />
95+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMWindowsManifest.$(_LlvmLibExtension)" />
96+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMX86AsmParser.$(_LlvmLibExtension)" />
97+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMX86CodeGen.$(_LlvmLibExtension)" />
98+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMX86Desc.$(_LlvmLibExtension)" />
99+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMX86Disassembler.$(_LlvmLibExtension)" />
100+
<_MSBuildFilesUnixSignAndHarden Include="$(MSBuildSrcDir)\$(HostOS)\binutils\lib\libLLVMX86Info.$(_LlvmLibExtension)" />
101+
</ItemGroup>
102+
</Project>

build-tools/xaprepare/xaprepare/ConfigAndData/Configurables.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ namespace Xamarin.Android.Prepare
1515
//
1616
partial class Configurables
1717
{
18-
const string BinutilsVersion = "L_13.0.1-4.0.0";
18+
const string BinutilsVersion = "L_13.0.1-4.0.1";
1919

2020
const string MicrosoftOpenJDK11Version = "11.0.10";
2121
const string MicrosoftOpenJDK11Release = "9.1";

build-tools/xaprepare/xaprepare/Steps/Step_InstallGNUBinutils.cs

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,20 +54,37 @@ protected override async Task<bool> Execute (Context context)
5454
return true;
5555
}
5656

57+
58+
5759
bool CopyToDestination (Context context, string label, string sourceDir, string destinationDir, string osName = HostName, string[]? executableExtensions = null)
5860
{
5961
Log.StatusLine ();
6062
Log.StatusLine ($"Installing for {label}:");
6163

62-
string sourcePath = Path.Combine (sourceDir, osName);
64+
string osSourcePath = Path.Combine (sourceDir, osName);
65+
string sourcePath = Path.Combine (osSourcePath, "bin");
6366
foreach (var kvp in Configurables.Defaults.AndroidToolchainPrefixes) {
6467
string prefix = kvp.Value;
6568
CopyTools (prefix);
6669
}
6770
CopyTools (String.Empty);
71+
CopyLibraries ();
6872

6973
return true;
7074

75+
void CopyLibraries ()
76+
{
77+
if (osName == "windows") {
78+
return;
79+
}
80+
81+
string libSourcePath = Path.Combine (osSourcePath, "lib");
82+
string libDestPath = Path.Combine (destinationDir, "lib");
83+
foreach (string file in Directory.EnumerateFiles (libSourcePath)) {
84+
Utilities.CopyFileToDir (file, libDestPath);
85+
}
86+
}
87+
7188
void CopyTools (string prefix)
7289
{
7390
bool copyPrefixed = !String.IsNullOrEmpty (prefix);
@@ -78,7 +95,7 @@ void CopyTools (string prefix)
7895

7996
string toolSourcePath = GetToolPath (sourcePath, prefix, tool, executableExtensions, throwOnMissing: true);
8097
string toolName = Path.GetFileName (toolSourcePath);
81-
string toolDestinationPath = Path.Combine (destinationDir, toolName);
98+
string toolDestinationPath = Path.Combine (destinationDir, "bin", toolName);
8299
string versionMarkerPath = GetVersionMarker (toolDestinationPath);
83100

84101
Log.StatusLine ($" {context.Characters.Bullet} Installing ", toolName, tailColor: ConsoleColor.White);

src/Xamarin.Android.Build.Tasks/Tasks/ResolveSdksTask.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ public override bool RunTask ()
8989
}
9090
MonoAndroidBinPath = MonoAndroidHelper.GetOSBinPath () + Path.DirectorySeparatorChar;
9191
MonoAndroidLibPath = MonoAndroidHelper.GetOSLibPath () + Path.DirectorySeparatorChar;
92-
AndroidBinUtilsPath = MonoAndroidBinPath + "binutils" + Path.DirectorySeparatorChar;
92+
AndroidBinUtilsPath = MonoAndroidBinPath + "binutils" + Path.DirectorySeparatorChar + "bin" + Path.DirectorySeparatorChar;
9393

9494
var minVersion = Version.Parse (MinimumSupportedJavaVersion);
9595
var maxVersion = Version.Parse (LatestSupportedJavaVersion);

0 commit comments

Comments
 (0)