[Openmp-commits] [openmp] 84d0243 - [Libomptarget] Clean up CUDA plugin CMake files

Joseph Huber via Openmp-commits openmp-commits at lists.llvm.org
Wed Jan 25 11:58:13 PST 2023


Author: Joseph Huber
Date: 2023-01-25T13:58:02-06:00
New Revision: 84d0243d215ee6fddc72675a73e273eb40b172a6

URL: https://github.com/llvm/llvm-project/commit/84d0243d215ee6fddc72675a73e273eb40b172a6
DIFF: https://github.com/llvm/llvm-project/commit/84d0243d215ee6fddc72675a73e273eb40b172a6.diff

LOG: [Libomptarget] Clean up CUDA plugin CMake files

Clean up this file after changing it in D142568.

Depends on D142568

Reviewed By: tianshilei1992

Differential Revision: https://reviews.llvm.org/D142573

Added: 
    

Modified: 
    openmp/libomptarget/plugins-nextgen/cuda/CMakeLists.txt
    openmp/libomptarget/plugins/cuda/CMakeLists.txt

Removed: 
    


################################################################################
diff  --git a/openmp/libomptarget/plugins-nextgen/cuda/CMakeLists.txt b/openmp/libomptarget/plugins-nextgen/cuda/CMakeLists.txt
index 90471a92a3b9..5706590a174a 100644
--- a/openmp/libomptarget/plugins-nextgen/cuda/CMakeLists.txt
+++ b/openmp/libomptarget/plugins-nextgen/cuda/CMakeLists.txt
@@ -23,76 +23,45 @@ endif()
 
 libomptarget_say("Building CUDA NextGen offloading plugin.")
 
-# Define the suffix for the runtime messaging dumps.
-add_definitions("-DTARGET_NAME=CUDA")
-
-# Define debug prefix. TODO: This should be automatized in the Debug.h but it
-# requires changing the original plugins.
-add_definitions(-DDEBUG_PREFIX="TARGET CUDA RTL")
-
 set(LIBOMPTARGET_DLOPEN_LIBCUDA OFF)
 option(LIBOMPTARGET_FORCE_DLOPEN_LIBCUDA "Build with dlopened libcuda" ${LIBOMPTARGET_DLOPEN_LIBCUDA})
 
-set(LIBOMPTARGET_CAN_LINK_LIBCUDA FALSE)
-if (LIBOMPTARGET_DEP_CUDA_FOUND)
-  set(LIBOMPTARGET_CAN_LINK_LIBCUDA TRUE)
-endif()
+add_llvm_library(omptarget.rtl.cuda.nextgen SHARED
+  src/rtl.cpp
 
-if (LIBOMPTARGET_CAN_LINK_LIBCUDA AND NOT LIBOMPTARGET_FORCE_DLOPEN_LIBCUDA)
-  libomptarget_say("Building CUDA NextGen plugin linked against libcuda")
-  include_directories(${LIBOMPTARGET_DEP_CUDA_INCLUDE_DIRS})
-  add_llvm_library(omptarget.rtl.cuda.nextgen SHARED
+  LINK_COMPONENTS
+  Support
+  Object
 
-    src/rtl.cpp
+  LINK_LIBS PRIVATE
+  elf_common
+  MemoryManager
+  PluginInterface
+  ${OPENMP_PTHREAD_LIB}
+  "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/../exports,-z,defs"
 
-    ADDITIONAL_HEADER_DIRS
-    ${LIBOMPTARGET_INCLUDE_DIR}
-
-    LINK_LIBS
-    PRIVATE
-    elf_common
-    MemoryManager
-    PluginInterface
-    CUDA::cuda_driver
-    ${OPENMP_PTHREAD_LIB}
-    "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/../exports"
-    "-Wl,-z,defs"
+  NO_INSTALL_RPATH
+)
 
-    NO_INSTALL_RPATH
-  )
+if(LIBOMPTARGET_DEP_CUDA_FOUND AND NOT LIBOMPTARGET_FORCE_DLOPEN_LIBCUDA)
+  libomptarget_say("Building CUDA plugin linked against libcuda")
+  target_link_libraries(omptarget.rtl.cuda.nextgen PRIVATE CUDA::cuda_driver)
 else()
-  libomptarget_say("Building CUDA NextGen plugin for dlopened libcuda")
-  include_directories(../../plugins/cuda/dynamic_cuda)
-  add_llvm_library(omptarget.rtl.cuda.nextgen
-    SHARED
-
-    src/rtl.cpp
-    ../../plugins/cuda/dynamic_cuda/cuda.cpp
-
-    ADDITIONAL_HEADER_DIRS
-    ${LIBOMPTARGET_INCLUDE_DIR}
-
-    LINK_LIBS
-    PRIVATE
-    elf_common
-    MemoryManager
-    PluginInterface
-    ${CMAKE_DL_LIBS}
-    ${OPENMP_PTHREAD_LIB}
-    "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/../exports"
-    "-Wl,-z,defs"
-
-    NO_INSTALL_RPATH
-  )
+  libomptarget_say("Building CUDA plugin for dlopened libcuda")
+  target_include_directories(omptarget.rtl.cuda.nextgen PRIVATE dynamic_cuda)
+  target_sources(omptarget.rtl.cuda.nextgen PRIVATE dynamic_cuda/cuda.cpp)
 endif()
 add_dependencies(omptarget.rtl.cuda.nextgen omptarget.devicertl.nvptx)
 
+# Define debug prefix. TODO: This should be automatized in the Debug.h but it
+# requires changing the original plugins.
+target_compile_definitions(omptarget.rtl.cuda.nextgen PRIVATE TARGET_NAME="CUDA")
+target_compile_definitions(omptarget.rtl.cuda.nextgen PRIVATE DEBUG_PREFIX="TARGET CUDA RTL")
+
+target_include_directories(omptarget.rtl.cuda.nextgen PRIVATE ${LIBOMPTARGET_INCLUDE_DIR})
+
 # Install plugin under the lib destination folder.
 install(TARGETS omptarget.rtl.cuda.nextgen LIBRARY DESTINATION "${OPENMP_INSTALL_LIBDIR}")
 set_target_properties(omptarget.rtl.cuda.nextgen PROPERTIES
   INSTALL_RPATH "$ORIGIN" BUILD_RPATH "$ORIGIN:${CMAKE_CURRENT_BINARY_DIR}/.."
   CXX_VISIBILITY_PRESET protected)
-
-target_include_directories(omptarget.rtl.cuda.nextgen PRIVATE
-  ${LIBOMPTARGET_INCLUDE_DIR}
-)

diff  --git a/openmp/libomptarget/plugins/cuda/CMakeLists.txt b/openmp/libomptarget/plugins/cuda/CMakeLists.txt
index c92f22f07644..a16cdbe87c2a 100644
--- a/openmp/libomptarget/plugins/cuda/CMakeLists.txt
+++ b/openmp/libomptarget/plugins/cuda/CMakeLists.txt
@@ -23,76 +23,45 @@ endif()
 
 libomptarget_say("Building CUDA offloading plugin.")
 
-# Define the suffix for the runtime messaging dumps.
-add_definitions(-DTARGET_NAME=CUDA)
-
 set(LIBOMPTARGET_DLOPEN_LIBCUDA OFF)
 option(LIBOMPTARGET_FORCE_DLOPEN_LIBCUDA "Build with dlopened libcuda" ${LIBOMPTARGET_DLOPEN_LIBCUDA})
 
-set(LIBOMPTARGET_CAN_LINK_LIBCUDA FALSE)
-if (LIBOMPTARGET_DEP_CUDA_FOUND)
-  set(LIBOMPTARGET_CAN_LINK_LIBCUDA TRUE)
-endif()
-
-if (LIBOMPTARGET_CAN_LINK_LIBCUDA AND NOT LIBOMPTARGET_FORCE_DLOPEN_LIBCUDA)
-  libomptarget_say("Building CUDA plugin linked against libcuda")
-  add_llvm_library(omptarget.rtl.cuda SHARED
-
-    src/rtl.cpp
+add_llvm_library(omptarget.rtl.cuda SHARED
+  src/rtl.cpp
 
-    ADDITIONAL_HEADER_DIRS
-    ${LIBOMPTARGET_INCLUDE_DIR}
+  LINK_COMPONENTS
+  Support
+  Object
 
-    LINK_COMPONENTS
-    Support
-    Object
+  LINK_LIBS PRIVATE
+  elf_common
+  MemoryManager
+  ${OPENMP_PTHREAD_LIB}
+  "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/../exports,-z,defs"
 
-    LINK_LIBS
-    PRIVATE
-    elf_common
-    MemoryManager
-    CUDA::cuda_driver
-    ${OPENMP_PTHREAD_LIB}
-    "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/../exports"
-    "-Wl,-z,defs"
+  NO_INSTALL_RPATH
+)
 
-    NO_INSTALL_RPATH
-  )
+if(LIBOMPTARGET_DEP_CUDA_FOUND AND NOT LIBOMPTARGET_FORCE_DLOPEN_LIBCUDA)
+  libomptarget_say("Building CUDA plugin linked against libcuda")
+  target_link_libraries(omptarget.rtl.cuda PRIVATE CUDA::cuda_driver)
 else()
   libomptarget_say("Building CUDA plugin for dlopened libcuda")
-  include_directories(dynamic_cuda)
-  add_llvm_library(omptarget.rtl.cuda 
-    SHARED
-
-    src/rtl.cpp
-    dynamic_cuda/cuda.cpp
-
-    ADDITIONAL_HEADER_DIRS
-    ${LIBOMPTARGET_INCLUDE_DIR}
-
-    LINK_LIBS
-    PRIVATE
-    elf_common
-    MemoryManager
-    ${OPENMP_PTHREAD_LIB}
-    "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/../exports"
-    "-Wl,-z,defs"
-
-    NO_INSTALL_RPATH
-  )
+  target_include_directories(omptarget.rtl.cuda PRIVATE dynamic_cuda)
+  target_sources(omptarget.rtl.cuda PRIVATE dynamic_cuda/cuda.cpp)
 endif()
 add_dependencies(omptarget.rtl.cuda omptarget.devicertl.nvptx)
 
+# Define the suffix for the runtime messaging dumps.
+target_compile_definitions(omptarget.rtl.cuda PRIVATE TARGET_NAME="CUDA")
+target_include_directories(omptarget.rtl.cuda PRIVATE ${LIBOMPTARGET_INCLUDE_DIR})
+
 # Install plugin under the lib destination folder.
 install(TARGETS omptarget.rtl.cuda LIBRARY DESTINATION "${OPENMP_INSTALL_LIBDIR}")
 set_target_properties(omptarget.rtl.cuda PROPERTIES 
   INSTALL_RPATH "$ORIGIN" BUILD_RPATH "$ORIGIN:${CMAKE_CURRENT_BINARY_DIR}/.."
   CXX_VISIBILITY_PRESET protected)
 
-target_include_directories(omptarget.rtl.cuda PRIVATE
-  ${LIBOMPTARGET_INCLUDE_DIR}
-)
-
 # Report to the parent scope that we are building a plugin for CUDA.
 # This controls whether tests are run for the nvptx offloading target
 # Run them if libcuda is available, or if the user explicitly asked for dlopen
@@ -100,7 +69,6 @@ target_include_directories(omptarget.rtl.cuda PRIVATE
 option(LIBOMPTARGET_FORCE_NVIDIA_TESTS "Build NVIDIA libomptarget tests" OFF)
 if (LIBOMPTARGET_FOUND_NVIDIA_GPU OR LIBOMPTARGET_FORCE_NVIDIA_TESTS)
   libomptarget_say("Enable tests using CUDA plugin")
-  set(LIBOMPTARGET_SYSTEM_TARGETS "${LIBOMPTARGET_SYSTEM_TARGETS} nvptx64-nvidia-cuda nvptx64-nvidia-cuda-oldDriver" PARENT_SCOPE)
   set(LIBOMPTARGET_SYSTEM_TARGETS "${LIBOMPTARGET_SYSTEM_TARGETS} nvptx64-nvidia-cuda nvptx64-nvidia-cuda-LTO" PARENT_SCOPE)
   list(APPEND LIBOMPTARGET_TESTED_PLUGINS "omptarget.rtl.cuda")
   set(LIBOMPTARGET_TESTED_PLUGINS "${LIBOMPTARGET_TESTED_PLUGINS}" PARENT_SCOPE)


        


More information about the Openmp-commits mailing list