annotate polly/test/CMakeLists.txt @ 252:1f2b6ac9f198 llvm-original

LLVM16-1
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Fri, 18 Aug 2023 09:04:13 +0900
parents c4bab56944e8
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
150
anatofuz
parents:
diff changeset
1 set(LLVM_SHLIBEXT "${CMAKE_SHARED_MODULE_SUFFIX}")
anatofuz
parents:
diff changeset
2
anatofuz
parents:
diff changeset
3 add_custom_target(check-polly)
anatofuz
parents:
diff changeset
4 set_target_properties(check-polly PROPERTIES FOLDER "Polly")
anatofuz
parents:
diff changeset
5
anatofuz
parents:
diff changeset
6 if(NOT LLVM_MAIN_SRC_DIR)
anatofuz
parents:
diff changeset
7 find_program(LLVM_OPT NAMES opt HINTS ${LLVM_TOOLS_BINARY_DIR})
anatofuz
parents:
diff changeset
8 find_program(LLVM_FILECHECK NAMES FileCheck HINTS ${LLVM_TOOLS_BINARY_DIR})
anatofuz
parents:
diff changeset
9 find_program(LLVM_NOT NAMES not HINTS ${LLVM_TOOLS_BINARY_DIR})
anatofuz
parents:
diff changeset
10 if (NOT LLVM_OPT)
anatofuz
parents:
diff changeset
11 message(WARNING "LLVM's opt program could not be found. Please set LLVM_OPT.")
anatofuz
parents:
diff changeset
12 endif()
anatofuz
parents:
diff changeset
13 if (NOT LLVM_FILECHECK)
anatofuz
parents:
diff changeset
14 message(WARNING "LLVM's FileCheck program could not be found. "
anatofuz
parents:
diff changeset
15 "Please set LLVM_FILECHECK. Please set LLVM_FILECHECK.")
anatofuz
parents:
diff changeset
16 endif()
anatofuz
parents:
diff changeset
17 if (NOT LLVM_NOT)
anatofuz
parents:
diff changeset
18 message(WARNING "LLVM's not program could not be found. Please set LLVM_NOT.")
anatofuz
parents:
diff changeset
19 endif()
anatofuz
parents:
diff changeset
20 get_filename_component(EXTRA_PATHS ${LLVM_OPT} DIRECTORY)
anatofuz
parents:
diff changeset
21 list(APPEND POLLY_TEST_EXTRA_PATHS "${EXTRA_PATHS}")
anatofuz
parents:
diff changeset
22 get_filename_component(EXTRA_PATHS ${LLVM_FILECHECK} DIRECTORY)
anatofuz
parents:
diff changeset
23 list(APPEND POLLY_TEST_EXTRA_PATHS "${EXTRA_PATHS}")
anatofuz
parents:
diff changeset
24 get_filename_component(EXTRA_PATHS ${LLVM_NOT} DIRECTORY)
anatofuz
parents:
diff changeset
25 list(APPEND POLLY_TEST_EXTRA_PATHS "${EXTRA_PATHS}")
anatofuz
parents:
diff changeset
26 list(REMOVE_DUPLICATES POLLY_TEST_EXTRA_PATHS)
anatofuz
parents:
diff changeset
27 message(STATUS "Extra paths: ${POLLY_TEST_EXTRA_PATHS}")
anatofuz
parents:
diff changeset
28 if ("${POLLY_TEST_EXTRA_PATHS}" STREQUAL "${LLVM_TOOLS_BINARY_DIR}")
anatofuz
parents:
diff changeset
29 set(POLLY_TEST_EXTRA_PATHS "")
anatofuz
parents:
diff changeset
30 endif()
anatofuz
parents:
diff changeset
31 set(POLLY_TEST_DEPS LLVMPolly)
anatofuz
parents:
diff changeset
32 else ()
anatofuz
parents:
diff changeset
33 set(LLVM_OPT "${LLVM_TOOLS_BINARY_DIR}/opt")
anatofuz
parents:
diff changeset
34 set(LLVM_FILECHECK "${LLVM_TOOLS_BINARY_DIR}/FileCheck")
anatofuz
parents:
diff changeset
35 set(LLVM_NOT "${LLVM_TOOLS_BINARY_DIR}/not")
anatofuz
parents:
diff changeset
36 set(POLLY_TEST_EXTRA_PATHS "")
236
c4bab56944e8 LLVM 16
kono
parents: 150
diff changeset
37 set(POLLY_TEST_DEPS llvm-config opt LLVMPolly FileCheck not count)
150
anatofuz
parents:
diff changeset
38 endif()
anatofuz
parents:
diff changeset
39
anatofuz
parents:
diff changeset
40 if (POLLY_BUNDLED_ISL)
anatofuz
parents:
diff changeset
41 list(APPEND POLLY_TEST_DEPS polly-isl-test)
anatofuz
parents:
diff changeset
42 endif()
anatofuz
parents:
diff changeset
43 if (POLLY_GTEST_AVAIL)
anatofuz
parents:
diff changeset
44 list(APPEND POLLY_TEST_DEPS PollyUnitTests)
anatofuz
parents:
diff changeset
45 endif ()
anatofuz
parents:
diff changeset
46
anatofuz
parents:
diff changeset
47 set(LLVM_BINARY_DIR "${LLVM_BINARY_DIR}")
anatofuz
parents:
diff changeset
48 set(LLVM_TOOLS_DIR "${LLVM_TOOLS_BINARY_DIR}")
236
c4bab56944e8 LLVM 16
kono
parents: 150
diff changeset
49 set(LLVM_LIBS_DIR "${LLVM_LIBRARY_DIR}")
150
anatofuz
parents:
diff changeset
50 if (CMAKE_LIBRARY_OUTPUT_DIRECTORY)
anatofuz
parents:
diff changeset
51 set(POLLY_LIB_DIR ${CMAKE_LIBRARY_OUTPUT_DIRECTORY})
anatofuz
parents:
diff changeset
52 else()
anatofuz
parents:
diff changeset
53 set(POLLY_LIB_DIR "${POLLY_BINARY_DIR}/lib")
anatofuz
parents:
diff changeset
54 endif()
anatofuz
parents:
diff changeset
55
anatofuz
parents:
diff changeset
56 configure_lit_site_cfg(
anatofuz
parents:
diff changeset
57 ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in
anatofuz
parents:
diff changeset
58 ${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg)
anatofuz
parents:
diff changeset
59
anatofuz
parents:
diff changeset
60 # Run regression and unit tests
anatofuz
parents:
diff changeset
61 add_lit_testsuite(check-polly-tests "Running polly regression tests"
anatofuz
parents:
diff changeset
62 ${CMAKE_CURRENT_BINARY_DIR}
anatofuz
parents:
diff changeset
63 PARAMS polly_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
anatofuz
parents:
diff changeset
64 polly_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
anatofuz
parents:
diff changeset
65 DEPENDS ${POLLY_TEST_DEPS}
anatofuz
parents:
diff changeset
66 )
anatofuz
parents:
diff changeset
67 set_target_properties(check-polly-tests PROPERTIES FOLDER "Polly")
anatofuz
parents:
diff changeset
68 add_dependencies(check-polly check-polly-tests)
anatofuz
parents:
diff changeset
69
anatofuz
parents:
diff changeset
70 configure_lit_site_cfg(
anatofuz
parents:
diff changeset
71 ${CMAKE_CURRENT_SOURCE_DIR}/Unit/lit.site.cfg.in
anatofuz
parents:
diff changeset
72 ${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
anatofuz
parents:
diff changeset
73 )
anatofuz
parents:
diff changeset
74
anatofuz
parents:
diff changeset
75 if (POLLY_GTEST_AVAIL)
anatofuz
parents:
diff changeset
76 # Run only unit tests
anatofuz
parents:
diff changeset
77 add_lit_testsuite(check-polly-unittests "Running polly unit tests only"
anatofuz
parents:
diff changeset
78 ${CMAKE_CURRENT_BINARY_DIR}/Unit
anatofuz
parents:
diff changeset
79 PARAMS polly_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
236
c4bab56944e8 LLVM 16
kono
parents: 150
diff changeset
80 EXCLUDE_FROM_CHECK_ALL
150
anatofuz
parents:
diff changeset
81 DEPENDS PollyUnitTests
anatofuz
parents:
diff changeset
82 )
anatofuz
parents:
diff changeset
83 set_target_properties(check-polly-unittests PROPERTIES FOLDER "Polly")
anatofuz
parents:
diff changeset
84 endif ()
anatofuz
parents:
diff changeset
85
anatofuz
parents:
diff changeset
86 configure_file(
anatofuz
parents:
diff changeset
87 ${CMAKE_CURRENT_SOURCE_DIR}/UnitIsl/lit.site.cfg.in
anatofuz
parents:
diff changeset
88 ${CMAKE_CURRENT_BINARY_DIR}/UnitIsl/lit.site.cfg)
anatofuz
parents:
diff changeset
89
anatofuz
parents:
diff changeset
90 if (POLLY_BUNDLED_ISL)
anatofuz
parents:
diff changeset
91 add_lit_testsuite(check-polly-isl "Running isl unit tests only"
anatofuz
parents:
diff changeset
92 ${CMAKE_CURRENT_BINARY_DIR}/UnitIsl
anatofuz
parents:
diff changeset
93 PARAMS polly_site_config=${CMAKE_CURRENT_BINARY_DIR}/UnitIsl/lit.site.cfg
236
c4bab56944e8 LLVM 16
kono
parents: 150
diff changeset
94 EXCLUDE_FROM_CHECK_ALL
150
anatofuz
parents:
diff changeset
95 DEPENDS polly-isl-test
anatofuz
parents:
diff changeset
96 )
anatofuz
parents:
diff changeset
97 set_target_properties(check-polly-isl PROPERTIES FOLDER "Polly")
anatofuz
parents:
diff changeset
98 endif (POLLY_BUNDLED_ISL)
anatofuz
parents:
diff changeset
99
anatofuz
parents:
diff changeset
100 # Run polly-check-format as part of polly-check only if we are compiling with
anatofuz
parents:
diff changeset
101 # clang, so clang-format is available.
anatofuz
parents:
diff changeset
102 # if (TARGET clang-format) would be preferable, but this target is only added
anatofuz
parents:
diff changeset
103 # after Polly, i.e. there is no such target yet at this point. The CMake cache
anatofuz
parents:
diff changeset
104 # entry LLVM_TOOL_CLANG_BUILD will only be defined after clang has been
anatofuz
parents:
diff changeset
105 # configured at least once, i.e. format will be checked only after a rerun of
anatofuz
parents:
diff changeset
106 # CMake's configure.
anatofuz
parents:
diff changeset
107 if (LLVM_TOOL_CLANG_BUILD)
anatofuz
parents:
diff changeset
108 add_dependencies(check-polly polly-check-format)
anatofuz
parents:
diff changeset
109 endif ()
anatofuz
parents:
diff changeset
110
anatofuz
parents:
diff changeset
111 configure_file(
anatofuz
parents:
diff changeset
112 ${CMAKE_CURRENT_SOURCE_DIR}/update_check.py
anatofuz
parents:
diff changeset
113 ${CMAKE_CURRENT_BINARY_DIR}/update_check.py)
anatofuz
parents:
diff changeset
114
anatofuz
parents:
diff changeset
115 # Add a legacy target spelling: polly-test
anatofuz
parents:
diff changeset
116 add_custom_target(polly-test)
anatofuz
parents:
diff changeset
117 set_target_properties(polly-test PROPERTIES FOLDER "Polly")
anatofuz
parents:
diff changeset
118 add_dependencies(polly-test check-polly)