Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 1 | # |
| 2 | #//===----------------------------------------------------------------------===// |
| 3 | #// |
Chandler Carruth | 57b08b0 | 2019-01-19 10:56:40 +0000 | [diff] [blame] | 4 | #// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. |
| 5 | #// See https://llvm.org/LICENSE.txt for license information. |
| 6 | #// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 7 | #// |
| 8 | #//===----------------------------------------------------------------------===// |
| 9 | # |
| 10 | |
| 11 | # The following micro-tests are small tests to perform on the library just created. |
| 12 | # There are currently five micro-tests: |
| 13 | # (1) test-touch |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 14 | # - Compile and run a small program using newly created libomp library |
| 15 | # - Fails if test-touch.c does not compile or if test-touch.c does not run after compilation |
| 16 | # - Program dependencies: gcc or g++, grep, bourne shell |
| 17 | # - Available for all Unix,Mac,Windows builds. Not available on Intel(R) MIC Architecture builds. |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 18 | # (2) test-relo |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 19 | # - Tests dynamic libraries for position-dependent code (can not have any position dependent code) |
| 20 | # - Fails if TEXTREL is in output of readelf -d libomp.so command |
| 21 | # - Program dependencies: readelf, grep, bourne shell |
| 22 | # - Available for Unix, Intel(R) MIC Architecture dynamic library builds. Not available otherwise. |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 23 | # (3) test-execstack |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 24 | # - Tests if stack is executable |
Kazuaki Ishizaki | 4c6a098 | 2020-01-07 14:03:31 +0800 | [diff] [blame] | 25 | # - Fails if stack is executable. Should only be readable and writable. Not executable. |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 26 | # - Program dependencies: perl, readelf |
| 27 | # - Available for Unix dynamic library builds. Not available otherwise. |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 28 | # (4) test-instr (Intel(R) MIC Architecutre only) |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 29 | # - Tests Intel(R) MIC Architecture libraries for valid instruction set |
| 30 | # - Fails if finds invalid instruction for Intel(R) MIC Architecture (wasn't compiled with correct flags) |
| 31 | # - Program dependencies: perl, objdump |
| 32 | # - Available for Intel(R) MIC Architecture and i386 builds. Not available otherwise. |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 33 | # (5) test-deps |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 34 | # - Tests newly created libomp for library dependencies |
| 35 | # - Fails if sees a dependence not listed in td_exp variable below |
| 36 | # - Program dependencies: perl, (unix)readelf, (mac)otool[64], (windows)link.exe |
| 37 | # - Available for Unix,Mac,Windows, Intel(R) MIC Architecture dynamic builds and Windows |
| 38 | # static builds. Not available otherwise. |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 39 | |
| 40 | # get library location |
| 41 | if(WIN32) |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 42 | get_target_property(LIBOMP_OUTPUT_DIRECTORY omp RUNTIME_OUTPUT_DIRECTORY) |
| 43 | get_target_property(LIBOMPIMP_OUTPUT_DIRECTORY ompimp ARCHIVE_OUTPUT_DIRECTORY) |
| 44 | if(NOT LIBOMPIMP_OUTPUT_DIRECTORY) |
| 45 | set(LIBOMPIMP_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) |
| 46 | endif() |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 47 | else() |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 48 | get_target_property(LIBOMP_OUTPUT_DIRECTORY omp LIBRARY_OUTPUT_DIRECTORY) |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 49 | endif() |
| 50 | if(NOT LIBOMP_OUTPUT_DIRECTORY) |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 51 | set(LIBOMP_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 52 | endif() |
| 53 | |
| 54 | # test-touch |
| 55 | find_program(LIBOMP_SHELL sh) |
| 56 | if(WIN32) |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 57 | if(LIBOMP_SHELL) |
| 58 | set(libomp_test_touch_targets test-touch-md/.success test-touch-mt/.success) |
| 59 | endif() |
| 60 | # pick test-touch compiler |
| 61 | set(libomp_test_touch_compiler ${CMAKE_C_COMPILER}) |
| 62 | # test-touch compilation flags |
| 63 | libomp_append(libomp_test_touch_cflags /nologo) |
| 64 | libomp_append(libomp_test_touch_libs ${LIBOMPIMP_OUTPUT_DIRECTORY}/${LIBOMP_IMP_LIB_FILE}) |
| 65 | if(${IA32}) |
| 66 | libomp_append(libomp_test_touch_ldflags /safeseh) |
| 67 | endif() |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 68 | else() # (Unix based systems, Intel(R) MIC Architecture, and Mac) |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 69 | if(LIBOMP_SHELL) |
| 70 | set(libomp_test_touch_targets test-touch-rt/.success) |
| 71 | endif() |
| 72 | # pick test-touch compiler |
| 73 | if(${LIBOMP_USE_STDCPPLIB}) |
| 74 | set(libomp_test_touch_compiler ${CMAKE_CXX_COMPILER}) |
| 75 | else() |
| 76 | set(libomp_test_touch_compiler ${CMAKE_C_COMPILER}) |
| 77 | endif() |
| 78 | # test-touch compilation flags |
| 79 | libomp_append(libomp_test_touch_libs "${CMAKE_THREAD_LIBS_INIT}") |
| 80 | if(${IA32}) |
| 81 | libomp_append(libomp_test_touch_cflags -m32 LIBOMP_HAVE_M32_FLAG) |
| 82 | endif() |
| 83 | libomp_append(libomp_test_touch_libs ${LIBOMP_OUTPUT_DIRECTORY}/${LIBOMP_LIB_FILE}) |
Jonathan Peyton | 01dcf36 | 2015-11-30 20:02:59 +0000 | [diff] [blame] | 84 | libomp_append(libomp_test_touch_libs "${LIBOMP_HWLOC_LIBRARY}" LIBOMP_USE_HWLOC) |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 85 | if(APPLE) |
| 86 | set(libomp_test_touch_env "DYLD_LIBRARY_PATH=.:${LIBOMP_OUTPUT_DIRECTORY}:$ENV{DYLD_LIBRARY_PATH}") |
Jonathan Peyton | 01dcf36 | 2015-11-30 20:02:59 +0000 | [diff] [blame] | 87 | libomp_append(libomp_test_touch_ldflags "-Wl,-rpath,${LIBOMP_HWLOC_LIBRARY_DIR}" LIBOMP_USE_HWLOC) |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 88 | else() |
| 89 | set(libomp_test_touch_env "LD_LIBRARY_PATH=.:${LIBOMP_OUTPUT_DIRECTORY}:$ENV{LD_LIBRARY_PATH}") |
Jonathan Peyton | 01dcf36 | 2015-11-30 20:02:59 +0000 | [diff] [blame] | 90 | libomp_append(libomp_test_touch_ldflags "-Wl,-rpath=${LIBOMP_HWLOC_LIBRARY_DIR}" LIBOMP_USE_HWLOC) |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 91 | endif() |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 92 | endif() |
| 93 | macro(libomp_test_touch_recipe test_touch_dir) |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 94 | set(libomp_test_touch_dependencies ${LIBOMP_SRC_DIR}/test-touch.c omp) |
| 95 | set(libomp_test_touch_exe ${test_touch_dir}/test-touch${CMAKE_EXECUTABLE_SUFFIX}) |
| 96 | set(libomp_test_touch_obj ${test_touch_dir}/test-touch${CMAKE_C_OUTPUT_EXTENSION}) |
| 97 | if(WIN32) |
| 98 | if(${RELEASE_BUILD} OR ${RELWITHDEBINFO_BUILD}) |
| 99 | if(${test_touch_dir} MATCHES "test-touch-mt") |
| 100 | libomp_append(libomp_test_touch_cflags /MT) |
| 101 | else() |
| 102 | libomp_append(libomp_test_touch_cflags /MD) |
| 103 | endif() |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 104 | else() |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 105 | if(${test_touch_dir} MATCHES "test-touch-mt") |
| 106 | libomp_append(libomp_test_touch_cflags /MTd) |
| 107 | else() |
| 108 | libomp_append(libomp_test_touch_cflags /MDd) |
| 109 | endif() |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 110 | endif() |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 111 | set(libomp_test_touch_out_flags -Fe${libomp_test_touch_exe} -Fo${libomp_test_touch_obj}) |
| 112 | list(APPEND libomp_test_touch_dependencies ompimp) |
| 113 | else() |
| 114 | set(libomp_test_touch_out_flags -o ${libomp_test_touch_exe}) |
| 115 | endif() |
| 116 | add_custom_command( |
| 117 | OUTPUT ${test_touch_dir}/.success ${libomp_test_touch_exe} ${libomp_test_touch_obj} |
| 118 | COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/${test_touch_dir} |
| 119 | COMMAND ${CMAKE_COMMAND} -E remove -f ${test_touch_dir}/* |
| 120 | COMMAND ${libomp_test_touch_compiler} ${libomp_test_touch_out_flags} ${libomp_test_touch_cflags} |
| 121 | ${LIBOMP_SRC_DIR}/test-touch.c ${libomp_test_touch_ldflags} ${libomp_test_touch_libs} |
| 122 | COMMAND ${LIBOMP_SHELL} -c \"${libomp_test_touch_env} ${libomp_test_touch_exe}\" |
| 123 | COMMAND ${CMAKE_COMMAND} -E touch ${test_touch_dir}/.success |
| 124 | DEPENDS ${libomp_test_touch_dependencies} |
| 125 | ) |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 126 | endmacro() |
| 127 | libomp_append(libomp_test_touch_env "KMP_VERSION=1") |
| 128 | add_custom_target(libomp-test-touch DEPENDS ${libomp_test_touch_targets}) |
| 129 | if(WIN32) |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 130 | libomp_test_touch_recipe(test-touch-mt) |
| 131 | libomp_test_touch_recipe(test-touch-md) |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 132 | else() |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 133 | libomp_test_touch_recipe(test-touch-rt) |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 134 | endif() |
| 135 | |
| 136 | # test-relo |
| 137 | add_custom_target(libomp-test-relo DEPENDS test-relo/.success) |
| 138 | add_custom_command( |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 139 | OUTPUT test-relo/.success test-relo/readelf.log |
| 140 | COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/test-relo |
| 141 | COMMAND readelf -d ${LIBOMP_OUTPUT_DIRECTORY}/${LIBOMP_LIB_FILE} > test-relo/readelf.log |
Hans Wennborg | fd4dfdc | 2015-07-24 21:24:48 +0000 | [diff] [blame] | 142 | COMMAND grep -e TEXTREL test-relo/readelf.log \; test $$? -eq 1 |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 143 | COMMAND ${CMAKE_COMMAND} -E touch test-relo/.success |
| 144 | DEPENDS omp |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 145 | ) |
| 146 | |
| 147 | # test-execstack |
| 148 | add_custom_target(libomp-test-execstack DEPENDS test-execstack/.success) |
| 149 | add_custom_command( |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 150 | OUTPUT test-execstack/.success |
| 151 | COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/test-execstack |
Jonathan Peyton | 4c91ad1 | 2016-01-26 19:44:31 +0000 | [diff] [blame] | 152 | COMMAND ${PERL_EXECUTABLE} ${LIBOMP_TOOLS_DIR}/check-execstack.pl |
| 153 | --arch=${LIBOMP_PERL_SCRIPT_ARCH} ${LIBOMP_OUTPUT_DIRECTORY}/${LIBOMP_LIB_FILE} |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 154 | COMMAND ${CMAKE_COMMAND} -E touch test-execstack/.success |
| 155 | DEPENDS omp |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 156 | ) |
| 157 | |
| 158 | # test-instr |
| 159 | add_custom_target(libomp-test-instr DEPENDS test-instr/.success) |
| 160 | add_custom_command( |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 161 | OUTPUT test-instr/.success |
| 162 | COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/test-instr |
| 163 | COMMAND ${PERL_EXECUTABLE} ${LIBOMP_TOOLS_DIR}/check-instruction-set.pl --os=${LIBOMP_PERL_SCRIPT_OS} |
Jonathan Peyton | 4c91ad1 | 2016-01-26 19:44:31 +0000 | [diff] [blame] | 164 | --arch=${LIBOMP_PERL_SCRIPT_ARCH} --show --mic-arch=${LIBOMP_MIC_ARCH} ${LIBOMP_OUTPUT_DIRECTORY}/${LIBOMP_LIB_FILE} |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 165 | COMMAND ${CMAKE_COMMAND} -E touch test-instr/.success |
| 166 | DEPENDS omp ${LIBOMP_TOOLS_DIR}/check-instruction-set.pl |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 167 | ) |
| 168 | |
| 169 | # test-deps |
| 170 | add_custom_target(libomp-test-deps DEPENDS test-deps/.success) |
| 171 | set(libomp_expected_library_deps) |
| 172 | if(CMAKE_SYSTEM_NAME MATCHES "FreeBSD") |
Dimitry Andric | 956168c | 2019-04-03 18:11:36 +0000 | [diff] [blame] | 173 | set(libomp_expected_library_deps libc.so.7 libthr.so.3 libm.so.5) |
Jonathan Peyton | 01dcf36 | 2015-11-30 20:02:59 +0000 | [diff] [blame] | 174 | libomp_append(libomp_expected_library_deps libhwloc.so.5 LIBOMP_USE_HWLOC) |
Joerg Sonnenberger | f16f649 | 2015-09-21 19:40:59 +0000 | [diff] [blame] | 175 | elseif(CMAKE_SYSTEM_NAME MATCHES "NetBSD") |
| 176 | set(libomp_expected_library_deps libc.so.12 libpthread.so.1 libm.so.0) |
Jonathan Peyton | 01dcf36 | 2015-11-30 20:02:59 +0000 | [diff] [blame] | 177 | libomp_append(libomp_expected_library_deps libhwloc.so.5 LIBOMP_USE_HWLOC) |
Kamil Rytarowski | a56ac94 | 2018-12-09 16:40:33 +0000 | [diff] [blame] | 178 | elseif(CMAKE_SYSTEM_NAME MATCHES "DragonFly") |
| 179 | set(libomp_expected_library_deps libc.so.8 libpthread.so.0 libm.so.4) |
| 180 | libomp_append(libomp_expected_library_deps libhwloc.so.5 LIBOMP_USE_HWLOC) |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 181 | elseif(APPLE) |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 182 | set(libomp_expected_library_deps /usr/lib/libSystem.B.dylib) |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 183 | elseif(WIN32) |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 184 | set(libomp_expected_library_deps kernel32.dll) |
Jonathan Peyton | 69e596a | 2015-10-29 20:56:24 +0000 | [diff] [blame] | 185 | libomp_append(libomp_expected_library_deps psapi.dll LIBOMP_OMPT_SUPPORT) |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 186 | else() |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 187 | if(${MIC}) |
| 188 | set(libomp_expected_library_deps libc.so.6 libpthread.so.0 libdl.so.2) |
| 189 | if("${LIBOMP_MIC_ARCH}" STREQUAL "knf") |
| 190 | libomp_append(libomp_expected_library_deps ld-linux-l1om.so.2) |
| 191 | libomp_append(libomp_expected_library_deps libgcc_s.so.1) |
| 192 | elseif("${LIBOMP_MIC_ARCH}" STREQUAL "knc") |
| 193 | libomp_append(libomp_expected_library_deps ld-linux-k1om.so.2) |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 194 | endif() |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 195 | else() |
| 196 | set(libomp_expected_library_deps libdl.so.2 libgcc_s.so.1) |
| 197 | if(${IA32}) |
| 198 | libomp_append(libomp_expected_library_deps libc.so.6) |
| 199 | libomp_append(libomp_expected_library_deps ld-linux.so.2) |
| 200 | elseif(${INTEL64}) |
| 201 | libomp_append(libomp_expected_library_deps libc.so.6) |
| 202 | libomp_append(libomp_expected_library_deps ld-linux-x86-64.so.2) |
| 203 | elseif(${ARM}) |
| 204 | libomp_append(libomp_expected_library_deps libc.so.6) |
| 205 | libomp_append(libomp_expected_library_deps libffi.so.6) |
| 206 | libomp_append(libomp_expected_library_deps libffi.so.5) |
| 207 | libomp_append(libomp_expected_library_deps ld-linux-armhf.so.3) |
| 208 | elseif(${PPC64}) |
| 209 | libomp_append(libomp_expected_library_deps libc.so.6) |
| 210 | libomp_append(libomp_expected_library_deps ld64.so.1) |
Sylvestre Ledru | cd9d374 | 2016-12-08 09:22:24 +0000 | [diff] [blame] | 211 | elseif(${MIPS} OR ${MIPS64}) |
| 212 | libomp_append(libomp_expected_library_deps libc.so.6) |
| 213 | libomp_append(libomp_expected_library_deps ld.so.1) |
Jonas Hahnfeld | 2488ae9 | 2019-07-25 14:36:20 +0000 | [diff] [blame] | 214 | elseif(${RISCV64}) |
| 215 | libomp_append(libomp_expected_library_deps libc.so.6) |
| 216 | libomp_append(libomp_expected_library_deps ld.so.1) |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 217 | endif() |
| 218 | libomp_append(libomp_expected_library_deps libpthread.so.0 IF_FALSE STUBS_LIBRARY) |
Jonathan Peyton | 01dcf36 | 2015-11-30 20:02:59 +0000 | [diff] [blame] | 219 | libomp_append(libomp_expected_library_deps libhwloc.so.5 LIBOMP_USE_HWLOC) |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 220 | endif() |
| 221 | libomp_append(libomp_expected_library_deps libstdc++.so.6 LIBOMP_USE_STDCPPLIB) |
Jonathan Peyton | 4b1aad3 | 2015-12-17 16:15:39 +0000 | [diff] [blame] | 222 | libomp_append(libomp_expected_library_deps libm.so.6 LIBOMP_STATS) |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 223 | endif() |
| 224 | # Perl script expects comma separated list |
| 225 | string(REPLACE ";" "," libomp_expected_library_deps "${libomp_expected_library_deps}") |
| 226 | add_custom_command( |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 227 | OUTPUT test-deps/.success |
| 228 | COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/test-deps |
| 229 | COMMAND ${PERL_EXECUTABLE} ${LIBOMP_TOOLS_DIR}/check-depends.pl --os=${LIBOMP_PERL_SCRIPT_OS} |
Jonathan Peyton | 4c91ad1 | 2016-01-26 19:44:31 +0000 | [diff] [blame] | 230 | --arch=${LIBOMP_PERL_SCRIPT_ARCH} --expected="${libomp_expected_library_deps}" ${LIBOMP_OUTPUT_DIRECTORY}/${LIBOMP_LIB_FILE} |
Jonathan Peyton | 5b4acbd | 2015-07-15 16:57:19 +0000 | [diff] [blame] | 231 | COMMAND ${CMAKE_COMMAND} -E touch test-deps/.success |
| 232 | DEPENDS omp ${LIBOMP_TOOLS_DIR}/check-depends.pl |
Jonathan Peyton | 2e01335 | 2015-07-15 16:05:30 +0000 | [diff] [blame] | 233 | ) |