--- a/qttools/src/qdoc/configure.pri 2020-10-22 20:11:38.000000000 +0300 +++ b/qttools/src/qdoc/configure.pri 2020-12-17 11:56:43.613359500 +0300 @@ -104,16 +104,171 @@ } # note: llvm_config only exits on unix - llvm_config = $$clangInstallDir/bin/llvm-config + win32 { + llvm_config = $$clangInstallDir/bin/llvm-config.exe + } else { + llvm_config = $$clangInstallDir/bin/llvm-config + } exists($$llvm_config) { - CLANG_LIBDIR = $$system("$$llvm_config --libdir 2>/dev/null") - CLANG_INCLUDEPATH = $$system("$$llvm_config --includedir 2>/dev/null") - output = $$system("$$llvm_config --version 2>/dev/null") + CLANG_LIBDIR = $$system("$$llvm_config --libdir") + CLANG_INCLUDEPATH = $$system("$$llvm_config --includedir") + output = $$system("$$llvm_config --version") CLANG_VERSION = $$extractVersion($$output) + LLVM_COMPONENTS = $$system("$$llvm_config --libs") + LLVM_SYSTEM_LIBS = $$system("$$llvm_config --system-libs") } else { CLANG_LIBDIR = $$clangInstallDir/lib CLANG_INCLUDEPATH = $$clangInstallDir/include CLANG_VERSION = $$findLLVMVersionFromLibDir($$CLANG_LIBDIR) + LLVM_COMPONENTS = -lLLVMAArch64AsmParser \ + -lLLVMAArch64CodeGen \ + -lLLVMAArch64Desc \ + -lLLVMAArch64Disassembler \ + -lLLVMAArch64Info \ + -lLLVMAArch64Utils \ + -lLLVMAggressiveInstCombine \ + -lLLVMAMDGPUAsmParser \ + -lLLVMAMDGPUCodeGen \ + -lLLVMAMDGPUDesc \ + -lLLVMAMDGPUDisassembler \ + -lLLVMAMDGPUInfo \ + -lLLVMAMDGPUUtils \ + -lLLVMAnalysis \ + -lLLVMARMAsmParser \ + -lLLVMARMCodeGen \ + -lLLVMARMDesc \ + -lLLVMARMDisassembler \ + -lLLVMARMInfo \ + -lLLVMARMUtils \ + -lLLVMAsmParser \ + -lLLVMAsmPrinter \ + -lLLVMAVRAsmParser \ + -lLLVMAVRCodeGen \ + -lLLVMAVRDesc \ + -lLLVMAVRDisassembler \ + -lLLVMAVRInfo \ + -lLLVMBinaryFormat \ + -lLLVMBitReader \ + -lLLVMBitstreamReader \ + -lLLVMBitWriter \ + -lLLVMBPFAsmParser \ + -lLLVMBPFCodeGen \ + -lLLVMBPFDesc \ + -lLLVMBPFDisassembler \ + -lLLVMBPFInfo \ + -lLLVMCFGuard \ + -lLLVMCodeGen \ + -lLLVMCore \ + -lLLVMCoroutines \ + -lLLVMCoverage \ + -lLLVMDebugInfoCodeView \ + -lLLVMDebugInfoDWARF \ + -lLLVMDebugInfoGSYM \ + -lLLVMDebugInfoMSF \ + -lLLVMDebugInfoPDB \ + -lLLVMDemangle \ + -lLLVMDlltoolDriver \ + -lLLVMExecutionEngine \ + -lLLVMExtensions \ + -lLLVMFrontendOpenACC \ + -lLLVMFrontendOpenMP \ + -lLLVMFuzzMutate \ + -lLLVMGlobalISel \ + -lLLVMHexagonAsmParser \ + -lLLVMHexagonCodeGen \ + -lLLVMHexagonDesc \ + -lLLVMHexagonDisassembler \ + -lLLVMHexagonInfo \ + -lLLVMInstCombine \ + -lLLVMInstrumentation \ + -lLLVMInterpreter \ + -lLLVMipo \ + -lLLVMIRReader \ + -lLLVMJITLink \ + -lLLVMLanaiAsmParser \ + -lLLVMLanaiCodeGen \ + -lLLVMLanaiDesc \ + -lLLVMLanaiDisassembler \ + -lLLVMLanaiInfo \ + -lLLVMLibDriver \ + -lLLVMLineEditor \ + -lLLVMLinker \ + -lLLVMLTO \ + -lLLVMMC \ + -lLLVMMCDisassembler \ + -lLLVMMCJIT \ + -lLLVMMCParser \ + -lLLVMMipsAsmParser \ + -lLLVMMipsCodeGen \ + -lLLVMMipsDesc \ + -lLLVMMipsDisassembler \ + -lLLVMMipsInfo \ + -lLLVMMIRParser \ + -lLLVMMSP430AsmParser \ + -lLLVMMSP430CodeGen \ + -lLLVMMSP430Desc \ + -lLLVMMSP430Disassembler \ + -lLLVMMSP430Info \ + -lLLVMNVPTXAsmParser \ + -lLLVMNVPTXCodeGen \ + -lLLVMNVPTXDesc \ + -lLLVMNVPTXInfo \ + -lLLVMObjCARCOpts \ + -lLLVMObject \ + -lLLVMObjectYAML \ + -lLLVMOption \ + -lLLVMOrcError \ + -lLLVMOrcJIT \ + -lLLVMPasses \ + -lLLVMPowerPCAsmParser \ + -lLLVMPowerPCCodeGen \ + -lLLVMPowerPCDesc \ + -lLLVMPowerPCDisassembler \ + -lLLVMPowerPCInfo \ + -lLLVMProfileData \ + -lLLVMRemarks \ + -lLLVMRISCVAsmParser \ + -lLLVMRISCVCodeGen \ + -lLLVMRISCVDesc \ + -lLLVMRISCVDisassembler \ + -lLLVMRISCVInfo \ + -lLLVMRISCVUtils \ + -lLLVMRuntimeDyld \ + -lLLVMScalarOpts \ + -lLLVMSelectionDAG \ + -lLLVMSparcAsmParser \ + -lLLVMSparcCodeGen \ + -lLLVMSparcDesc \ + -lLLVMSparcDisassembler \ + -lLLVMSparcInfo \ + -lLLVMSupport \ + -lLLVMSymbolize \ + -lLLVMSystemZAsmParser \ + -lLLVMSystemZCodeGen \ + -lLLVMSystemZDesc \ + -lLLVMSystemZDisassembler \ + -lLLVMSystemZInfo \ + -lLLVMTableGen \ + -lLLVMTarget \ + -lLLVMTextAPI \ + -lLLVMTransformUtils \ + -lLLVMVectorize \ + -lLLVMWebAssemblyAsmParser \ + -lLLVMWebAssemblyAsmCodegen \ + -lLLVMWebAssemblyAsmDesc \ + -lLLVMWebAssemblyAsmDisassembler \ + -lLLVMWebAssemblyAsmInfo \ + -lLLVMWindowsManifest \ + -lLLVMX86AsmParser \ + -lLLVMX86CodeGen \ + -lLLVMX86Desc \ + -lLLVMX86Disassembler \ + -lLLVMX86Info \ + -lLLVMXCoreCodeGen \ + -lLLVMXCoreDesc \ + -lLLVMXCoreDisassembler \ + -lLLVMXCoreInfo \ + -lLLVMXRay } isEmpty(CLANG_VERSION) { !isEmpty(LLVM_INSTALL_DIR): \ @@ -134,7 +289,7 @@ isEmpty(QDOC_USE_STATIC_LIBCLANG) { equals(QMAKE_HOST.os, Windows): \ - CLANG_LIBS += -llibclang -ladvapi32 -lshell32 + CLANG_LIBS += -lclang -ladvapi32 -lshell32 else: \ CLANG_LIBS += -lclang } else { @@ -153,6 +308,8 @@ -lclangBasic \ -lclangCodeGen \ -lclangCrossTU \ + -lclangDependencyScanning \ + -lclangDirectoryWatcher \ -lclangDriver \ -lclangDynamicASTMatchers \ -lclangEdit \ @@ -160,6 +317,7 @@ -lclangFrontend \ -lclangFrontendTool \ -lclangHandleCXX \ + -lclangHandleLLVM \ -lclangIndex \ -lclangLex \ -lclangParse \ @@ -170,9 +328,14 @@ -lclangStaticAnalyzerCheckers \ -lclangStaticAnalyzerCore \ -lclangStaticAnalyzerFrontend \ + -lclangTesting \ -lclangTooling \ -lclangToolingASTDiff \ - -lclangToolingCore + -lclangToolingCore \ + -lclangToolingRefactoring \ + -lclangToolingSyntax \ + -lclangTransformer \ + $${LLVM_COMPONENTS} versionIsAtLeast($$CLANG_VERSION, "10.0.0") { equals(QMAKE_HOST.os, Windows): \ @@ -227,7 +390,7 @@ CLANG_LIBS += $$split(LLVM_LIBS_STRING, " ") !equals(QMAKE_HOST.os, Darwin):!msvc: CLANG_LIBS+=-Wl,--end-group - equals(QMAKE_HOST.os, Windows): CLANG_LIBS += -lversion + equals(QMAKE_HOST.os, Windows): CLANG_LIBS += -lz3 -lgomp -lpsapi -lshell32 -lole32 -luuid -ladvapi32 -lversion } !versionIsAtLeast($$CLANG_VERSION, "3.9.0") {