ceph-mirror/cmake/modules
Kefu Chai b4fa423669 cmake/BuildArrow: Use AUTO mode for xsimd dependency detection
Arrow requires xsimd >= 9.0.1 according to arrow/cpp/thirdparty/versions.txt.
Previously, we unconditionally set -Dxsimd_SOURCE=BUNDLED, forcing the use
of Arrow's vendored xsimd regardless of system package availability.

This commit changes to -Dxsimd_SOURCE=AUTO, which allows Arrow's
resolve_dependency mechanism to automatically:
1. Try to find system xsimd package
2. Check if version >= 9.0.1
3. Use system version if found and sufficient
4. Fall back to bundled version otherwise

This reduces build time and dependencies on systems with sufficient xsimd,
while maintaining compatibility with older distributions.

Distribution availability:
- Ubuntu Noble (24.04): libxsimd-dev 12.1.1 (✓ will use system)
- Ubuntu Jammy (22.04): libxsimd-dev 7.6.0 (✗ will use bundled)
- Debian Trixie (13): libxsimd-dev 13.2.0 (✓ will use system)
- CentOS Stream 9: xsimd-devel 7.4.9 (✗ will use bundled)

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
(cherry picked from commit 2defde30e4)
2025-11-13 16:22:15 +08:00
..
code_tests cmake/.../FindSanitizers: add check for Sanitizers_FIBER_SUPPPORT 2024-02-20 16:20:23 -08:00
FindPython cmake: update FindPython3 module 2023-08-17 10:24:16 +08:00
AddCephTest.cmake cmake: suppress LeakSanitizer reports of known leaks 2024-03-27 07:35:28 +08:00
BuildArrow.cmake cmake/BuildArrow: Use AUTO mode for xsimd dependency detection 2025-11-13 16:22:15 +08:00
BuildBoost.cmake cmake: Fix b2 build with postfixed compiler versions 2025-04-22 11:35:34 +08:00
Buildc-ares.cmake cmake: s/c-ares::c-ares/c-ares::cares/ 2022-11-22 01:17:30 +08:00
BuildDPDK.cmake cmake: pass RTE_DEVEL_BUILD=n when building dpdk 2022-03-05 12:57:24 +08:00
BuildFIO.cmake cmake: BuildFIO.cmake should not introduce -std=gnu++17 2023-09-10 11:41:38 -04:00
BuildISAL.cmake cmake/modules/BuildISAL.cmake: set no-integrated-as on clang only 2025-03-02 08:48:31 +00:00
BuildISALCrypto.cmake cmake/crypto: use ExternalProject to build isal crypto library 2024-09-05 13:19:21 -04:00
BuildOpentelemetry.cmake tracer/osd/librados/build/rgw: rgw and osd end2end tracing using opentelemetry 2024-02-06 08:01:42 +00:00
Buildpmdk.cmake cmake: disable LTO when building pmdk 2022-08-04 17:56:48 +08:00
BuildQAT.cmake cmake: WITH_QATLIB/ZIP disabled on aarch64 2024-02-07 11:13:21 -05:00
BuildQATzip.cmake cmake/modules/BuildQATzip: Disable errors 2025-02-20 14:18:12 +00:00
BuildRocksDB.cmake cmake/modules/BuildRocksDB.cmake: inherit CMAKE_C_COMPILER from parent 2024-03-02 18:08:10 +08:00
BuildSPDK.cmake cmake/modules/BuildSPDK.cmake: link whole-archive 2022-01-20 19:39:27 +08:00
Builduadk.cmake uadk: Build with ceph fork (for FORTIFY_SOURCE fix) 2025-09-04 13:30:41 -04:00
BuildUBBD.cmake tools/rbd: add support of new device type for ubbd 2023-05-18 12:35:39 +00:00
Builduring.cmake cmake: bump liburing from 0.7 to 2.5 2024-03-02 12:16:14 +08:00
BuildUtf8proc.cmake cmake: add submodule for utf8proc at v2.2.0 2022-03-14 10:19:02 -04:00
BuildZstd.cmake cmake: allow use libzstd in system 2021-03-31 12:53:39 +08:00
CephCheck_link.c cmake: detect linker support 2019-10-08 21:53:03 +08:00
CephCheck_link.map cmake: detect linker support 2019-10-08 21:53:03 +08:00
CephChecks.cmake cmake: disable deprecated warning when building googletest 2025-04-02 11:35:45 +08:00
CheckCxxAtomic.cmake build: fix atomic linking with LTO on s390x 2022-07-18 15:19:02 -04:00
CheckNasm.cmake cmake: only display the result of checking nasm once 2021-01-04 01:34:46 +08:00
CTags.cmake Merge pull request #54963 from DimStar77/cmake328 2024-02-17 23:18:23 +08:00
Distutils.cmake cmake: add ${CMAKE_SHARED_LINKER_FLAGS} to LDFLAGS when building python extensions 2024-03-27 07:35:28 +08:00
Findaio.cmake
FindArrow.cmake cmake: move Arrow targets into find_package modules 2022-03-14 10:19:02 -04:00
Findbabeltrace.cmake
FindBacktrace.cmake
Findblkid.cmake
FindBoost.cmake cmake/modules/FindBoost.cmake: fix Boost_NO_WARN_NEW_VERSIONS 2025-03-31 14:27:40 +00:00
Findc-ares.cmake rgw: allow Arrow Flight to be built and linked into ceph components 2022-12-15 12:49:35 -05:00
Findcap.cmake cmake: find_package(cap) before linking against it 2024-02-11 16:57:38 +08:00
FindCUnit.cmake cmake: build spdk/dpdk in cmake modules 2017-11-17 15:37:53 +08:00
FindCython.cmake cmake: drop WITH_PYTHON2 option 2019-12-19 10:58:58 +08:00
FindDAOS.cmake rgw: add DAOS SAL implementation 2022-09-07 12:19:41 -04:00
Finddaxctl.cmake cmake: add findndctl and finddaxctl function 2022-07-12 10:32:57 +08:00
Finddml.cmake Add the support to use DML library for PMEM device. 2022-04-19 14:51:12 +08:00
Finddpdk.cmake cmake: dpdk: only append common dir if it has been found 2022-01-13 14:40:17 +01:00
FindFUSE.cmake cmake: to get the header and library from specified path 2020-05-24 21:40:18 -04:00
FindGMock.cmake cmake: link against gtest in a better way 2018-08-17 15:21:27 +08:00
Findgperftools.cmake cmake: import allocator libraries in a better way 2018-07-26 15:16:48 +08:00
FindGSSApi.cmake auth: Kerberos authentication 2018-12-03 18:55:46 -07:00
FindJeMalloc.cmake cmake: fix a cmake error when with -DALLOCATOR=jemalloc. 2018-08-02 16:38:53 +08:00
Findkeyutils.cmake cmake: extract mount.ceph into src/mount 2018-07-28 16:53:10 +08:00
Findlibcryptsetup.cmake cmake: fix unknown pkg_search_module 2020-12-02 06:18:52 -05:00
Findlibnbd.cmake librbd/migration: add nbd stream 2024-09-06 14:14:12 +02:00
FindLinuxZNS.cmake cmake: detect linux/blk/zoned support 2021-12-25 16:13:47 +08:00
FindLMDB.cmake RGW - Add POSIX Driver 2023-09-14 12:09:40 -04:00
FindLTTngUST.cmake
FindLZ4.cmake cmake: add LZ4::LZ4 target for LZ4 2018-08-06 17:38:07 +08:00
FindMake.cmake cmake: add find_make() function 2020-04-03 13:07:51 +08:00
Findmotr.cmake cmake: find motr libraries and header before using them 2022-08-10 21:15:12 +08:00
Findndctl.cmake cmake: add findndctl and finddaxctl function 2022-07-12 10:32:57 +08:00
Findnl.cmake cmake: rewrite Findgenl to support components argument 2019-06-19 21:21:00 +08:00
FindNUMA.cmake cmake: use NUMA for package name in FindNUMA.cmake 2021-02-14 23:11:33 +08:00
FindOATH.cmake cmake: cmake: oath lives in liboath 2018-06-10 16:21:41 +02:00
FindOpenLDAP.cmake cmake: define OpenLDAP::OpenLDAP library 2021-07-24 19:28:56 +08:00
FindParquet.cmake cmake: move Arrow targets into find_package modules 2022-03-14 10:19:02 -04:00
Findpmdk.cmake cmake: rename a series of pmem libraries to pmdk 2022-06-28 01:16:33 +08:00
FindPython3.cmake cmake: update FindPython3 module 2023-08-17 10:16:45 +08:00
FindQAT.cmake cmake: add WITH_QATLIB to build against qatlib 2024-02-07 10:37:47 -05:00
FindQatDrv.cmake cmake: add WITH_QATLIB to build against qatlib 2024-02-07 10:37:47 -05:00
FindQATzip.cmake cmake: build qatzip from source when WITH_SYSTEM_QATZIP=OFF 2024-02-07 11:12:45 -05:00
FindRabbitMQ.cmake cmake: find_package(RabbitMQ) instead of just checking its header 2019-02-21 19:00:24 +08:00
FindRDKafka.cmake cmake: check version of librdkafka 2019-12-15 22:16:08 +08:00
Findrdmacm.cmake cmake: extract the RDMA libraries interface properties out 2018-06-28 23:26:28 +08:00
FindRocksDB.cmake cmake/FindRocksDB: fix IMPORTED_LOCATION for ROCKSDB_LIBRARIES 2019-03-27 10:18:26 +08:00
FindSanitizers.cmake cmake: quote a list using quotes 2024-03-27 07:35:28 +08:00
Findsnappy.cmake cmake: cleanup snappy related script 2018-08-06 17:16:46 +08:00
FindSQLite3.cmake libcephsqlite: rework architecture and backend 2021-03-19 08:52:55 -07:00
FindStdFilesystem_test.cc cmake: stop detecting <experimental/filesystem> 2021-06-09 23:25:22 +08:00
FindStdFilesystem.cmake cmake: stop detecting <experimental/filesystem> 2021-06-09 23:25:22 +08:00
Findthrift.cmake cmake: reorder find_package_handle_standard_arg for thrift 2021-07-22 21:35:29 +05:30
Findudev.cmake
Finduring.cmake cmake: fix Finduring.cmake 2023-10-20 09:18:30 -04:00
Findutf8proc.cmake cmake: add submodule for utf8proc at v2.2.0 2022-03-14 10:19:02 -04:00
Finduuid.cmake cmake,rpm,deb: update to accommodate SPDK v17.10 2017-11-29 18:03:23 +08:00
Findverbs.cmake cmake: extract the RDMA libraries interface properties out 2018-06-28 23:26:28 +08:00
Findxfs.cmake
Findyaml-cpp.cmake jaeger, build/op: add jaeger and it's dependencies as submodules 2020-12-11 07:55:46 +00:00
Findzbd.cmake os/bluestore: Switch from libzbc library to libzbd library 2020-09-06 12:35:05 -04:00
FindZstd.cmake cmake: allow use libzstd in system 2021-03-31 12:53:39 +08:00
GetGitRevisionDescription.cmake cmake: check $top_srcdir/.git directly 2020-04-08 18:03:37 +08:00
GetGitRevisionDescription.cmake.in cmake/modules/GetGitRevisionDescription: update to work with git-worktree 2019-10-07 14:26:07 -05:00
LimitJobs.cmake cmake: Intelligently set job limits for sccache 2024-05-06 14:03:14 -06:00
patch-dpdk-conf.sh cmake: Add dpdk numa support 2019-11-28 20:15:39 +08:00
SIMDExt.cmake crc32c optimized for s390x arch 2024-05-22 19:45:37 +02:00