CMakeLists.txt revision de5e5ec3045a73a06b1054417f9ac6c02929e9ce
15c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)set(LLVM_LINK_COMPONENTS
25c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)  ${LLVM_TARGETS_TO_BUILD}
35c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)  ipo scalaropts linker bitreader bitwriter mcdisassembler vectorize)
45c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)
55c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)add_definitions( -DLLVM_VERSION_INFO=\"${PACKAGE_VERSION}\" )
65c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)
75c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)set(SOURCES
85c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)  LTOCodeGenerator.cpp
95c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)  lto.cpp
105c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)  LTOModule.cpp
115c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)  )
125c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)
135c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)if( NOT WIN32 AND LLVM_ENABLE_PIC )
145c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)  set(bsl ${BUILD_SHARED_LIBS})
155c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)  set(BUILD_SHARED_LIBS ON)
165c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)  add_llvm_library(LTO ${SOURCES})
175c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)  set_property(TARGET LTO PROPERTY OUTPUT_NAME "LTO")
185c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)  set(BUILD_SHARED_LIBS ${bsl})
195c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)  set(LTO_STATIC_TARGET_NAME LTO_static)
205c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)else()
215c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)  set(LTO_STATIC_TARGET_NAME LTO)
225c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)endif()
235c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)
245c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)if( NOT BUILD_SHARED_LIBS )
255c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)  add_llvm_library(${LTO_STATIC_TARGET_NAME} ${SOURCES})
265c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)  set_property(TARGET ${LTO_STATIC_TARGET_NAME} PROPERTY OUTPUT_NAME "LTO")
275c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)endif()
285c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)