Port of Snappy-1.1.7
A fast compressor/decompressor https://github.com/google/snappy
This commit is contained in:
committed by
Norman Feske
parent
6bd43a2df5
commit
14098623de
2
lib/import/import-snappy.mk
Normal file
2
lib/import/import-snappy.mk
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
SNAPPY_PORT_DIR := $(call select_from_ports,snappy)
|
||||||
|
INC_DIR += $(SNAPPY_PORT_DIR)/include/snappy
|
||||||
16
lib/mk/snappy.mk
Normal file
16
lib/mk/snappy.mk
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
include $(REP_DIR)/lib/import/import-snappy.mk
|
||||||
|
|
||||||
|
SNAPPY_SRC_DIR = $(SNAPPY_PORT_DIR)/src/lib/snappy
|
||||||
|
|
||||||
|
INC_DIR += $(SNAPPY_SRC_DIR)
|
||||||
|
|
||||||
|
SRC_CC += snappy-c.cc snappy-sinksource.cc snappy-stubs-internal.cc snappy.cc
|
||||||
|
|
||||||
|
vpath %.cc $(SNAPPY_SRC_DIR)
|
||||||
|
|
||||||
|
LIBS += stdcxx
|
||||||
|
|
||||||
|
SHARED_LIB = yes
|
||||||
|
|
||||||
|
CC_WARN += -Wno-sign-compare
|
||||||
|
CC_CXX_WARN_STRICT =
|
||||||
46
lib/symbols/snappy
Normal file
46
lib/symbols/snappy
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
_ZN6snappy10UncompressEPKcmPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE T
|
||||||
|
_ZN6snappy10UncompressEPNS_6SourceEPNS_4SinkE T
|
||||||
|
_ZN6snappy11RawCompressEPKcmPcPm T
|
||||||
|
_ZN6snappy13RawUncompressEPKcmPc T
|
||||||
|
_ZN6snappy13RawUncompressEPNS_6SourceEPc T
|
||||||
|
_ZN6snappy15ByteArraySource4PeekEPm T
|
||||||
|
_ZN6snappy15ByteArraySource4SkipEm T
|
||||||
|
_ZN6snappy15ByteArraySourceD0Ev T
|
||||||
|
_ZN6snappy15ByteArraySourceD1Ev T
|
||||||
|
_ZN6snappy15ByteArraySourceD2Ev T
|
||||||
|
_ZN6snappy17IsValidCompressedEPNS_6SourceE T
|
||||||
|
_ZN6snappy18SnappyDecompressor9RefillTagEv T
|
||||||
|
_ZN6snappy19MaxCompressedLengthEm T
|
||||||
|
_ZN6snappy20RawUncompressToIOVecEPKcmPK5iovecm T
|
||||||
|
_ZN6snappy20RawUncompressToIOVecEPNS_6SourceEPK5iovecm T
|
||||||
|
_ZN6snappy21GetUncompressedLengthEPKcmPm T
|
||||||
|
_ZN6snappy21GetUncompressedLengthEPNS_6SourceEPj T
|
||||||
|
_ZN6snappy22UncheckedByteArraySink15GetAppendBufferEmPc T
|
||||||
|
_ZN6snappy22UncheckedByteArraySink22AppendAndTakeOwnershipEPcmPFvPvPKcmES2_ T
|
||||||
|
_ZN6snappy22UncheckedByteArraySink23GetAppendBufferVariableEmmPcmPm T
|
||||||
|
_ZN6snappy22UncheckedByteArraySink6AppendEPKcm T
|
||||||
|
_ZN6snappy22UncheckedByteArraySinkD0Ev T
|
||||||
|
_ZN6snappy22UncheckedByteArraySinkD1Ev T
|
||||||
|
_ZN6snappy22UncheckedByteArraySinkD2Ev T
|
||||||
|
_ZN6snappy23IsValidCompressedBufferEPKcm T
|
||||||
|
_ZN6snappy26UncompressAsMuchAsPossibleEPNS_6SourceEPNS_4SinkE T
|
||||||
|
_ZN6snappy4Sink15GetAppendBufferEmPc T
|
||||||
|
_ZN6snappy4Sink22AppendAndTakeOwnershipEPcmPFvPvPKcmES2_ T
|
||||||
|
_ZN6snappy4Sink23GetAppendBufferVariableEmmPcmPm T
|
||||||
|
_ZN6snappy4SinkD0Ev T
|
||||||
|
_ZN6snappy4SinkD1Ev T
|
||||||
|
_ZN6snappy4SinkD2Ev T
|
||||||
|
_ZN6snappy6SourceD0Ev T
|
||||||
|
_ZN6snappy6SourceD1Ev T
|
||||||
|
_ZN6snappy6SourceD2Ev T
|
||||||
|
_ZN6snappy6Varint8Append32EPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEj T
|
||||||
|
_ZN6snappy8CompressEPKcmPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE T
|
||||||
|
_ZN6snappy8CompressEPNS_6SourceEPNS_4SinkE T
|
||||||
|
_ZN6snappy8internal13WorkingMemory12GetHashTableEmPi T
|
||||||
|
_ZN6snappy8internal16CompressFragmentEPKcmPcPti T
|
||||||
|
_ZNK6snappy15ByteArraySource9AvailableEv T
|
||||||
|
snappy_compress T
|
||||||
|
snappy_max_compressed_length T
|
||||||
|
snappy_uncompress T
|
||||||
|
snappy_uncompressed_length T
|
||||||
|
snappy_validate_compressed_buffer T
|
||||||
1
ports/snappy.hash
Normal file
1
ports/snappy.hash
Normal file
@@ -0,0 +1 @@
|
|||||||
|
a332fb997b87e7d89337e0d9b7473eecfe1ba940
|
||||||
15
ports/snappy.port
Normal file
15
ports/snappy.port
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
LICENSE := BSD
|
||||||
|
VERSION := 1.1.7
|
||||||
|
DOWNLOADS := snappy.archive
|
||||||
|
|
||||||
|
URL(snappy) := https://github.com/google/snappy/archive/$(VERSION).tar.gz
|
||||||
|
SHA(snappy) := 3dfa02e873ff51a11ee02b9ca391807f0c8ea0529a4924afa645fbf97163f9d4
|
||||||
|
DIR(snappy) := src/lib/snappy
|
||||||
|
|
||||||
|
PATCHES := src/lib/snappy/header.patch
|
||||||
|
PATCH_OPT := -p1 -d src/lib/snappy
|
||||||
|
|
||||||
|
DIRS := include/snappy
|
||||||
|
DIR_CONTENT(include/snappy) := \
|
||||||
|
src/lib/snappy/snappy.h \
|
||||||
|
src/lib/snappy/snappy-stubs-public.h \
|
||||||
13
recipes/api/snappy/content.mk
Normal file
13
recipes/api/snappy/content.mk
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
content: include/snappy lib/symbols/snappy LICENSE
|
||||||
|
|
||||||
|
PORT_DIR := $(call port_dir,$(REP_DIR)/ports/snappy)
|
||||||
|
|
||||||
|
include/snappy:
|
||||||
|
mkdir -p $@
|
||||||
|
cp -r $(PORT_DIR)/$@/* $@
|
||||||
|
|
||||||
|
lib/symbols/snappy:
|
||||||
|
$(mirror_from_rep_dir)
|
||||||
|
|
||||||
|
LICENSE:
|
||||||
|
cp $(PORT_DIR)/src/lib/snappy/COPYING $@
|
||||||
1
recipes/api/snappy/hash
Normal file
1
recipes/api/snappy/hash
Normal file
@@ -0,0 +1 @@
|
|||||||
|
-
|
||||||
1
recipes/src/snappy/api
Normal file
1
recipes/src/snappy/api
Normal file
@@ -0,0 +1 @@
|
|||||||
|
snappy
|
||||||
16
recipes/src/snappy/content.mk
Normal file
16
recipes/src/snappy/content.mk
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
MIRROR_FROM_REP_DIR = lib/import/import-snappy.mk lib/mk/snappy.mk
|
||||||
|
|
||||||
|
content: $(MIRROR_FROM_REP_DIR) src/lib/snappy/target.mk LICENSE
|
||||||
|
|
||||||
|
$(MIRROR_FROM_REP_DIR):
|
||||||
|
$(mirror_from_rep_dir)
|
||||||
|
|
||||||
|
PORT_DIR := $(call port_dir,$(REP_DIR)/ports/snappy)
|
||||||
|
|
||||||
|
src/lib/snappy/target.mk:
|
||||||
|
mkdir -p src/lib/snappy
|
||||||
|
cp -r $(PORT_DIR)/src/lib/snappy/* src/lib/snappy
|
||||||
|
echo "LIBS = snappy" > $@
|
||||||
|
|
||||||
|
LICENSE:
|
||||||
|
cp $(PORT_DIR)/src/lib/snappy/COPYING $@
|
||||||
1
recipes/src/snappy/hash
Normal file
1
recipes/src/snappy/hash
Normal file
@@ -0,0 +1 @@
|
|||||||
|
-
|
||||||
3
recipes/src/snappy/used_apis
Normal file
3
recipes/src/snappy/used_apis
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
base
|
||||||
|
libc
|
||||||
|
stdcxx
|
||||||
100
src/lib/snappy/header.patch
Normal file
100
src/lib/snappy/header.patch
Normal file
@@ -0,0 +1,100 @@
|
|||||||
|
diff --git a/snappy-stubs-public.h b/snappy-stubs-public.h
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..8f47432
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/snappy-stubs-public.h
|
||||||
|
@@ -0,0 +1,94 @@
|
||||||
|
+// Copyright 2011 Google Inc. All Rights Reserved.
|
||||||
|
+// Author: sesse@google.com (Steinar H. Gunderson)
|
||||||
|
+//
|
||||||
|
+// 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_
|
||||||
|
+
|
||||||
|
+#if 1 // HAVE_STDINT_H
|
||||||
|
+#include <stdint.h>
|
||||||
|
+#endif // HAVE_STDDEF_H
|
||||||
|
+
|
||||||
|
+#if 1 // HAVE_STDDEF_H
|
||||||
|
+#include <stddef.h>
|
||||||
|
+#endif // HAVE_STDDEF_H
|
||||||
|
+
|
||||||
|
+#if 1 // HAVE_SYS_UIO_H
|
||||||
|
+#include <sys/uio.h>
|
||||||
|
+#endif // HAVE_SYS_UIO_H
|
||||||
|
+
|
||||||
|
+#define SNAPPY_MAJOR
|
||||||
|
+#define SNAPPY_MINOR
|
||||||
|
+#define SNAPPY_PATCHLEVEL
|
||||||
|
+#define SNAPPY_VERSION \
|
||||||
|
+ ((SNAPPY_MAJOR << 16) | (SNAPPY_MINOR << 8) | SNAPPY_PATCHLEVEL)
|
||||||
|
+
|
||||||
|
+#include <string>
|
||||||
|
+
|
||||||
|
+namespace snappy {
|
||||||
|
+
|
||||||
|
+#if 1 // HAVE_STDINT_H
|
||||||
|
+typedef int8_t int8;
|
||||||
|
+typedef uint8_t uint8;
|
||||||
|
+typedef int16_t int16;
|
||||||
|
+typedef uint16_t uint16;
|
||||||
|
+typedef int32_t int32;
|
||||||
|
+typedef uint32_t uint32;
|
||||||
|
+typedef int64_t int64;
|
||||||
|
+typedef uint64_t uint64;
|
||||||
|
+#else
|
||||||
|
+typedef signed char int8;
|
||||||
|
+typedef unsigned char uint8;
|
||||||
|
+typedef short int16;
|
||||||
|
+typedef unsigned short uint16;
|
||||||
|
+typedef int int32;
|
||||||
|
+typedef unsigned int uint32;
|
||||||
|
+typedef long long int64;
|
||||||
|
+typedef unsigned long long uint64;
|
||||||
|
+#endif // HAVE_STDINT_H
|
||||||
|
+
|
||||||
|
+typedef std::string string;
|
||||||
|
+
|
||||||
|
+#if !1 // !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_
|
||||||
Reference in New Issue
Block a user