aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/crcutil/CMakeLists.linux.txt
blob: 962915e80fdbffc8bd1a05a19c0fed6d1d0b6ad0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# This file was generated 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-linux-headers
  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
)