diff options
author | Daniel Black <daniel@mariadb.org> | 2021-08-25 16:53:39 +1000 |
---|---|---|
committer | Daniel Black <daniel@mariadb.org> | 2021-08-26 17:42:32 +1000 |
commit | 228630f61ac10240c367176601bd05bdb20ea8e0 (patch) | |
tree | bf1d6fc467de64cca40a7ff5b689528e938daeb4 /storage/rocksdb | |
parent | c45aeeab38125e59c84c2d7a78e8465e0964e5b5 (diff) | |
download | mariadb-git-228630f61ac10240c367176601bd05bdb20ea8e0.tar.gz |
rocksdb: disable on arm64 except for Linux
Thanks to Theodore Brockman on Zulip for noticing
on an OSX ARM64 and testing this patch.
Per https://github.com/google/cpu_features/pull/150/files
CMAKE_SYSTEM_PROCESSOR is arm64 on Apple.
Without this, compulation error:
[ 80%] Building CXX object storage/rocksdb/CMakeFiles/rocksdblib.dir/rocksdb/util/crc32c.cc.o
/mariadb/storage/rocksdb/rocksdb/util/crc32c.cc:500:18: error: use of undeclared identifier 'isSSE42'
has_fast_crc = isSSE42();
^
/mariadb/storage/rocksdb/rocksdb/util/crc32c.cc:1230:7: error: use of undeclared identifier 'isSSE42'
if (isSSE42()) {
^
/mariadb/storage/rocksdb/rocksdb/util/crc32c.cc:1231:9: error: use of undeclared identifier 'isPCLMULQDQ'
if (isPCLMULQDQ()) {
^
This can be reverted when the RocksDB submodule is updated.
https://github.com/facebook/rocksdb/commit/ee4bd4780b321ddb5f92a0f4eb956f2a2ebd60dc
Diffstat (limited to 'storage/rocksdb')
-rw-r--r-- | storage/rocksdb/CMakeLists.txt | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/storage/rocksdb/CMakeLists.txt b/storage/rocksdb/CMakeLists.txt index e2b0d9df547..1db314b93db 100644 --- a/storage/rocksdb/CMakeLists.txt +++ b/storage/rocksdb/CMakeLists.txt @@ -44,6 +44,15 @@ IF (WIN32 AND CMAKE_SIZEOF_VOID_P EQUAL 4) SKIP_ROCKSDB_PLUGIN("32-Bit Windows are temporarily disabled") ENDIF() +# +# Also, disable on ARM64 when not Linux +# Requires submodule update to v6.16.3 +# containing commit https://github.com/facebook/rocksdb/commit/ee4bd4780b321ddb5f92a0f4eb956f2a2ebd60dc +# +IF(CMAKE_SYSTEM_PROCESSOR MATCHES "(arm64|aarch64)" AND NOT CMAKE_SYSTEM_NAME STREQUAL "Linux") + SKIP_ROCKSDB_PLUGIN("ARM64 disabled on all except Linux") +ENDIF() + # This plugin needs recent C++ compilers (it is using C++11 features) # Skip build for the old compilers SET(CXX11_FLAGS) |