[Openmp-commits] [openmp] [OpenMP][NFC] Flatten plugin-nextgen/common folder sturcture (PR #73725)
Johannes Doerfert via Openmp-commits
openmp-commits at lists.llvm.org
Wed Nov 29 07:56:45 PST 2023
================
@@ -10,5 +10,94 @@
#
##===----------------------------------------------------------------------===##
+# NOTE: Don't try to build `PluginInterface` using `add_llvm_library` because we
+# don't want to export `PluginInterface` while `add_llvm_library` requires that.
+add_library(PluginCommon OBJECT
+ src/PluginInterface.cpp
+ src/GlobalHandler.cpp
+ src/JIT.cpp
+ src/RPC.cpp
+ src/Utils/ELF.cpp
+)
+
+# Only enable JIT for those targets that LLVM can support.
+string(TOUPPER "${LLVM_TARGETS_TO_BUILD}" TargetsSupported)
+foreach(Target ${TargetsSupported})
+ target_compile_definitions(PluginCommon PRIVATE "LIBOMPTARGET_JIT_${Target}")
+endforeach()
+
+# This is required when using LLVM libraries.
+llvm_update_compile_flags(PluginCommon)
+
+if (LLVM_LINK_LLVM_DYLIB)
+ set(llvm_libs LLVM)
+else()
+ llvm_map_components_to_libnames(llvm_libs
+ ${LLVM_TARGETS_TO_BUILD}
+ AggressiveInstCombine
+ Analysis
+ BinaryFormat
+ BitReader
+ BitWriter
+ CodeGen
+ Core
+ Extensions
+ InstCombine
+ Instrumentation
+ IPO
+ IRReader
+ Linker
+ MC
+ Object
+ Passes
+ Remarks
+ ScalarOpts
+ Support
+ Target
+ TargetParser
+ TransformUtils
+ Vectorize
+ )
+endif()
+
+target_link_libraries(PluginCommon
+ PUBLIC
+ ${llvm_libs}
+)
+
+# Include the RPC server from the `libc` project if availible.
+if(TARGET llvmlibc_rpc_server AND ${LIBOMPTARGET_GPU_LIBC_SUPPORT})
+ target_link_libraries(PluginCommon PRIVATE llvmlibc_rpc_server)
+ target_compile_definitions(PluginCommon PRIVATE LIBOMPTARGET_RPC_SUPPORT)
+elseif(${LIBOMPTARGET_GPU_LIBC_SUPPORT})
+ find_library(llvmlibc_rpc_server NAMES llvmlibc_rpc_server
+ PATHS ${LIBOMPTARGET_LLVM_LIBRARY_DIR} NO_DEFAULT_PATH)
+ if(llvmlibc_rpc_server)
+ target_link_libraries(PluginCommon PRIVATE llvmlibc_rpc_server)
+ target_compile_definitions(PluginCommon PRIVATE LIBOMPTARGET_RPC_SUPPORT)
+ endif()
+endif()
+
+if ((OMPT_TARGET_DEFAULT) AND (LIBOMPTARGET_OMPT_SUPPORT))
----------------
jdoerfert wrote:
I just copied it. Feel free to fix it NFC after.
https://github.com/llvm/llvm-project/pull/73725
More information about the Openmp-commits
mailing list