diff --git a/libc/test/src/CMakeLists.txt b/libc/test/src/CMakeLists.txt --- a/libc/test/src/CMakeLists.txt +++ b/libc/test/src/CMakeLists.txt @@ -1,7 +1,7 @@ function(add_fp_unittest name) cmake_parse_arguments( "MATH_UNITTEST" - "NEED_MPFR" # Optional arguments + "NEED_MPFR;HERMETIC_TEST_ONLY" # Optional arguments "" # Single value arguments "LINK_LIBRARIES" # Multi-value arguments ${ARGN} @@ -14,13 +14,21 @@ endif() endif() + if(MATH_UNITTEST_HERMETIC_TEST_ONLY) + set(test_type HERMETIC_TEST_ONLY) + endif() if(MATH_UNITTEST_NEED_MPFR) + if(MATH_UNITTEST_HERMETIC_TEST_ONLY) + message(FATAL "Hermetic math test cannot require MPFR.") + endif() + set(test_type UNIT_TEST_ONLY) list(APPEND MATH_UNITTEST_LINK_LIBRARIES libcMPFRWrapper libc_math_test_utils -lmpfr -lgmp) endif() list(APPEND MATH_UNITTEST_LINK_LIBRARIES LibcFPTestHelpers) - add_libc_unittest( + add_libc_test( ${name} + ${test_type} LINK_LIBRARIES "${MATH_UNITTEST_LINK_LIBRARIES}" "${MATH_UNITTEST_UNPARSED_ARGUMENTS}" )