From: Aman Gupta Date: Thu, 25 Dec 2025 17:35:14 +0000 (+0800) Subject: ggml-cuda: fix regex for arch list (llama/18371) X-Git-Tag: v0.9.5~28 X-Git-Url: https://git.djapps.eu/?a=commitdiff_plain;h=c5aac048632bd8ecd2db572275dded9a515e81d9;p=pkg%2Fggml%2Fsources%2Fggml ggml-cuda: fix regex for arch list (llama/18371) * ggml-cuda: fix regex for arch list * make regex exact --- diff --git a/src/ggml-cuda/CMakeLists.txt b/src/ggml-cuda/CMakeLists.txt index f3c3ebff..c0f8bcaa 100644 --- a/src/ggml-cuda/CMakeLists.txt +++ b/src/ggml-cuda/CMakeLists.txt @@ -44,8 +44,13 @@ if (CUDAToolkit_FOUND) # Replace any 12x-real architectures with 12x{a}-real. FP4 ptx instructions are not available in just 12x if (GGML_NATIVE) set(PROCESSED_ARCHITECTURES "") - foreach(ARCH ${CMAKE_CUDA_ARCHITECTURES_NATIVE}) - if(ARCH MATCHES "^12[0-9]$") + if (CMAKE_CUDA_ARCHITECTURES_NATIVE) + set(ARCH_LIST ${CMAKE_CUDA_ARCHITECTURES_NATIVE}) + else() + set(ARCH_LIST ${CMAKE_CUDA_ARCHITECTURES}) + endif() + foreach(ARCH ${ARCH_LIST}) + if (ARCH MATCHES "^12[0-9](-real|-virtual)?$") string(REGEX REPLACE "^(12[0-9]).*$" "\\1" BASE_ARCH ${ARCH}) message(STATUS "Replacing ${ARCH} with ${BASE_ARCH}a-real") list(APPEND PROCESSED_ARCHITECTURES "${BASE_ARCH}a-real")