CMakeLists.txt revision 2be8ab460378455f82d719a872420fb5053f1bd5
1set(LLVM_LINK_COMPONENTS 2 ${LLVM_TARGETS_TO_BUILD} 3 ipo scalaropts linker bitreader bitwriter lto mcdisassembler vectorize) 4 5add_definitions( -DLLVM_VERSION_INFO=\"${PACKAGE_VERSION}\" ) 6 7set(SOURCES 8 LTODisassembler.cpp 9 lto.cpp 10 ) 11 12if( NOT CYGWIN AND LLVM_ENABLE_PIC ) 13 if ( WIN32 ) 14 # Create .def file containing a list of exports preceeded by 15 # 'EXPORTS'. The file "lto.exports" already contains the list, so we 16 # massage it into the correct format here to create "lto.exports.def". 17 set(LTO_EXPORTS_DEF ${CMAKE_CURRENT_BINARY_DIR}/lto.exports.def) 18 file(READ "lto.exports" exports_list) 19 file(WRITE ${LTO_EXPORTS_DEF} "LIBRARY LTO\n") 20 file(APPEND ${LTO_EXPORTS_DEF} "EXPORTS\n") 21 file(APPEND ${LTO_EXPORTS_DEF} ${exports_list}) 22 set(SHARED_LIB_SOURCES ${SOURCES} ${LTO_EXPORTS_DEF}) 23 else() 24 set(SHARED_LIB_SOURCES ${SOURCES}) 25 endif() 26 27 set(bsl ${BUILD_SHARED_LIBS}) 28 set(BUILD_SHARED_LIBS ON) 29 add_llvm_library(LTO ${SHARED_LIB_SOURCES}) 30 set_property(TARGET LTO PROPERTY OUTPUT_NAME "LTO") 31 set(BUILD_SHARED_LIBS ${bsl}) 32 set(LTO_STATIC_TARGET_NAME LTO_static) 33else() 34 set(LTO_STATIC_TARGET_NAME LTO) 35endif() 36 37if( NOT BUILD_SHARED_LIBS ) 38 add_llvm_library(${LTO_STATIC_TARGET_NAME} ${SOURCES}) 39 set_property(TARGET ${LTO_STATIC_TARGET_NAME} PROPERTY OUTPUT_NAME "LTO") 40endif() 41 42if( NOT CYGWIN ) 43 install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/lto.h 44 DESTINATION include/llvm-c) 45endif() 46