Home | History | Annotate | Download | only in driver
      1 set( LLVM_LINK_COMPONENTS
      2   ${LLVM_TARGETS_TO_BUILD}
      3   asmparser
      4   bitreader
      5   bitwriter
      6   codegen
      7   instrumentation
      8   ipo
      9   linker
     10   selectiondag
     11   )
     12 
     13 add_clang_executable(clang
     14   driver.cpp
     15   cc1_main.cpp
     16   cc1as_main.cpp
     17   )
     18 
     19 target_link_libraries(clang
     20   clangFrontendTool
     21   clangAST
     22   clangAnalysis
     23   clangBasic
     24   clangCodeGen
     25   clangDriver
     26   clangEdit
     27   clangFrontend
     28   clangLex
     29   clangParse
     30   clangEdit
     31   clangARCMigrate
     32   clangRewriteCore
     33   clangRewriteFrontend
     34   clangSema
     35   clangSerialization
     36   clangStaticAnalyzerFrontend
     37   clangStaticAnalyzerCheckers
     38   clangStaticAnalyzerCore
     39   )
     40 
     41 set_target_properties(clang PROPERTIES VERSION ${CLANG_EXECUTABLE_VERSION})
     42 
     43 add_dependencies(clang clang-headers)
     44 
     45 if(UNIX)
     46   set(CLANGXX_LINK_OR_COPY create_symlink)
     47 # Create a relative symlink
     48   set(clang_binary "clang${CMAKE_EXECUTABLE_SUFFIX}")
     49 else()
     50   set(CLANGXX_LINK_OR_COPY copy)
     51   set(clang_binary "${LLVM_BINARY_DIR}/bin/${CMAKE_CFG_INTDIR}/clang${CMAKE_EXECUTABLE_SUFFIX}")
     52 endif()
     53 
     54 # Create the clang++ symlink in the build directory.
     55 set(clang_pp "${LLVM_BINARY_DIR}/bin/${CMAKE_CFG_INTDIR}/clang++${CMAKE_EXECUTABLE_SUFFIX}")
     56 add_custom_command(TARGET clang POST_BUILD
     57     COMMAND ${CMAKE_COMMAND} -E ${CLANGXX_LINK_OR_COPY} "${clang_binary}" "${clang_pp}")
     58 
     59 set_property(DIRECTORY APPEND
     60   PROPERTY ADDITIONAL_MAKE_CLEAN_FILES ${clang_pp})
     61 
     62 install(TARGETS clang
     63   RUNTIME DESTINATION bin)
     64 
     65 # Create the clang++ symlink at installation time.
     66 install(SCRIPT clang_symlink.cmake -DCMAKE_INSTALL_PREFIX=\"${CMAKE_INSTALL_PREFIX}\")
     67