Home | History | Annotate | Line # | Download | only in scan-build
      1      1.1  joerg option(CLANG_INSTALL_SCANBUILD "Install the scan-build tool" ON)
      2      1.1  joerg 
      3      1.1  joerg include(GNUInstallDirs)
      4      1.1  joerg 
      5      1.1  joerg if (WIN32 AND NOT CYGWIN)
      6      1.1  joerg   set(BinFiles
      7      1.1  joerg         scan-build
      8  1.1.1.2  joerg         scan-build.bat
      9  1.1.1.2  joerg 	)
     10      1.1  joerg   set(LibexecFiles
     11      1.1  joerg         ccc-analyzer
     12      1.1  joerg         c++-analyzer
     13      1.1  joerg         ccc-analyzer.bat
     14  1.1.1.2  joerg         c++-analyzer.bat
     15  1.1.1.2  joerg 	)
     16      1.1  joerg else()
     17      1.1  joerg   set(BinFiles
     18  1.1.1.2  joerg         scan-build
     19  1.1.1.2  joerg 	)
     20      1.1  joerg   set(LibexecFiles
     21      1.1  joerg         ccc-analyzer
     22  1.1.1.2  joerg         c++-analyzer
     23  1.1.1.2  joerg 	)
     24      1.1  joerg   if (APPLE)
     25      1.1  joerg     list(APPEND BinFiles
     26  1.1.1.2  joerg            set-xcode-analyzer
     27  1.1.1.2  joerg 	   )
     28      1.1  joerg   endif()
     29      1.1  joerg endif()
     30      1.1  joerg 
     31      1.1  joerg set(ManPages
     32      1.1  joerg       scan-build.1)
     33      1.1  joerg 
     34      1.1  joerg set(ShareFiles
     35      1.1  joerg       scanview.css
     36      1.1  joerg       sorttable.js)
     37      1.1  joerg 
     38      1.1  joerg 
     39      1.1  joerg if(CLANG_INSTALL_SCANBUILD)
     40      1.1  joerg   foreach(BinFile ${BinFiles})
     41      1.1  joerg     add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/bin/${BinFile}
     42      1.1  joerg                        COMMAND ${CMAKE_COMMAND} -E make_directory
     43      1.1  joerg                          ${CMAKE_BINARY_DIR}/bin
     44      1.1  joerg                        COMMAND ${CMAKE_COMMAND} -E copy
     45      1.1  joerg                          ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile}
     46      1.1  joerg                          ${CMAKE_BINARY_DIR}/bin/
     47      1.1  joerg                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
     48      1.1  joerg     list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
     49      1.1  joerg     install(PROGRAMS bin/${BinFile}
     50      1.1  joerg             DESTINATION bin
     51      1.1  joerg             COMPONENT scan-build)
     52      1.1  joerg   endforeach()
     53      1.1  joerg 
     54      1.1  joerg   foreach(LibexecFile ${LibexecFiles})
     55      1.1  joerg     add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/libexec/${LibexecFile}
     56      1.1  joerg                        COMMAND ${CMAKE_COMMAND} -E make_directory
     57      1.1  joerg                          ${CMAKE_BINARY_DIR}/libexec
     58      1.1  joerg                        COMMAND ${CMAKE_COMMAND} -E copy
     59      1.1  joerg                          ${CMAKE_CURRENT_SOURCE_DIR}/libexec/${LibexecFile}
     60      1.1  joerg                          ${CMAKE_BINARY_DIR}/libexec/
     61      1.1  joerg                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/libexec/${LibexecFile})
     62      1.1  joerg     list(APPEND Depends ${CMAKE_BINARY_DIR}/libexec/${LibexecFile})
     63      1.1  joerg     install(PROGRAMS libexec/${LibexecFile}
     64      1.1  joerg             DESTINATION libexec
     65      1.1  joerg             COMPONENT scan-build)
     66      1.1  joerg   endforeach()
     67      1.1  joerg 
     68      1.1  joerg   foreach(ManPage ${ManPages})
     69      1.1  joerg     add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_MANDIR}/man1/${ManPage}
     70      1.1  joerg                        COMMAND ${CMAKE_COMMAND} -E make_directory
     71      1.1  joerg                          ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_MANDIR}/man1
     72      1.1  joerg                        COMMAND ${CMAKE_COMMAND} -E copy
     73      1.1  joerg                          ${CMAKE_CURRENT_SOURCE_DIR}/man/${ManPage}
     74      1.1  joerg                          ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_MANDIR}/man1/
     75      1.1  joerg                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/man/${ManPage})
     76      1.1  joerg     list(APPEND Depends ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_MANDIR}/man1/${ManPage})
     77      1.1  joerg     install(PROGRAMS man/${ManPage}
     78      1.1  joerg             DESTINATION ${CMAKE_INSTALL_MANDIR}/man1
     79      1.1  joerg             COMPONENT scan-build)
     80      1.1  joerg   endforeach()
     81      1.1  joerg 
     82      1.1  joerg   foreach(ShareFile ${ShareFiles})
     83      1.1  joerg     add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/share/scan-build/${ShareFile}
     84      1.1  joerg                        COMMAND ${CMAKE_COMMAND} -E make_directory
     85      1.1  joerg                          ${CMAKE_BINARY_DIR}/share/scan-build
     86      1.1  joerg                        COMMAND ${CMAKE_COMMAND} -E copy
     87      1.1  joerg                          ${CMAKE_CURRENT_SOURCE_DIR}/share/scan-build/${ShareFile}
     88      1.1  joerg                          ${CMAKE_BINARY_DIR}/share/scan-build/
     89      1.1  joerg                        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/scan-build/${ShareFile})
     90      1.1  joerg     list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-build/${ShareFile})
     91      1.1  joerg     install(FILES share/scan-build/${ShareFile}
     92      1.1  joerg             DESTINATION share/scan-build
     93      1.1  joerg             COMPONENT scan-build)
     94      1.1  joerg   endforeach()
     95      1.1  joerg 
     96      1.1  joerg   add_custom_target(scan-build ALL DEPENDS ${Depends})
     97      1.1  joerg   set_target_properties(scan-build PROPERTIES FOLDER "Misc")
     98      1.1  joerg 
     99      1.1  joerg   if(NOT LLVM_ENABLE_IDE)
    100      1.1  joerg     add_llvm_install_targets("install-scan-build"
    101      1.1  joerg                              DEPENDS scan-build
    102      1.1  joerg                              COMPONENT scan-build)
    103      1.1  joerg   endif()
    104      1.1  joerg endif()
    105