]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
cmake: Fix ISA-L build on arm 68711/head
authorJamie Pryde <jamiepry@uk.ibm.com>
Fri, 1 May 2026 09:45:42 +0000 (10:45 +0100)
committerJamie Pryde <jamiepry@uk.ibm.com>
Wed, 6 May 2026 10:58:06 +0000 (11:58 +0100)
A typo in CFLAGS means we're passing an empty string to configure_cmd.
We are then overwriting the build environment CFLAGS with our empty string CFLAGS,
which can result in build failures in certain environments, as seen in the tracker.
This fix gets any build environment CFLAGS and appends the other flags
we want to use when building ISA-L 2.32.0

Fixes: https://tracker.ceph.com/issues/76389
Signed-off-by: Jamie Pryde <jamiepry@uk.ibm.com>
cmake/modules/BuildISAL.cmake

index 5d9f48f773944b7db1693b1f61c32b984012ece5..a0c0245013bcfbbdcbfa2967ed4b17e4c4c3fee0 100644 (file)
@@ -21,15 +21,15 @@ function(build_isal)
   if(CMAKE_C_COMPILER_ID MATCHES "Clang" AND HAVE_ARMV8_SIMD)
     list(APPEND arm_cflags "-no-integrated-as")
   endif()
-  # isa-l 2.32.0 requires SVE assembly support
+  # isa-l 2.32.0 includes SVE and SVE2-optimized assembly for better performance on
+  # compatible ARM CPUs
   if(CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64|AARCH64")
     list(APPEND arm_cflags "-Wa,-march=armv8-a+sve")
   endif()
   if(arm_cflags)
     string(REPLACE ";" " " arm_cflags_str "${arm_cflags}")
-    list(APPEND configure_cmd "CFLAGS=${arm_cflags_string}")
+    list(APPEND configure_cmd "CFLAGS=$ENV{CFLAGS} -fPIC ${arm_cflags_str}")
   endif()
-  
 
   include(ExternalProject)
   ExternalProject_Add(isal_ext