aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/crcutil
diff options
context:
space:
mode:
authordcherednik <dcherednik@ydb.tech>2022-10-26 16:40:35 +0300
committerdcherednik <dcherednik@ydb.tech>2022-10-26 16:40:35 +0300
commitb981cca279190176740c3bf5c5b4fd03be51b599 (patch)
treef5ec6210fdce0e976cbbe4dc8ae78bb6509adf49 /contrib/libs/crcutil
parent6dc0de995652f7eeecdbdb88dc98b00bb0653a2f (diff)
downloadydb-b981cca279190176740c3bf5c5b4fd03be51b599.tar.gz
Enable linux-arm platform.
Diffstat (limited to 'contrib/libs/crcutil')
-rw-r--r--contrib/libs/crcutil/CMakeLists.darwin.txt34
-rw-r--r--contrib/libs/crcutil/CMakeLists.linux-aarch64.txt20
-rw-r--r--contrib/libs/crcutil/CMakeLists.linux.txt34
-rw-r--r--contrib/libs/crcutil/CMakeLists.txt33
4 files changed, 95 insertions, 26 deletions
diff --git a/contrib/libs/crcutil/CMakeLists.darwin.txt b/contrib/libs/crcutil/CMakeLists.darwin.txt
new file mode 100644
index 0000000000..4d458c863d
--- /dev/null
+++ b/contrib/libs/crcutil/CMakeLists.darwin.txt
@@ -0,0 +1,34 @@
+
+# This file was gererated by the build system used internally in the Yandex monorepo.
+# Only simple modifications are allowed (adding source-files to targets, adding simple properties
+# like target_include_directories). These modifications will be ported to original
+# ya.make files by maintainers. Any complex modifications which can't be ported back to the
+# original buildsystem will not be accepted.
+
+
+
+add_library(contrib-libs-crcutil)
+target_compile_options(contrib-libs-crcutil PRIVATE
+ -DCRCUTIL_USE_MM_CRC32=1
+ -Wno-everything
+)
+target_link_libraries(contrib-libs-crcutil PUBLIC
+ contrib-libs-cxxsupp
+)
+target_sources(contrib-libs-crcutil PRIVATE
+ ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/multiword_64_64_gcc_i386_mmx.cc
+ ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/multiword_128_64_gcc_amd64_sse2.cc
+ ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/multiword_64_64_gcc_amd64_asm.cc
+ ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/interface.cc
+ ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/multiword_64_64_intrinsic_i386_mmx.cc
+)
+target_sources_custom(contrib-libs-crcutil
+ .sse4
+ SRCS
+ ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/crc32c_sse4.cc
+ CUSTOM_FLAGS
+ -msse4.1
+ -msse4.2
+ -mpopcnt
+ -mcx16
+)
diff --git a/contrib/libs/crcutil/CMakeLists.linux-aarch64.txt b/contrib/libs/crcutil/CMakeLists.linux-aarch64.txt
new file mode 100644
index 0000000000..78fc1df27f
--- /dev/null
+++ b/contrib/libs/crcutil/CMakeLists.linux-aarch64.txt
@@ -0,0 +1,20 @@
+
+# This file was gererated by the build system used internally in the Yandex monorepo.
+# Only simple modifications are allowed (adding source-files to targets, adding simple properties
+# like target_include_directories). These modifications will be ported to original
+# ya.make files by maintainers. Any complex modifications which can't be ported back to the
+# original buildsystem will not be accepted.
+
+
+
+add_library(contrib-libs-crcutil)
+target_compile_options(contrib-libs-crcutil PRIVATE
+ -Wno-everything
+)
+target_link_libraries(contrib-libs-crcutil PUBLIC
+ contrib-libs-cxxsupp
+)
+target_sources(contrib-libs-crcutil PRIVATE
+ ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/interface.cc
+ ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/multiword_64_64_intrinsic_i386_mmx.cc
+)
diff --git a/contrib/libs/crcutil/CMakeLists.linux.txt b/contrib/libs/crcutil/CMakeLists.linux.txt
new file mode 100644
index 0000000000..4d458c863d
--- /dev/null
+++ b/contrib/libs/crcutil/CMakeLists.linux.txt
@@ -0,0 +1,34 @@
+
+# This file was gererated by the build system used internally in the Yandex monorepo.
+# Only simple modifications are allowed (adding source-files to targets, adding simple properties
+# like target_include_directories). These modifications will be ported to original
+# ya.make files by maintainers. Any complex modifications which can't be ported back to the
+# original buildsystem will not be accepted.
+
+
+
+add_library(contrib-libs-crcutil)
+target_compile_options(contrib-libs-crcutil PRIVATE
+ -DCRCUTIL_USE_MM_CRC32=1
+ -Wno-everything
+)
+target_link_libraries(contrib-libs-crcutil PUBLIC
+ contrib-libs-cxxsupp
+)
+target_sources(contrib-libs-crcutil PRIVATE
+ ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/multiword_64_64_gcc_i386_mmx.cc
+ ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/multiword_128_64_gcc_amd64_sse2.cc
+ ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/multiword_64_64_gcc_amd64_asm.cc
+ ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/interface.cc
+ ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/multiword_64_64_intrinsic_i386_mmx.cc
+)
+target_sources_custom(contrib-libs-crcutil
+ .sse4
+ SRCS
+ ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/crc32c_sse4.cc
+ CUSTOM_FLAGS
+ -msse4.1
+ -msse4.2
+ -mpopcnt
+ -mcx16
+)
diff --git a/contrib/libs/crcutil/CMakeLists.txt b/contrib/libs/crcutil/CMakeLists.txt
index 4d458c863d..3e0811fb22 100644
--- a/contrib/libs/crcutil/CMakeLists.txt
+++ b/contrib/libs/crcutil/CMakeLists.txt
@@ -6,29 +6,10 @@
# original buildsystem will not be accepted.
-
-add_library(contrib-libs-crcutil)
-target_compile_options(contrib-libs-crcutil PRIVATE
- -DCRCUTIL_USE_MM_CRC32=1
- -Wno-everything
-)
-target_link_libraries(contrib-libs-crcutil PUBLIC
- contrib-libs-cxxsupp
-)
-target_sources(contrib-libs-crcutil PRIVATE
- ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/multiword_64_64_gcc_i386_mmx.cc
- ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/multiword_128_64_gcc_amd64_sse2.cc
- ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/multiword_64_64_gcc_amd64_asm.cc
- ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/interface.cc
- ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/multiword_64_64_intrinsic_i386_mmx.cc
-)
-target_sources_custom(contrib-libs-crcutil
- .sse4
- SRCS
- ${CMAKE_SOURCE_DIR}/contrib/libs/crcutil/crc32c_sse4.cc
- CUSTOM_FLAGS
- -msse4.1
- -msse4.2
- -mpopcnt
- -mcx16
-)
+if (CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64" AND UNIX AND NOT APPLE AND NOT ANDROID)
+ include(CMakeLists.linux-aarch64.txt)
+elseif (APPLE)
+ include(CMakeLists.darwin.txt)
+elseif (CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" AND UNIX AND NOT APPLE AND NOT ANDROID)
+ include(CMakeLists.linux.txt)
+endif()