[LLVMdev] enabling openmp cmake build in llvm tree

Jack Howarth howarth.mailing.lists at gmail.com
Tue May 5 14:01:10 PDT 2015


Now that the commit of...

------------------------------------------------------------------------
r236534 | achurbanov | 2015-05-05 16:02:52 -0400 (Tue, 05 May 2015) | 13
lines

Integrate libiomp CMake into LLVM CMake build system.

This patch integrates the libiomp CMake build system into the LLVM CMake
build
system so that users can checkout libiomp into the projects directory of
llvm
and build llvm,clang, and libiomp all together.  These changes specifically
introduce a new install target which will put libraries and headers into
the
correct locations when either a standalone build or part of llvm.
The copy_recipe() method has been removed in favor of the POST_BUILD method
to move headers into the exports subdirectory.  And lastly, the
MicroTests.cmake
file was refactored which led to simpler target dependencies and a new
target,
make libiomp-micro-tests, which performs the 5 small tests (test-relo,
test-touch, etc.) when called.

..is done,.can we get a commit similar to that proposed in...

http://lists.cs.uiuc.edu/pipermail/openmp-dev/2015-April/000502.html

--- llvm-3.7.0.src/projects/CMakeLists.txt.orig 2015-04-26
19:10:12.000000000 -0400
+++ llvm-3.7.0.src/projects/CMakeLists.txt      2015-04-28
21:14:59.000000000 -0400
@@ -6,6 +6,7 @@
   if(IS_DIRECTORY ${entry} AND EXISTS ${entry}/CMakeLists.txt)
     if((NOT ${entry} STREQUAL ${CMAKE_CURRENT_SOURCE_DIR}/compiler-rt) AND
        (NOT ${entry} STREQUAL ${CMAKE_CURRENT_SOURCE_DIR}/dragonegg) AND
+       (NOT ${entry} STREQUAL ${CMAKE_CURRENT_SOURCE_DIR}/openmp) AND
        (NOT ${entry} STREQUAL ${CMAKE_CURRENT_SOURCE_DIR}/libcxx) AND
        (NOT ${entry} STREQUAL ${CMAKE_CURRENT_SOURCE_DIR}/libcxxabi) AND
        (NOT ${entry} STREQUAL ${CMAKE_CURRENT_SOURCE_DIR}/libunwind))
@@ -26,6 +27,9 @@
     add_llvm_external_project(libcxx)
     add_llvm_external_project(libunwind)
   endif()
+  if(NOT MSVC)
+    add_llvm_external_project(openmp)
+  endif()
   if(NOT LLVM_BUILD_EXTERNAL_COMPILER_RT)
     add_llvm_external_project(compiler-rt)
   endif()

checked into llvm trunk to complete the integration of the openmp build
into the llvm cmake build? The proposed patch from that message works fine
with current openmp and llvm svn.
          Jack
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150505/03ab5e05/attachment.html>


More information about the llvm-dev mailing list