-
Notifications
You must be signed in to change notification settings - Fork 1.5k
The world gets rebuilt after a small git checkout #7893
Copy link
Copy link
Closed
Labels
Description
Describe the bug
After checking out a small commit that only touches a gtest, libCling gets rebuilt because a dependency (VCSRevision.h) changes, which in turn means everything that depends on cling gets rebuilt:
// ... snip ...
[ 26%] Generating VCSRevision.h
[ 26%] Built target LLVMMCDisassembler
[ 26%] Built target LLVMOption
[ 26%] Built target LLVMMCParser
[ 26%] Built target LLVMRemarks
[ 26%] Built target clang-cmake-exports
[ 26%] Built target rconfigure
[ 27%] Built target obj.llvm-tblgen
[ 27%] Built target llvm_vcsrevision_h
[ 27%] Built target gitcommit
[ 27%] Built target LLVMDebugInfoMSF
[ 27%] Built target obj.clang-tblgen
[ 27%] Built target rootMan
[ 28%] Built target LLVMDebugInfoDWARF
[ 28%] Built target rsa
[ 28%] Built target LLVMDebugInfoCodeView
[ 28%] Built target haddMan
[ 28%] Built target LLVMMC
[ 28%] Built target hist2workspaceMan
[ 28%] Built target copy_pretty_printers
[ 28%] Built target rootclingMan
[ 28%] Built target ProofBenchPARFiles
[ 29%] Built target move_headers
[ 30%] Built target LLVMSupport
[ 30%] Built target Foundation_Stage1
[ 30%] Built target BaseTROOT
[ 30%] Built target Foundation
[ 30%] Built target clang-tblgen
[ 30%] Built target Clib
[ 30%] Built target llvm-tblgen
[ 30%] Built target Lz4
[ 30%] Built target TextInput
[ 30%] Built target Zstd
[ 30%] Built target Lzma
[ 30%] Built target Unix
[ 30%] Built target GuiCore
[ 30%] Built target Zip
[ 30%] Built target Cont
[ 30%] Built target Meta
[ 30%] Built target RootPcmObjs
[ 30%] Built target mathtext
[ 30%] Built target root
[ 30%] Built target rmkdepend
[ 30%] Built target AttributeCompatFuncTableGen
[ 30%] Built target rpdutil
[ 30%] Built target ClangAttrImpl
[ 30%] Built target intrinsics_gen
[ 30%] Built target ClangSACheckers
[ 30%] Built target InstCombineTableGen
[ 30%] Built target StmtDataCollectors
[ 30%] Built target ClangCommentHTMLTags
[ 30%] Built target ClangAttrClasses
[ 30%] Built target ClangCommentHTMLTagsProperties
[ 30%] Built target ClangAttrTextDump
[ 31%] Built target ClangCommentNodes
[ 32%] Built target ClangAttrTraverse
[ 32%] Built target ClangDeclNodes
[ 32%] Built target ClangCommentHTMLNamedCharacterReferences
[ 56%] Built target move_artifacts
[ 32%] Built target ClangAttrVisitor
[ 56%] Built target ClangCommentCommandList
[ 56%] Built target ClangStmtNodes
[ 56%] Built target ClangCommentCommandInfo
[ 56%] Built target ClangARMFP16
[ 56%] Built target ClangAttrHasAttributeImpl
[ 56%] Built target Base
[ 56%] Built target ClangARMNeon
[ 56%] Built target ClangAttrSubjectMatchRuleList
[ 56%] Built target ClangDiagnosticIndexName
[ 56%] Built target ClangDiagnosticComment
[ 56%] Built target ClangDiagnosticAST
[ 56%] Built target ClangDiagnosticAnalysis
[ 56%] Built target ClangAttrList
[ 56%] Built target ClangDiagnosticCrossTU
[ 56%] Built target ClangDiagnosticLex
[ 56%] Built target ClangDiagnosticDriver
[ 56%] Built target ClangDiagnosticCommon
[ 56%] Built target ClangDiagnosticParse
[ 56%] Built target ClangDiagnosticFrontend
[ 56%] Built target ClangDiagnosticSema
[ 56%] Built target ClangDiagnosticGroups
[ 56%] Built target ClangDiagnosticRefactoring
[ 56%] Built target ClangDiagnosticSerialization
[ 56%] Built target ClangAttrSubMatchRulesParserStringSwitches
[ 56%] Built target ClangAttrParsedAttrImpl
[ 56%] Built target ClangAttrSpellingListIndex
[ 56%] Built target ClangAttrParsedAttrKinds
[ 56%] Built target ClangAttrParsedAttrList
[ 56%] Built target ClangAttrParserStringSwitches
[ 56%] Built target ClangAttrTemplateInstantiate
[ 57%] Built target ClangAttrPCHWrite
[ 57%] Built target ClangAttrPCHRead
[ 57%] Built target ClangDriverOptions
[ 59%] Built target clang-resource-headers
[ 59%] Built target LLVMIRReader
[ 60%] Built target LLVMBitReader
[ 60%] Built target LLVMBitWriter
[ 61%] Built target LLVMInstrumentation
[ 61%] Built target LLVMAggressiveInstCombine
[ 61%] Built target LLVMGlobalISel
[ 61%] Built target LLVMSelectionDAG
[ 63%] Built target LLVMCore
[ 63%] Built target LLVMObjCARCOpts
[ 63%] Built target LLVMInstCombine
[ 64%] Built target LLVMAsmPrinter
[ 64%] Built target LLVMVectorize
[ 64%] Built target LLVMLinker
[ 64%] Built target LLVMCoroutines
[ 65%] Built target LLVMipo
[ 65%] Built target LLVMTransformUtils
[ 65%] Built target LLVMExecutionEngine
[ 65%] Built target LLVMLTO
[ 65%] Built target LLVMJITLink
[ 65%] Built target LLVMPasses
[ 65%] Built target LLVMAsmParser
[ 66%] Built target LLVMObject
[ 66%] Built target LLVMTarget
[ 66%] Built target LLVMProfileData
[ 66%] Built target LLVMRuntimeDyld
[ 66%] Built target X86CommonTableGen
[ 66%] Built target NVPTXCommonTableGen
[ 66%] Built target clang-tablegen-targets
[ 66%] Built target LLVMCoverage
[ 67%] Built target LLVMScalarOpts
[ 67%] Built target LLVMX86Disassembler
[ 67%] Built target LLVMX86Info
[ 67%] Built target LLVMNVPTXInfo
[ 67%] Built target LLVMNVPTXDesc
[ 67%] Built target LLVMX86AsmParser
[ 67%] Generating VCSVersion.inc
[ 67%] Built target LLVMX86Utils
[ 68%] Built target LLVMAnalysis
[ 67%] Built target LLVMX86Desc
-- Found Git: /usr/bin/git (found version "2.31.1")
[ 68%] Built target LLVMNVPTXCodeGen
[ 68%] Built target obj.clangParse
[ 68%] Built target obj.clangASTMatchers
[ 69%] Built target ClangOpenCLBuiltinsImpl
[ 69%] Built target obj.clangLex
[ 69%] Built target LLVMCodeGen
[ 69%] Built target obj.clangEdit
[ 69%] Built target obj.clangRewrite
[ 69%] Built target clang-headers
[ 69%] Built target LLVMX86CodeGen
[ 69%] Built target obj.clangSerialization
[ 69%] Built target clangParse
[ 70%] Built target obj.clangAnalysis
[ 70%] Built target clangASTMatchers
[ 70%] Built target obj.clangDriver
[ 71%] Built target obj.clangRewriteFrontend
[ 71%] Built target clangEdit
[ 71%] Built target obj.clangFrontend
[ 71%] Built target clangLex
[ 71%] Built target clangRewrite
[ 71%] Built target obj.clangAST
[ 71%] Built target clangAnalysis
[ 71%] Built target clangSerialization
[ 71%] Built target LLVMOrcJIT
[ 71%] Built target obj.clingMetaProcessor
[ 71%] Built target clangRewriteFrontend
[ 71%] Built target obj.clingUtils
[ 71%] Built target clangFrontend
[ 71%] Built target clangDriver
[ 71%] Building CXX object interpreter/llvm/src/tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Version.cpp.o
[ 72%] Built target obj.clangCodeGen
[ 72%] Built target clangAST
[ 72%] Built target obj.clangSema
[ 72%] Built target clingMetaProcessor
[ 72%] Built target clingUtils
[ 72%] Built target clangCodeGen
[ 72%] Built target clangSema
[ 72%] Built target obj.clingInterpreter
[ 72%] Built target clingInterpreter
[ 72%] Built target clad
[ 72%] Built target CLING
[ 72%] Built target LLVMRES
[ 72%] Built target Dictgen
[ 72%] Built target ClingUtils
[ 73%] Built target MetaCling
[ 73%] Built target obj.clangBasic
[ 73%] Linking CXX static library ../../../../lib/libclangBasic.a
[ 73%] Built target clangBasic
[ 73%] Linking CXX shared library ../../../lib/libCling.so
[ 73%] Linking CXX executable src/rootcling_stage1
// ... snip ...
Expected behavior
Checking out a different revision of a given file should only trigger a rebuild of the targets that depend on that file.
Reactions are currently unavailable