# Copyright (c) 2019 The Bitcoin Core developers # Distributed under the MIT software license, see the accompanying # file COPYING or http://www.opensource.org/licenses/mit-license.php. LIBCRC32C_INT = crc32c/libcrc32c.a LIBLEVELDB_SSE42_INT = leveldb/libleveldb_sse42.a EXTRA_LIBRARIES += $(LIBCRC32C_INT) LIBCRC32C = $(LIBCRC32C_INT) CRC32C_CPPFLAGS_INT = CRC32C_CPPFLAGS_INT += -I$(srcdir)/crc32c/include CRC32C_CPPFLAGS_INT += -DHAVE_BUILTIN_PREFETCH=@HAVE_BUILTIN_PREFETCH@ CRC32C_CPPFLAGS_INT += -DHAVE_MM_PREFETCH=@HAVE_MM_PREFETCH@ CRC32C_CPPFLAGS_INT += -DHAVE_STRONG_GETAUXVAL=@HAVE_STRONG_GETAUXVAL@ CRC32C_CPPFLAGS_INT += -DHAVE_WEAK_GETAUXVAL=@HAVE_WEAK_GETAUXVAL@ CRC32C_CPPFLAGS_INT += -DCRC32C_TESTS_BUILT_WITH_GLOG=0 if ENABLE_SSE42 CRC32C_CPPFLAGS_INT += -DHAVE_SSE42=1 else CRC32C_CPPFLAGS_INT += -DHAVE_SSE42=0 endif if ENABLE_ARM_CRC CRC32C_CPPFLAGS_INT += -DHAVE_ARM64_CRC32C=1 else CRC32C_CPPFLAGS_INT += -DHAVE_ARM64_CRC32C=0 endif if WORDS_BIGENDIAN CRC32C_CPPFLAGS_INT += -DBYTE_ORDER_BIG_ENDIAN=1 else CRC32C_CPPFLAGS_INT += -DBYTE_ORDER_BIG_ENDIAN=0 endif crc32c_libcrc32c_a_CPPFLAGS = $(AM_CPPFLAGS) $(CRC32C_CPPFLAGS_INT) $(CRC32C_CPPFLAGS) crc32c_libcrc32c_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) crc32c_libcrc32c_a_SOURCES = crc32c_libcrc32c_a_SOURCES += crc32c/include/crc32c/crc32c.h crc32c_libcrc32c_a_SOURCES += crc32c/src/crc32c_arm64.h crc32c_libcrc32c_a_SOURCES += crc32c/src/crc32c_arm64_linux_check.h crc32c_libcrc32c_a_SOURCES += crc32c/src/crc32c_internal.h crc32c_libcrc32c_a_SOURCES += crc32c/src/crc32c_prefetch.h crc32c_libcrc32c_a_SOURCES += crc32c/src/crc32c_read_le.h crc32c_libcrc32c_a_SOURCES += crc32c/src/crc32c_round_up.h crc32c_libcrc32c_a_SOURCES += crc32c/src/crc32c_sse42_check.h crc32c_libcrc32c_a_SOURCES += crc32c/src/crc32c_sse42.h crc32c_libcrc32c_a_SOURCES += crc32c/src/crc32c.cc crc32c_libcrc32c_a_SOURCES += crc32c/src/crc32c_portable.cc if ENABLE_SSE42 LIBCRC32C_SSE42_INT = crc32c/libcrc32c_sse42.a EXTRA_LIBRARIES += $(LIBCRC32C_SSE42_INT) LIBCRC32C += $(LIBCRC32C_SSE42_INT) crc32c_libcrc32c_sse42_a_CPPFLAGS = $(crc32c_libcrc32c_a_CPPFLAGS) crc32c_libcrc32c_sse42_a_CXXFLAGS = $(crc32c_libcrc32c_a_CXXFLAGS) $(SSE42_CXXFLAGS) crc32c_libcrc32c_sse42_a_SOURCES = crc32c/src/crc32c_sse42.cc endif if ENABLE_ARM_CRC LIBCRC32C_ARM_CRC_INT = crc32c/libcrc32c_arm_crc.a EXTRA_LIBRARIES += $(LIBCRC32C_ARM_CRC_INT) LIBCRC32C += $(LIBCRC32C_ARM_CRC_INT) crc32c_libcrc32c_arm_crc_a_CPPFLAGS = $(crc32c_libcrc32c_a_CPPFLAGS) crc32c_libcrc32c_arm_crc_a_CXXFLAGS = $(crc32c_libcrc32c_a_CXXFLAGS) $(ARM_CRC_CXXFLAGS) crc32c_libcrc32c_arm_crc_a_SOURCES = crc32c/src/crc32c_arm64.cc endif