1# This file allows users to call find_package(Polly) and pick up our targets.
2
3# Compute the installation prefix from this LLVMConfig.cmake file location.
4get_filename_component(POLLY_INSTALL_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
5get_filename_component(POLLY_INSTALL_PREFIX "${POLLY_INSTALL_PREFIX}" PATH)
6get_filename_component(POLLY_INSTALL_PREFIX "${POLLY_INSTALL_PREFIX}" PATH)
7get_filename_component(POLLY_INSTALL_PREFIX "${POLLY_INSTALL_PREFIX}" PATH)
8
9set(LLVM_VERSION 19.0.1)
10find_package(LLVM ${LLVM_VERSION} EXACT REQUIRED CONFIG
11             HINTS "${POLLY_INSTALL_PREFIX}/lib/cmake/llvm")
12
13set(Polly_CMAKE_DIR ${CMAKE_CURRENT_LIST_DIR})
14set(Polly_BUNDLED_ISL ON)
15
16set(Polly_DEFINITIONS ${LLVM_DEFINITIONS})
17set(Polly_INCLUDE_DIRS ${POLLY_INSTALL_PREFIX}/include;${POLLY_INSTALL_PREFIX}/include/polly ${LLVM_INCLUDE_DIRS})
18set(Polly_LIBRARY_DIRS ${POLLY_INSTALL_PREFIX}/lib)
19set(Polly_EXPORTED_TARGETS Polly;PollyISL;LLVMPolly)
20set(Polly_LIBRARIES ${LLVM_LIBRARIES} ${Polly_EXPORTED_TARGETS})
21
22# Imported Targets:
23
24if (NOT TARGET PollyISL)
25  add_library(PollyISL STATIC IMPORTED)
26endif()
27
28if (NOT TARGET Polly)
29  add_library(Polly STATIC IMPORTED)
30  set_property(TARGET Polly PROPERTY INTERFACE_LINK_LIBRARIES PollyISL)
31endif()
32
33if (NOT TARGET LLVMPolly)
34  add_library(LLVMPolly MODULE IMPORTED)
35  set_property(TARGET LLVMPolly PROPERTY INTERFACE_LINK_LIBRARIES Polly)
36endif()
37
38# Exported locations:
39file(GLOB CONFIG_FILES "${Polly_CMAKE_DIR}/PollyExports-*.cmake")
40foreach(f ${CONFIG_FILES})
41  include(${f})
42endforeach()
43