blob: be4c743665b3e978e57ff19288941ef7bf2c4dcd [file] [log] [blame]
##===----------------------------------------------------------------------===##
#
# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
# See https://llvm.org/LICENSE.txt for license information.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
#
##===----------------------------------------------------------------------===##
#
# Aggregation of parts which can be used by OpenMP tools
#
##===----------------------------------------------------------------------===##
# NOTE: Don't try to build `OMPT` using `add_llvm_library` because we
# don't want to export `OMPT` while `add_llvm_library` requires that.
add_library(OMPT OBJECT
OmptCallback.cpp)
# This is required when using LLVM libraries.
llvm_update_compile_flags(OMPT)
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(OMPT
PUBLIC
${llvm_libs}
)
# Define the TARGET_NAME and DEBUG_PREFIX.
target_compile_definitions(OMPT PRIVATE
TARGET_NAME="OMPT"
DEBUG_PREFIX="OMPT"
)
target_include_directories(OMPT
INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}
PRIVATE ${LIBOMPTARGET_INCLUDE_DIR}
)
set_target_properties(OMPT PROPERTIES
POSITION_INDEPENDENT_CODE ON
CXX_VISIBILITY_PRESET protected)