diff options
author | Oscar Fuentes <ofv@wanadoo.es> | 2008-09-22 01:08:49 +0000 |
---|---|---|
committer | Oscar Fuentes <ofv@wanadoo.es> | 2008-09-22 01:08:49 +0000 |
commit | 3d01fc7de86c75926e4e5ac7cc49f0116018893d (patch) | |
tree | 2ea49e2f904dd479a4b941454b776dee762921dd /cmake/modules/AddLLVM.cmake | |
parent | cd4c73aa708d9ecf5d7e0a711dbf359d22b6dd3a (diff) | |
download | llvm-3d01fc7de86c75926e4e5ac7cc49f0116018893d.tar.gz llvm-3d01fc7de86c75926e4e5ac7cc49f0116018893d.tar.bz2 llvm-3d01fc7de86c75926e4e5ac7cc49f0116018893d.tar.xz |
Initial support for the CMake build system.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56419 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'cmake/modules/AddLLVM.cmake')
-rwxr-xr-x | cmake/modules/AddLLVM.cmake | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake new file mode 100755 index 0000000000..c3641eacd2 --- /dev/null +++ b/cmake/modules/AddLLVM.cmake @@ -0,0 +1,39 @@ +include(LLVMConfig) + +macro(add_llvm_library name) + add_library( ${name} ${ARGN} ) + set( llvm_libs ${llvm_libs} ${name} PARENT_SCOPE) +endmacro(add_llvm_library name) + + +macro(add_llvm_executable name) + add_executable(${name} ${ARGN}) + if( LLVM_LINK_COMPONENTS ) + llvm_config(${name} ${LLVM_LINK_COMPONENTS}) + endif( LLVM_LINK_COMPONENTS ) + if( MSVC ) + target_link_libraries(${name} ${llvm_libs}) + else( MSVC ) + add_dependencies(${name} llvm-config.target) + set_target_properties(${name} + PROPERTIES + LINK_FLAGS "-L ${CMAKE_ARCHIVE_OUTPUT_DIRECTORY}") + if( MINGW ) + target_link_libraries(${name} DbgHelp psapi) + elseif( CMAKE_HOST_UNIX ) + target_link_libraries(${name} dl) + endif( MINGW ) + endif( MSVC ) +endmacro(add_llvm_executable name) + + +macro(add_llvm_tool name) + set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${LLVM_TOOLS_BINARY_DIR}) + add_llvm_executable(${name} ${ARGN}) +endmacro(add_llvm_tool name) + + +macro(add_llvm_example name) +# set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${LLVM_EXAMPLES_BINARY_DIR}) + add_llvm_executable(${name} ${ARGN}) +endmacro(add_llvm_example name) |