<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/85504>85504</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[CMake] LLVM_HOST_TRIPLE cross compilation ignores CMAKE_SHARED_LINKER_FLAGS
</td>
</tr>
<tr>
<th>Labels</th>
<td>
cmake
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
MaskRay
</td>
</tr>
</table>
<pre>
I am trying a cross compilation (`-DLLVM_HOST_TRIPLE=x86_64-linux-musl`). It seems that shared object links (e.g. `lib/LLVMHello.so`, `unittests/Support/DynamicLibrary/PipSqueak.so`) do not respect `CMAKE_SHARED_LINKER_FLAGS`.
If I use `LLVM_USE_SPLIT_DWARF=on`, a DSO link does not pick up `-fuse-ld=lld` and will fail due to GNU ld not supporting `--gdb-index`
```sh
MUSL=$HOME/Dev/musl-cross-make
cmake -GNinja -Sllvm -B/tmp/out/musl -DCMAKE_BUILD_TYPE=Debug -DLLVM_USE_SPLIT_DWARF=on -DCMAKE_C_COMPILER=~/Stable/bin/clang -DCMAKE_CXX_COMPILER=~/Stable/bin/clang++ -DCMAKE_{C,CXX}_FLAGS="--target=x86_64-linux-musl --sysroot=$MUSL/output/x86_64-linux-musl --gcc-install-dir=$MUSL/output/lib/gcc/x86_64-linux-musl/9.4.0" -DCMAKE_{EXE,SHARED}_LINKER_FLAGS="-fuse-ld=lld -Wl,--dynamic-linker=$MUSL/output/x86_64-linux-musl/lib/libc.so -Wl,-rpath=$MUSL/output/x86_64-linux-musl/lib" -DLLVM_NATIVE_TOOL_DIR=/tmp/Rel/bin -DLLVM_HOST_TRIPLE=x86_64-linux-musl -DLLVM_TARGETS_TO_BUILD=host -DLLVM_ENABLE_PROJECTS='clang;lld'
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyUVEtzozoT_TXtjUoUEQ-HhRc2j4RvcOwyzky-FSVAwRoLxEUiN97c335LEM-rPFVzq1x-0ae7T_fpQ5XiTcfYCrwNeNGCjvokh9WWqvOBXhalrC-rFNEW6eHCuwZRVA1SKVTJtueCai47BOQefBtHWfZ5Wzzu8mNxPKT7LAYner_3C9_FgnfjO25HJcC3gQQWSjVSjLUK6RPVSJ3owGoky6-s0kjw7qxMVmY1FgLfFrwEkpj0j0wIaSk5pQnNs7HjWjOlFZAkH_teDhpIEl062vIq4-VAhwuQZM_7_K-R0fMVHKBaok5qNDDVm6rg2-F2_Sku8sf1IY6KLH36FB-KJFs_5ODbFtgR2Ov5PX1FKRoVM6CJ9XMeF_k-S49F9GV9SMCJZPfRI0VRvps4oVoyNdXseXVGY2_g-HVUDIsanEiIGnwb0a5Gf3Mh0CvlAtUjQ1qih6dnJOoJrGaWZhsGj5u6xLyr2bsp-EOT5uf0Uqf5j-1znoETAXEfd9vYTIm9AUnMWvC0VdzSM5tjK_MV4Ycn3n2lCOdCvLUIb4Akuu2BJHLUH1CEo3lum-c0i4rj__dm8RErxwZ9aOLWdL7BwiLcbfdpFh_Aif4xW9S0FAxIUvIOSFIJ2jXfo19e_iQeyAbI5hsKlpsQSBi-vMAy-lipGQTBWNOhYfqWVBHG6qIGKfU8tGl8E_N-In8L0FQV5p3SVAhc8-E2cJZzU1W3kgBJAsu1bCDkx_bjlxhIOEvTcPhJnTOVn4SE8BcBJMS4ni_BVDiz3zR0q4m5ScHLylLymm3oqT79xxzkqoKn9TH9HBfH3S4rovQwpflQ04GJeX_oz1zkGnZcHx7iY14cd7P6wIlOUunr4_hpvcniYn_Y_S8Oj_OclrM-nI25NrL85VQW9cqpAyegC7a6W97Z3tJzHW9xWpV3pVvf-RVdBr5f15TSwCNBFQS1UzoucRZ8RWzi2s6dby892_Esz66CwA1qx6lclzoVuDZrKReWOSVLDs2CKzWy1b3n2e5C0JIJNbkwIdPxASHGkIeVicfl2ChwbcGVVt8zaK7FZN3h1iC8CP06vRt2zZtODkyh37rdYhzE6qR1r8BZA0mMWLk-jaVVydasVbxdP3A_SOPZQJKJjXHhidC_AQAA__-ka-81">