From: Jonas Hahnfeld Date: Wed, 26 Jul 2017 13:55:00 +0000 (+0000) Subject: [CMake] Disable building libomptarget and add CMake switch X-Git-Tag: llvmorg-6.0.0-rc1~11730 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=203c730719b3e89251adf68d444f9b14de6e70d8;p=platform%2Fupstream%2Fllvm.git [CMake] Disable building libomptarget and add CMake switch Introduce OPENMP_ENABLE_LIBOMPTARGET which defaults to OFF at the moment. libomptarget is not yet ready for prime time: - Offloading to NVIDIA GPUs is not completed yet (compiler, device RTL) - The generic ELF plugin for offloading to the host (meant for testing) uses a single instance of the OpenMP runtime (libomp). That is why omp_is_initial_device() returns 1 which makes the tests fail. Because of these reasons, we want to disable building (and testing!) for release 5.0. See https://bugs.llvm.org/show_bug.cgi?id=33859 Differential Revision: https://reviews.llvm.org/D35719 llvm-svn: 309115 --- diff --git a/openmp/CMakeLists.txt b/openmp/CMakeLists.txt index a204266..aafba3c 100644 --- a/openmp/CMakeLists.txt +++ b/openmp/CMakeLists.txt @@ -4,9 +4,20 @@ set(OPENMP_LLVM_TOOLS_DIR "" CACHE PATH "Path to LLVM tools for testing") add_subdirectory(runtime) + +# The tests currently don't pass if the generic ELF plugin is built. +# TODO: Fix the tests and enable libomptarget by default on supported +# architectures and platforms. +set(ENABLE_LIBOMPTARGET OFF) # Currently libomptarget cannot be compiled on Windows or MacOS X. # Since the device plugins are only supported on Linux anyway, # there is no point in trying to compile libomptarget on other OSes. -if (NOT (WIN32 OR ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")) +if (WIN32 OR ${CMAKE_SYSTEM_NAME} MATCHES "Darwin") + set(ENABLE_LIBOMPTARGET OFF) +endif() + +option(OPENMP_ENABLE_LIBOMPTARGET "Enable building libomptarget for offloading." + ${ENABLE_LIBOMPTARGET}) +if (OPENMP_ENABLE_LIBOMPTARGET) add_subdirectory(libomptarget) endif()