diff --git a/libc/cmake/modules/LLVMLibCCheckCpuFeatures.cmake b/libc/cmake/modules/LLVMLibCCheckCpuFeatures.cmake --- a/libc/cmake/modules/LLVMLibCCheckCpuFeatures.cmake +++ b/libc/cmake/modules/LLVMLibCCheckCpuFeatures.cmake @@ -5,10 +5,6 @@ # Initialize ALL_CPU_FEATURES as empty list. set(ALL_CPU_FEATURES "") -if(LIBC_TARGET_ARCHITECTURE_IS_GPU) - return() -endif() - if(${LIBC_TARGET_ARCHITECTURE_IS_X86}) set(ALL_CPU_FEATURES SSE2 SSE4_2 AVX AVX2 AVX512F AVX512BW FMA) set(LIBC_COMPILE_OPTIONS_NATIVE -march=native) @@ -48,6 +44,10 @@ set(${output_var} ${tmp} PARENT_SCOPE) endfunction() +if(LIBC_TARGET_ARCHITECTURE_IS_GPU) + return() +endif() + set(AVAILABLE_CPU_FEATURES "") if(LIBC_CROSSBUILD) # If we are doing a cross build, we will just assume that all CPU features diff --git a/libc/cmake/modules/LLVMLibCTestRules.cmake b/libc/cmake/modules/LLVMLibCTestRules.cmake --- a/libc/cmake/modules/LLVMLibCTestRules.cmake +++ b/libc/cmake/modules/LLVMLibCTestRules.cmake @@ -71,7 +71,7 @@ # LINK_LIBRARIES # ) function(create_libc_unittest fq_target_name) - if(NOT LLVM_INCLUDE_TESTS) + if(NOT LLVM_INCLUDE_TESTS OR NOT LIBC_ENABLE_UNITTESTS) return() endif() diff --git a/libc/test/CMakeLists.txt b/libc/test/CMakeLists.txt --- a/libc/test/CMakeLists.txt +++ b/libc/test/CMakeLists.txt @@ -22,7 +22,7 @@ return() endif() -if(NOT LIBC_TARGET_ARCHITECTURE_IS_GPU) +if(NOT LIBC_GPU_TARGET_ARCHITECTURE_IS_NVPTX) add_subdirectory(src) add_subdirectory(utils) endif() 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 @@ -7,6 +7,11 @@ ${ARGN} ) + # Math tests and MPFR are not supported on the GPU so we simply exit. + if(LIBC_TARGET_ARCHITECTURE_IS_GPU) + return() + endif() + if(MATH_UNITTEST_NEED_MPFR) if(NOT LIBC_TESTS_CAN_USE_MPFR) message("WARNING: Math test ${name} will be skipped as MPFR library is not available.")