]> git.cworth.org Git - apitrace/blobdiff - thirdparty/snappy/CMakeLists.txt
Replicate some of snappy autoconf tests.
[apitrace] / thirdparty / snappy / CMakeLists.txt
index 92d12482ef08a7f02874b11a1e5a063ab1b94b43..b727854de4ffed72f2ca3ea62161105f20ebc446 100644 (file)
@@ -1,4 +1,30 @@
-include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+# We only do the subset of the snappy autoconf that actually affect the library
+# (as most of them are for the tests which we don't build.)
+
+include (CheckIncludeFileCXX)
+include (CheckCXXSourceCompiles)
+include (TestBigEndian)
+
+check_include_file_cxx (sys/mman.h HAVE_SYS_MMAN_H)
+
+check_cxx_source_compiles (
+    "main() { return __builtin_expect(1, 1) ? 1 : 0; }"
+    HAVE_BUILTIN_EXPECT
+)
+
+check_cxx_source_compiles (
+    "main() { return (__builtin_ctzll(0x100000000LL) == 32) ? 1 : 0; }"
+    HAVE_BUILTIN_CTZ
+)
+
+test_big_endian (WORDS_BIGENDIAN)
+
+configure_file (config.h.in config.h)
+
+add_definitions (-DHAVE_CONFIG_H)
+
+
+include_directories (${CMAKE_CURRENT_BINARY_DIR})
 
 add_library (snappy_bundled STATIC
     snappy.cc