CMake: `make install' for libraries, executables and header files.
authorOscar Fuentes <ofv@wanadoo.es>
Wed, 22 Oct 2008 02:56:07 +0000 (02:56 +0000)
committerOscar Fuentes <ofv@wanadoo.es>
Wed, 22 Oct 2008 02:56:07 +0000 (02:56 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57945 91177308-0d34-0410-b5e6-96231b3b80d8

CMakeLists.txt
cmake/modules/AddLLVM.cmake
cmake/modules/AddPartiallyLinkedObject.cmake
tools/llvm-config/CMakeLists.txt

index 91ecf0128756cdd9de4ea255d2474dcd5ed1073e..837e8c1aaf893caba301c01236aa8b589e2b6d39 100644 (file)
@@ -157,3 +157,16 @@ add_subdirectory(lib/Archive)
 add_subdirectory(tools)
 
 add_subdirectory(examples)
+
+install(DIRECTORY include
+  DESTINATION .
+  PATTERN ".svn" EXCLUDE
+  PATTERN "*.cmake" EXCLUDE
+  PATTERN "*.in" EXCLUDE
+  )
+
+install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include
+  DESTINATION .
+  )
+
+# TODO: make and install documentation.
index d60b2885486ba542880eac020ae54594ee6dc533..0b7d9c821a2551764ee298fd67b4bcb3baece3d0 100755 (executable)
@@ -7,6 +7,9 @@ macro(add_llvm_library name)
   if( LLVM_COMMON_DEPENDS )
     add_dependencies( ${name} ${LLVM_COMMON_DEPENDS} )
   endif( LLVM_COMMON_DEPENDS )
+  install(TARGETS ${name}
+    LIBRARY DESTINATION lib
+    ARCHIVE DESTINATION lib)
 endmacro(add_llvm_library name)
 
 
@@ -34,12 +37,16 @@ endmacro(add_llvm_executable name)
 macro(add_llvm_tool name)
   set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${LLVM_TOOLS_BINARY_DIR})
   add_llvm_executable(${name} ${ARGN})
+  install(TARGETS ${name}
+    RUNTIME DESTINATION bin)
 endmacro(add_llvm_tool name)
 
 
 macro(add_llvm_example name)
 #  set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${LLVM_EXAMPLES_BINARY_DIR})
   add_llvm_executable(${name} ${ARGN})
+  install(TARGETS ${name}
+    RUNTIME DESTINATION examples)
 endmacro(add_llvm_example name)
 
 
index 6968857db8db0f94007fc73cc9455fe87695f3f8..4aba81f9c8f39398f145ef862354344daf314eb8 100755 (executable)
@@ -32,4 +32,6 @@ macro(add_partially_linked_object lib)
     set( llvm_libs ${llvm_libs} ${pll} PARENT_SCOPE)
     set( llvm_lib_targets ${llvm_lib_targets} ${tnplo} PARENT_SCOPE )
   endif( MSVC )
+  install(FILES ${pll}
+    DESTINATION lib)
 endmacro(add_partially_linked_object lib)
index 01167cb79963ae5d2877750d908037895a72654c..0aac393b92100e530150d8aac32979be8b900605 100644 (file)
@@ -104,3 +104,8 @@ add_custom_target(llvm-config.target ALL
   DEPENDS ${LLVM_CONFIG})
 
 add_dependencies(llvm-config.target ${llvm_lib_targets})
+
+install(FILES ${LLVM_CONFIG}
+  PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE
+  WORLD_READ WORLD_EXECUTE
+  DESTINATION bin)