diff --git a/config.h b/config.h new file mode 100644 index 0000000..4cdc190 --- /dev/null +++ b/config.h @@ -0,0 +1,69 @@ +#ifndef THIRD_PARTY_SNAPPY_OPENSOURCE_CMAKE_CONFIG_H_ +#define THIRD_PARTY_SNAPPY_OPENSOURCE_CMAKE_CONFIG_H_ + +/* Define to 1 if the compiler supports __attribute__((always_inline)). */ +#define HAVE_ATTRIBUTE_ALWAYS_INLINE 1 + +/* Define to 1 if the compiler supports __builtin_ctz and friends. */ +#define HAVE_BUILTIN_CTZ 1 + +/* Define to 1 if the compiler supports __builtin_expect. */ +#define HAVE_BUILTIN_EXPECT 1 + +/* Define to 1 if the compiler supports __builtin_prefetch. */ +#define HAVE_BUILTIN_PREFETCH 1 + +/* Define to 1 if you have a definition for mmap() in . */ +#define HAVE_FUNC_MMAP 1 + +/* Define to 1 if you have a definition for sysconf() in . */ +#define HAVE_FUNC_SYSCONF 1 + +/* Define to 1 if you have the `lzo2' library (-llzo2). */ +#define HAVE_LIBLZO2 0 + +/* Define to 1 if you have the `z' library (-lz). */ +#define HAVE_LIBZ 1 + +/* Define to 1 if you have the `lz4' library (-llz4). */ +#define HAVE_LIBLZ4 0 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_MMAN_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_RESOURCE_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TIME_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_UIO_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_WINDOWS_H 0 + +/* Define to 1 if you target processors with SSSE3+ and have . */ +#define SNAPPY_HAVE_SSSE3 1 + +/* Define to 1 if you target processors with SSE4.2 and have . */ +#define SNAPPY_HAVE_X86_CRC32 1 + +/* Define to 1 if you target processors with BMI2+ and have . */ +#define SNAPPY_HAVE_BMI2 0 + +/* Define to 1 if you target processors with NEON and have . */ +#define SNAPPY_HAVE_NEON 0 + +/* Define to 1 if you have and and want to optimize + compression speed by using __crc32cw from . */ +#define SNAPPY_HAVE_NEON_CRC32 0 + +/* Define to 1 if your processor stores words with the most significant byte + first (like Motorola and SPARC, unlike Intel and VAX). */ +#define SNAPPY_IS_BIG_ENDIAN 0 + +#endif // THIRD_PARTY_SNAPPY_OPENSOURCE_CMAKE_CONFIG_H_ diff --git a/snappy-stubs-public.h b/snappy-stubs-public.h new file mode 100644 index 0000000..527aa70 --- /dev/null +++ b/snappy-stubs-public.h @@ -0,0 +1,66 @@ +// Copyright 2011 Google Inc. All Rights Reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +// +// Various type stubs for the open-source version of Snappy. +// +// This file cannot include config.h, as it is included from snappy.h, +// which is a public header. Instead, snappy-stubs-public.h is generated by +// from snappy-stubs-public.h.in at configure time. + +#ifndef THIRD_PARTY_SNAPPY_OPENSOURCE_SNAPPY_STUBS_PUBLIC_H_ +#define THIRD_PARTY_SNAPPY_OPENSOURCE_SNAPPY_STUBS_PUBLIC_H_ + +#include + +// Original cmake configure baked HAVE_SYS_UIO_H=1 on the Linux host that +// pre-generated this header; gate it on _WIN32 so cross-compiles to Windows +// fall back to the iovec definition below. +#if !defined(_WIN32) // HAVE_SYS_UIO_H +#include +#endif // HAVE_SYS_UIO_H + +#define SNAPPY_MAJOR 1 +#define SNAPPY_MINOR 2 +#define SNAPPY_PATCHLEVEL 2 +#define SNAPPY_VERSION \ + ((SNAPPY_MAJOR << 16) | (SNAPPY_MINOR << 8) | SNAPPY_PATCHLEVEL) + +namespace snappy { + +#if defined(_WIN32) // !HAVE_SYS_UIO_H +// Windows does not have an iovec type, yet the concept is universally useful. +// It is simple to define it ourselves, so we put it inside our own namespace. +struct iovec { + void* iov_base; + size_t iov_len; +}; +#endif // !HAVE_SYS_UIO_H + +} // namespace snappy + +#endif // THIRD_PARTY_SNAPPY_OPENSOURCE_SNAPPY_STUBS_PUBLIC_H_