| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- if (CMAKE_BUILD_TYPE STREQUAL RelWithDebInfo)
- set(TEST_BUILD_TYPE --test)
- elseif (CMAKE_BUILD_TYPE STREQUAL Debug)
- set(TEST_BUILD_TYPE --debug)
- endif ()
- if (NO_ICU)
- set(TEST_ICU --not-tag exclude_noicu)
- elseif (NOT EMBED_ICU)
- set(TEST_ICU --not-tag exclude_icu62AndAboveTestFailures)
- endif()
- if (BuildJIT)
- set(VARIANT --jit)
- else ()
- set(TEST_VARIANT --variants=disable_jit)
- set(VARIANT --noJit)
- endif()
- if (CMAKE_BUILD_TYPE STREQUAL Release)
- set(TEST_SUITE echo "Running Hello World test" && ${CMAKE_BINARY_DIR}/ch ${CMAKE_CURRENT_SOURCE_DIR}/Basics/hello.js)
- else()
- set(BYTE_CODE_CHECK ${CMAKE_CURRENT_SOURCE_DIR}/../tools/regenByteCode.py ${VARIANT} --verify --binary=${CMAKE_BINARY_DIR}/ch)
- set(TEST_SUITE ${CMAKE_CURRENT_SOURCE_DIR}/runtests.py ${TEST_BUILD_TYPE} ${TEST_ICU} ${TEST_VARIANT} --binary=${CMAKE_BINARY_DIR}/ch)
- endif()
- if (NOT NO_ICU AND NOT EMBED_ICU)
- set(NATIVE_TEST cd ${CMAKE_CURRENT_SOURCE_DIR}/native-tests && ./test_native.sh ${CMAKE_BINARY_DIR}/ch ${CMAKE_BUILD_TYPE} ${CMAKE_C_COMPILER} ${CMAKE_CXX_COMPILER} ${CMAKE_SOURCE_DIR})
- else()
- set(NATIVE_TEST echo "Native tests NOT RUN, they require ICU to be installed not embedded. NO_ICU = ${NO_ICU} EMBED_ICU = ${EMBED_ICU}")
- endif()
- add_custom_target(check
- COMMAND ${BYTE_CODE_CHECK}
- COMMAND ${TEST_SUITE}
- COMMAND ${NATIVE_TEST}
- WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
- USES_TERMINAL
- DEPENDS ch
- )
- if (NOT STATIC_LIBRARY)
- add_dependencies(check ChakraCore)
- endif()
|