137 lines
4.3 KiB
CMake
137 lines
4.3 KiB
CMake
|
cmake_minimum_required (VERSION 3.6)
|
||
|
cmake_policy(SET CMP0077 NEW)
|
||
|
# The tests are assuming that MATRIX_CHECK is enabled when building
|
||
|
# CMSIS-DSP.
|
||
|
set(MATRIXCHECK ON)
|
||
|
set(FASTMATHCOMPUTATIONS OFF)
|
||
|
option(DUMPPATTERN "Dump test patterns when test is failing" ON)
|
||
|
|
||
|
option(CUSTOMIZE_TESTS "Enable customizations of tests" ON)
|
||
|
option(BASICMATH_TESTS "Enable Basic Math testing" ON)
|
||
|
option(COMPLEXMATH_TESTS "Enable Complex Math testing" ON)
|
||
|
option(CONTROLLER_TESTS "Enable Controller testing" ON)
|
||
|
option(FASTMATH_TESTS "Enable Fast Math testing" ON)
|
||
|
option(INTRINSICS_TESTS "Enable Intrinsics testing" ON)
|
||
|
option(FILTERING_TESTS "Enable Filtering testing" ON)
|
||
|
option(MATRIX_TESTS "Enable Matrix testing" ON)
|
||
|
option(STATISTICS_TESTS "Enable Statistics testing" ON)
|
||
|
option(SUPPORT_TESTS "Enable Support testing" ON)
|
||
|
option(TRANSFORM_TESTS "Enable Transform testing" ON)
|
||
|
|
||
|
|
||
|
project(DSP_Lib_TestSuite)
|
||
|
|
||
|
# Needed to find the config modules
|
||
|
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/..)
|
||
|
|
||
|
|
||
|
set(ROOT ${CMAKE_CURRENT_SOURCE_DIR}/../../..)
|
||
|
|
||
|
|
||
|
file(GLOB MAIN "Common/src/*.c")
|
||
|
file(GLOB BASICMATH_TESTS_SRC "Common/src/basic_math_tests/*.c")
|
||
|
file(GLOB COMPLEXMATH_TESTS_SRC "Common/src/complex_math_tests/*.c")
|
||
|
file(GLOB CONTROLLER_TESTS_SRC "Common/src/controller_tests/*.c")
|
||
|
file(GLOB FASTMATH_TESTS_SRC "Common/src/fast_math_tests/*.c")
|
||
|
file(GLOB FILTERING_TESTS_SRC "Common/src/filtering_tests/*.c")
|
||
|
file(GLOB INTRINSINCS_TESTS_SRC "Common/src/intrinsics_tests/*.c")
|
||
|
file(GLOB MATRIX_TESTS_SRC "Common/src/matrix_tests/*.c")
|
||
|
file(GLOB STATISTICS_TESTS_SRC "Common/src/statistics_tests/*.c")
|
||
|
file(GLOB SUPPORT_TESTS_SRC "Common/src/support_tests/*.c")
|
||
|
file(GLOB TRANSFORM_TESTS_SRC "Common/src/transform_tests/*.c")
|
||
|
file(GLOB JTEST_MAIN "Common/JTest/src/*.c")
|
||
|
|
||
|
set(TESTSRC ${MAIN}
|
||
|
${BASICMATH_TESTS_SRC}
|
||
|
${COMPLEXMATH_TESTS_SRC}
|
||
|
${CONTROLLER_TESTS_SRC}
|
||
|
${FASTMATH_TESTS_SRC}
|
||
|
${FILTERING_TESTS_SRC}
|
||
|
${INTRINSINCS_TESTS_SRC}
|
||
|
${MATRIX_TESTS_SRC}
|
||
|
${STATISTICS_TESTS_SRC}
|
||
|
${SUPPORT_TESTS_SRC}
|
||
|
${TRANSFORM_TESTS_SRC}
|
||
|
${JTEST_MAIN}
|
||
|
)
|
||
|
|
||
|
set(JINCS
|
||
|
Common/JTest/inc
|
||
|
Common/JTest/inc/arr_desc
|
||
|
Common/inc/basic_math_tests
|
||
|
Common/inc/complex_math_tests
|
||
|
Common/inc/controller_tests
|
||
|
Common/inc/fast_math_tests
|
||
|
Common/inc/filtering_tests
|
||
|
Common/inc/intrinsics_tests
|
||
|
Common/inc/matrix_tests
|
||
|
Common/inc/statistics_tests
|
||
|
Common/inc/support_tests
|
||
|
Common/inc/transform_tests
|
||
|
)
|
||
|
|
||
|
add_subdirectory(../Source bin_dsp)
|
||
|
add_subdirectory(RefLibs bin_ref)
|
||
|
|
||
|
|
||
|
add_executable(DSP_Lib_TestSuite)
|
||
|
|
||
|
if (CUSTOMIZE_TESTS)
|
||
|
target_compile_definitions(DSP_Lib_TestSuite PRIVATE CUSTOMIZE_TESTS)
|
||
|
endif()
|
||
|
|
||
|
if (BASICMATH_TESTS)
|
||
|
target_compile_definitions(DSP_Lib_TestSuite PRIVATE ENABLE_BASICMATH_TESTS)
|
||
|
endif()
|
||
|
if (COMPLEXMATH_TESTS)
|
||
|
target_compile_definitions(DSP_Lib_TestSuite PRIVATE ENABLE_COMPLEXMATH_TESTS)
|
||
|
endif()
|
||
|
if (CONTROLLER_TESTS)
|
||
|
target_compile_definitions(DSP_Lib_TestSuite PRIVATE ENABLE_CONTROLLER_TESTS)
|
||
|
endif()
|
||
|
if (FASTMATH_TESTS)
|
||
|
target_compile_definitions(DSP_Lib_TestSuite PRIVATE ENABLE_FASTMATH_TESTS)
|
||
|
endif()
|
||
|
if (FILTERING_TESTS)
|
||
|
target_compile_definitions(DSP_Lib_TestSuite PRIVATE ENABLE_FILTERING_TESTS)
|
||
|
endif()
|
||
|
if (INTRINSICS_TESTS)
|
||
|
target_compile_definitions(DSP_Lib_TestSuite PRIVATE ENABLE_INTRINSICS_TESTS)
|
||
|
endif()
|
||
|
if (MATRIX_TESTS)
|
||
|
target_compile_definitions(DSP_Lib_TestSuite PRIVATE ENABLE_MATRIX_TESTS)
|
||
|
endif()
|
||
|
if (STATISTICS_TESTS)
|
||
|
target_compile_definitions(DSP_Lib_TestSuite PRIVATE ENABLE_STATISTICS_TESTS)
|
||
|
endif()
|
||
|
if (SUPPORT_TESTS)
|
||
|
target_compile_definitions(DSP_Lib_TestSuite PRIVATE ENABLE_SUPPORT_TESTS)
|
||
|
endif()
|
||
|
if (TRANSFORM_TESTS)
|
||
|
target_compile_definitions(DSP_Lib_TestSuite PRIVATE ENABLE_TRANSFORM_TESTS)
|
||
|
endif()
|
||
|
|
||
|
|
||
|
if (DUMPPATTERN)
|
||
|
target_compile_definitions(DSP_Lib_TestSuite PRIVATE DUMPPATTERN)
|
||
|
endif()
|
||
|
|
||
|
# Change behavior of configBoot for scatter file
|
||
|
set(TESTFRAMEWORK ON)
|
||
|
|
||
|
include(configBoot)
|
||
|
|
||
|
file(COPY ${ROOT}/CMSIS/DSP/Examples/ARM/boot/RTE_Components.h DESTINATION tempLink)
|
||
|
|
||
|
target_link_libraries(DSP_Lib_TestSuite PRIVATE CMSISDSP)
|
||
|
target_link_libraries(DSP_Lib_TestSuite PRIVATE DspRefLibs)
|
||
|
|
||
|
target_sources(DSP_Lib_TestSuite PRIVATE ${TESTSRC})
|
||
|
|
||
|
### Includes
|
||
|
target_include_directories(DSP_Lib_TestSuite PRIVATE "Common/inc")
|
||
|
target_include_directories(DSP_Lib_TestSuite PRIVATE "Common/inc/templates")
|
||
|
target_include_directories(DSP_Lib_TestSuite PRIVATE ${JINCS})
|
||
|
|
||
|
|