HomePhabricator

[llvm-config] Fixing one check where shared libs implied dylib

Description

[llvm-config] Fixing one check where shared libs implied dylib

We shouldn't print the dylib if LinkDylib is false.

Details

Committed
cbienemanDec 13 2016, 3:08 PM
Parents
rL289608: llvm-config: Set LinkMode in addition to LinkDyLib when using --ignore-llvm
Branches
Unknown
Tags
Unknown

Event Timeline

mati865 added a subscriber: mati865.EditedFeb 14 2017, 12:19 PM

It might be not relevant but it broke llvm-config --libs --link-shared when LLVM is built with:

-DLLVM_BUILD_LLVM_DYLIB=ON \
-DLLVM_LINK_LLVM_DYLIB=OFF \

Of course this combination seems stupid at first sight but LLD and LLDB linked dynamically haven't worked properly and we wanted to provide LLVM.dll.

Hopefully with next release we can switch to fully dynamic build but it could be unintended change.

Command output:

$ llvm-config --libs --link-shared                                              llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMDemangle.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMSupport.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMCore.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMProfileData.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMBitReader.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMMC.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMMCParser.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMObject.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMAnalysis.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMBitWriter.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMTransformUtils.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMInstCombine.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMAsmParser.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMIRReader.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMLinker.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMScalarOpts.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMVectorize.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMInstrumentation.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMipo.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMCoroutines.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMTarget.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMCodeGen.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMRuntimeDyld.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMExecutionEngine.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMInterpreter.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMMCJIT.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMX86Utils.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMX86AsmPrinter.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMX86Info.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMMCDisassembler.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMX86Desc.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMDebugInfoMSF.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMDebugInfoCodeView.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMAsmPrinter.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMSelectionDAG.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMGlobalISel.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMX86CodeGen.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMX86AsmParser.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMX86Disassembler.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMOption.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMLibDriver.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMObjectYAML.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMARMAsmPrinter.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMARMInfo.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMARMDesc.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMARMAsmParser.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMARMCodeGen.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMARMDisassembler.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMMIRParser.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMOrcJIT.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMLineEditor.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMTableGen.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMCoverage.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMDebugInfoDWARF.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMDebugInfoPDB.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMSymbolize.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMObjCARCOpts.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMPasses.dll
llvm-config: error: missing: D:\projekty\msys2\clang\msys64\mingw64/bin/LLVMLTO.dll

How it worked before:

$ llvm-config --libs --link-shared
-lLLVM.dll