snappy_ext 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/ext/snappy/extconf.rb +36 -0
- data/ext/snappy/snappy_ext.cc +131 -0
- data/ext/snappy/vendor/snappy-1.0.0/AUTHORS +1 -0
- data/ext/snappy/vendor/snappy-1.0.0/COPYING +28 -0
- data/ext/snappy/vendor/snappy-1.0.0/ChangeLog +3 -0
- data/ext/snappy/vendor/snappy-1.0.0/INSTALL +230 -0
- data/ext/snappy/vendor/snappy-1.0.0/Makefile.am +24 -0
- data/ext/snappy/vendor/snappy-1.0.0/Makefile.in +926 -0
- data/ext/snappy/vendor/snappy-1.0.0/NEWS +3 -0
- data/ext/snappy/vendor/snappy-1.0.0/README +132 -0
- data/ext/snappy/vendor/snappy-1.0.0/aclocal.m4 +9076 -0
- data/ext/snappy/vendor/snappy-1.0.0/autogen.sh +8 -0
- data/ext/snappy/vendor/snappy-1.0.0/compile +99 -0
- data/ext/snappy/vendor/snappy-1.0.0/config.guess +1466 -0
- data/ext/snappy/vendor/snappy-1.0.0/config.h.in +107 -0
- data/ext/snappy/vendor/snappy-1.0.0/config.sub +1579 -0
- data/ext/snappy/vendor/snappy-1.0.0/configure +17962 -0
- data/ext/snappy/vendor/snappy-1.0.0/configure.ac +99 -0
- data/ext/snappy/vendor/snappy-1.0.0/depcomp +530 -0
- data/ext/snappy/vendor/snappy-1.0.0/install-sh +323 -0
- data/ext/snappy/vendor/snappy-1.0.0/ltmain.sh +8413 -0
- data/ext/snappy/vendor/snappy-1.0.0/m4/gtest.m4 +74 -0
- data/ext/snappy/vendor/snappy-1.0.0/missing +360 -0
- data/ext/snappy/vendor/snappy-1.0.0/mkinstalldirs +158 -0
- data/ext/snappy/vendor/snappy-1.0.0/snappy-internal.h +136 -0
- data/ext/snappy/vendor/snappy-1.0.0/snappy-sinksource.cc +46 -0
- data/ext/snappy/vendor/snappy-1.0.0/snappy-sinksource.h +110 -0
- data/ext/snappy/vendor/snappy-1.0.0/snappy-stubs-internal.cc +28 -0
- data/ext/snappy/vendor/snappy-1.0.0/snappy-stubs-internal.h +457 -0
- data/ext/snappy/vendor/snappy-1.0.0/snappy-stubs-public.h +59 -0
- data/ext/snappy/vendor/snappy-1.0.0/snappy-stubs-public.h.in +59 -0
- data/ext/snappy/vendor/snappy-1.0.0/snappy-test.cc +523 -0
- data/ext/snappy/vendor/snappy-1.0.0/snappy-test.h +458 -0
- data/ext/snappy/vendor/snappy-1.0.0/snappy.cc +1001 -0
- data/ext/snappy/vendor/snappy-1.0.0/snappy.h +141 -0
- data/ext/snappy/vendor/snappy-1.0.0/snappy_unittest.cc +1073 -0
- data/ext/snappy/version.h +4 -0
- data/snappy_ext.gemspec +58 -0
- metadata +99 -0
@@ -0,0 +1,36 @@
|
|
1
|
+
require 'mkmf'
|
2
|
+
|
3
|
+
# Compile the embedded snappy- lib
|
4
|
+
vendor_dir = File.join(File.dirname(__FILE__)), "vendor"
|
5
|
+
snappy_dir = Dir[File.join(vendor_dir, "snappy-*")].first
|
6
|
+
old_pwd = Dir.pwd
|
7
|
+
begin
|
8
|
+
Dir.chdir(snappy_dir)
|
9
|
+
|
10
|
+
fork {
|
11
|
+
exec("./configure")
|
12
|
+
}; Process.wait; exit(1) unless $?.success?
|
13
|
+
fork {
|
14
|
+
exec("make")
|
15
|
+
}; Process.wait; exit(1) unless $?.success?
|
16
|
+
|
17
|
+
ensure
|
18
|
+
Dir.chdir(old_pwd)
|
19
|
+
end
|
20
|
+
|
21
|
+
have_header("ruby/st.h") || have_header("st.h")
|
22
|
+
|
23
|
+
# Pull in Snappy includes
|
24
|
+
$INCFLAGS << " -I#{snappy_dir}"
|
25
|
+
|
26
|
+
# Link with the Snappy object files
|
27
|
+
Dir["#{snappy_dir}/.libs/*.o"].each { |o|
|
28
|
+
$LOCAL_LIBS << " #{o}"
|
29
|
+
}
|
30
|
+
|
31
|
+
# Ensure we're linked with CXX, or it all breaks, due to libstdc++ and such
|
32
|
+
#CONFIG['LDSHARED'] = '$(CXX) -dynamiclib'
|
33
|
+
|
34
|
+
have_library("stdc++")
|
35
|
+
dir_config('snappy')
|
36
|
+
create_makefile('snappy_ext')
|
@@ -0,0 +1,131 @@
|
|
1
|
+
#include <snappy.h>
|
2
|
+
#include "version.h"
|
3
|
+
|
4
|
+
#include "ruby.h"
|
5
|
+
|
6
|
+
#if HAVE_RUBY_ST_H
|
7
|
+
#include "ruby/st.h"
|
8
|
+
#endif
|
9
|
+
#if HAVE_ST_H
|
10
|
+
#include "st.h"
|
11
|
+
#endif
|
12
|
+
|
13
|
+
#include <string.h>
|
14
|
+
#include <stdio.h>
|
15
|
+
|
16
|
+
#ifdef HAVE_RUBY_ENCODING_H
|
17
|
+
#include <ruby/encoding.h>
|
18
|
+
int binary_string_encoding;
|
19
|
+
#endif
|
20
|
+
|
21
|
+
VALUE binary_string_for_buffer(VALUE input, char * buf, size_t len)
|
22
|
+
{
|
23
|
+
// Create the string
|
24
|
+
VALUE str = rb_str_new5(input, buf, len);
|
25
|
+
|
26
|
+
#ifdef HAVE_RUBY_ENCODING_H
|
27
|
+
// Set the encoding
|
28
|
+
rb_enc_associate_index(str, binary_string_encoding);
|
29
|
+
#endif
|
30
|
+
|
31
|
+
// Copy taintedness
|
32
|
+
OBJ_INFECT(input, str);
|
33
|
+
|
34
|
+
return str;
|
35
|
+
}
|
36
|
+
|
37
|
+
/*
|
38
|
+
* call-seq:
|
39
|
+
* compress(string) -> string
|
40
|
+
*
|
41
|
+
* returns a Snappy-compressed string
|
42
|
+
*/
|
43
|
+
extern "C"
|
44
|
+
VALUE snappy_ext_compress(VALUE self, VALUE string)
|
45
|
+
{
|
46
|
+
string = StringValue(string);
|
47
|
+
|
48
|
+
char * in_buf = RSTRING_PTR(string);
|
49
|
+
size_t in_len = RSTRING_LEN(string);
|
50
|
+
|
51
|
+
char * out_buf = (char *)malloc(snappy::MaxCompressedLength(in_len));
|
52
|
+
size_t out_len = 0;
|
53
|
+
|
54
|
+
snappy::RawCompress(in_buf, in_len, out_buf, &out_len);
|
55
|
+
|
56
|
+
// Shrink the buffer
|
57
|
+
out_buf = (char *)realloc(out_buf, out_len);
|
58
|
+
|
59
|
+
// Encase the output buffer in a String object without copying
|
60
|
+
return binary_string_for_buffer(string, out_buf, out_len);
|
61
|
+
}
|
62
|
+
|
63
|
+
/*
|
64
|
+
* call-seq:
|
65
|
+
* uncompress(string) -> string
|
66
|
+
*
|
67
|
+
* Returns a decompressed string, or raises ArgumentError if the compressed
|
68
|
+
* data is somehow corrupt
|
69
|
+
*/
|
70
|
+
extern "C"
|
71
|
+
VALUE snappy_ext_uncompress(VALUE self, VALUE string)
|
72
|
+
{
|
73
|
+
string = StringValue(string);
|
74
|
+
|
75
|
+
char * in_buf = RSTRING_PTR(string);
|
76
|
+
size_t in_len = RSTRING_LEN(string);
|
77
|
+
|
78
|
+
size_t out_len = 0;
|
79
|
+
|
80
|
+
if (!snappy::GetUncompressedLength(in_buf, in_len, &out_len)) {
|
81
|
+
rb_raise(rb_eArgError, "invalid compressed data");
|
82
|
+
}
|
83
|
+
|
84
|
+
char * out_buf = (char*)malloc(out_len);
|
85
|
+
|
86
|
+
if (!snappy::RawUncompress(in_buf, in_len, out_buf)) {
|
87
|
+
free(out_buf);
|
88
|
+
rb_raise(rb_eArgError, "invalid compressed data");
|
89
|
+
}
|
90
|
+
|
91
|
+
return binary_string_for_buffer(string, out_buf, out_len);
|
92
|
+
}
|
93
|
+
|
94
|
+
extern "C"
|
95
|
+
void Init_snappy_ext()
|
96
|
+
{
|
97
|
+
VALUE snappy_sym, snappy, snappy_ext;
|
98
|
+
|
99
|
+
snappy_sym = rb_intern("Snappy");
|
100
|
+
|
101
|
+
#ifdef HAVE_RUBY_ENCODING_H
|
102
|
+
// Look up the BINARY encoding
|
103
|
+
binary_string_encoding = rb_enc_find_index("BINARY");
|
104
|
+
#endif
|
105
|
+
|
106
|
+
// Get or define ::Snappy
|
107
|
+
if (rb_const_defined(rb_cObject, snappy_sym)) {
|
108
|
+
snappy = rb_const_get(rb_cObject, rb_intern("Snappy"));
|
109
|
+
} else {
|
110
|
+
snappy = rb_define_module("Snappy");
|
111
|
+
}
|
112
|
+
|
113
|
+
// Define Snappy::Ext
|
114
|
+
snappy_ext = rb_define_module_under(snappy, "Ext");
|
115
|
+
|
116
|
+
// Pass in our version constants
|
117
|
+
rb_define_const(snappy_ext, "Version", rb_str_new2(GEM_VERSION));
|
118
|
+
{
|
119
|
+
char version[16];
|
120
|
+
snprintf(version, sizeof(version), "%u.%u.%u",
|
121
|
+
SNAPPY_VERSION >> 16 & 0xff, SNAPPY_VERSION >> 8 & 0xff, SNAPPY_VERSION & 0xff
|
122
|
+
);
|
123
|
+
rb_define_const(snappy_ext, "SnappyVersion", rb_str_new2(version));
|
124
|
+
}
|
125
|
+
|
126
|
+
// Add our methods to both Snappy::Ext and Snappy
|
127
|
+
rb_define_module_function(snappy, "compress", RUBY_METHOD_FUNC(snappy_ext_compress), 1);
|
128
|
+
rb_define_module_function(snappy, "uncompress", RUBY_METHOD_FUNC(snappy_ext_uncompress), 1);
|
129
|
+
rb_define_module_function(snappy_ext, "compress", RUBY_METHOD_FUNC(snappy_ext_compress), 1);
|
130
|
+
rb_define_module_function(snappy_ext, "uncompress", RUBY_METHOD_FUNC(snappy_ext_uncompress), 1);
|
131
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
opensource@google.com
|
@@ -0,0 +1,28 @@
|
|
1
|
+
Copyright (c) 2011, Google Inc.
|
2
|
+
All rights reserved.
|
3
|
+
|
4
|
+
Redistribution and use in source and binary forms, with or without
|
5
|
+
modification, are permitted provided that the following conditions are
|
6
|
+
met:
|
7
|
+
|
8
|
+
* Redistributions of source code must retain the above copyright
|
9
|
+
notice, this list of conditions and the following disclaimer.
|
10
|
+
* Redistributions in binary form must reproduce the above
|
11
|
+
copyright notice, this list of conditions and the following disclaimer
|
12
|
+
in the documentation and/or other materials provided with the
|
13
|
+
distribution.
|
14
|
+
* Neither the name of Google Inc. nor the names of its
|
15
|
+
contributors may be used to endorse or promote products derived from
|
16
|
+
this software without specific prior written permission.
|
17
|
+
|
18
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
19
|
+
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
20
|
+
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
21
|
+
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
22
|
+
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
23
|
+
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
24
|
+
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
25
|
+
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
26
|
+
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
27
|
+
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
28
|
+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
@@ -0,0 +1,230 @@
|
|
1
|
+
Copyright 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software
|
2
|
+
Foundation, Inc.
|
3
|
+
|
4
|
+
This file is free documentation; the Free Software Foundation gives
|
5
|
+
unlimited permission to copy, distribute and modify it.
|
6
|
+
|
7
|
+
|
8
|
+
Basic Installation
|
9
|
+
==================
|
10
|
+
|
11
|
+
These are generic installation instructions.
|
12
|
+
|
13
|
+
The `configure' shell script attempts to guess correct values for
|
14
|
+
various system-dependent variables used during compilation. It uses
|
15
|
+
those values to create a `Makefile' in each directory of the package.
|
16
|
+
It may also create one or more `.h' files containing system-dependent
|
17
|
+
definitions. Finally, it creates a shell script `config.status' that
|
18
|
+
you can run in the future to recreate the current configuration, and a
|
19
|
+
file `config.log' containing compiler output (useful mainly for
|
20
|
+
debugging `configure').
|
21
|
+
|
22
|
+
It can also use an optional file (typically called `config.cache'
|
23
|
+
and enabled with `--cache-file=config.cache' or simply `-C') that saves
|
24
|
+
the results of its tests to speed up reconfiguring. (Caching is
|
25
|
+
disabled by default to prevent problems with accidental use of stale
|
26
|
+
cache files.)
|
27
|
+
|
28
|
+
If you need to do unusual things to compile the package, please try
|
29
|
+
to figure out how `configure' could check whether to do them, and mail
|
30
|
+
diffs or instructions to the address given in the `README' so they can
|
31
|
+
be considered for the next release. If you are using the cache, and at
|
32
|
+
some point `config.cache' contains results you don't want to keep, you
|
33
|
+
may remove or edit it.
|
34
|
+
|
35
|
+
The file `configure.ac' (or `configure.in') is used to create
|
36
|
+
`configure' by a program called `autoconf'. You only need
|
37
|
+
`configure.ac' if you want to change it or regenerate `configure' using
|
38
|
+
a newer version of `autoconf'.
|
39
|
+
|
40
|
+
The simplest way to compile this package is:
|
41
|
+
|
42
|
+
1. `cd' to the directory containing the package's source code and type
|
43
|
+
`./configure' to configure the package for your system. If you're
|
44
|
+
using `csh' on an old version of System V, you might need to type
|
45
|
+
`sh ./configure' instead to prevent `csh' from trying to execute
|
46
|
+
`configure' itself.
|
47
|
+
|
48
|
+
Running `configure' takes awhile. While running, it prints some
|
49
|
+
messages telling which features it is checking for.
|
50
|
+
|
51
|
+
2. Type `make' to compile the package.
|
52
|
+
|
53
|
+
3. Optionally, type `make check' to run any self-tests that come with
|
54
|
+
the package.
|
55
|
+
|
56
|
+
4. Type `make install' to install the programs and any data files and
|
57
|
+
documentation.
|
58
|
+
|
59
|
+
5. You can remove the program binaries and object files from the
|
60
|
+
source code directory by typing `make clean'. To also remove the
|
61
|
+
files that `configure' created (so you can compile the package for
|
62
|
+
a different kind of computer), type `make distclean'. There is
|
63
|
+
also a `make maintainer-clean' target, but that is intended mainly
|
64
|
+
for the package's developers. If you use it, you may have to get
|
65
|
+
all sorts of other programs in order to regenerate files that came
|
66
|
+
with the distribution.
|
67
|
+
|
68
|
+
Compilers and Options
|
69
|
+
=====================
|
70
|
+
|
71
|
+
Some systems require unusual options for compilation or linking that
|
72
|
+
the `configure' script does not know about. Run `./configure --help'
|
73
|
+
for details on some of the pertinent environment variables.
|
74
|
+
|
75
|
+
You can give `configure' initial values for configuration parameters
|
76
|
+
by setting variables in the command line or in the environment. Here
|
77
|
+
is an example:
|
78
|
+
|
79
|
+
./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
|
80
|
+
|
81
|
+
*Note Defining Variables::, for more details.
|
82
|
+
|
83
|
+
Compiling For Multiple Architectures
|
84
|
+
====================================
|
85
|
+
|
86
|
+
You can compile the package for more than one kind of computer at the
|
87
|
+
same time, by placing the object files for each architecture in their
|
88
|
+
own directory. To do this, you must use a version of `make' that
|
89
|
+
supports the `VPATH' variable, such as GNU `make'. `cd' to the
|
90
|
+
directory where you want the object files and executables to go and run
|
91
|
+
the `configure' script. `configure' automatically checks for the
|
92
|
+
source code in the directory that `configure' is in and in `..'.
|
93
|
+
|
94
|
+
If you have to use a `make' that does not support the `VPATH'
|
95
|
+
variable, you have to compile the package for one architecture at a
|
96
|
+
time in the source code directory. After you have installed the
|
97
|
+
package for one architecture, use `make distclean' before reconfiguring
|
98
|
+
for another architecture.
|
99
|
+
|
100
|
+
Installation Names
|
101
|
+
==================
|
102
|
+
|
103
|
+
By default, `make install' will install the package's files in
|
104
|
+
`/usr/local/bin', `/usr/local/man', etc. You can specify an
|
105
|
+
installation prefix other than `/usr/local' by giving `configure' the
|
106
|
+
option `--prefix=PATH'.
|
107
|
+
|
108
|
+
You can specify separate installation prefixes for
|
109
|
+
architecture-specific files and architecture-independent files. If you
|
110
|
+
give `configure' the option `--exec-prefix=PATH', the package will use
|
111
|
+
PATH as the prefix for installing programs and libraries.
|
112
|
+
Documentation and other data files will still use the regular prefix.
|
113
|
+
|
114
|
+
In addition, if you use an unusual directory layout you can give
|
115
|
+
options like `--bindir=PATH' to specify different values for particular
|
116
|
+
kinds of files. Run `configure --help' for a list of the directories
|
117
|
+
you can set and what kinds of files go in them.
|
118
|
+
|
119
|
+
If the package supports it, you can cause programs to be installed
|
120
|
+
with an extra prefix or suffix on their names by giving `configure' the
|
121
|
+
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
|
122
|
+
|
123
|
+
Optional Features
|
124
|
+
=================
|
125
|
+
|
126
|
+
Some packages pay attention to `--enable-FEATURE' options to
|
127
|
+
`configure', where FEATURE indicates an optional part of the package.
|
128
|
+
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
|
129
|
+
is something like `gnu-as' or `x' (for the X Window System). The
|
130
|
+
`README' should mention any `--enable-' and `--with-' options that the
|
131
|
+
package recognizes.
|
132
|
+
|
133
|
+
For packages that use the X Window System, `configure' can usually
|
134
|
+
find the X include and library files automatically, but if it doesn't,
|
135
|
+
you can use the `configure' options `--x-includes=DIR' and
|
136
|
+
`--x-libraries=DIR' to specify their locations.
|
137
|
+
|
138
|
+
Specifying the System Type
|
139
|
+
==========================
|
140
|
+
|
141
|
+
There may be some features `configure' cannot figure out
|
142
|
+
automatically, but needs to determine by the type of machine the package
|
143
|
+
will run on. Usually, assuming the package is built to be run on the
|
144
|
+
_same_ architectures, `configure' can figure that out, but if it prints
|
145
|
+
a message saying it cannot guess the machine type, give it the
|
146
|
+
`--build=TYPE' option. TYPE can either be a short name for the system
|
147
|
+
type, such as `sun4', or a canonical name which has the form:
|
148
|
+
|
149
|
+
CPU-COMPANY-SYSTEM
|
150
|
+
|
151
|
+
where SYSTEM can have one of these forms:
|
152
|
+
|
153
|
+
OS KERNEL-OS
|
154
|
+
|
155
|
+
See the file `config.sub' for the possible values of each field. If
|
156
|
+
`config.sub' isn't included in this package, then this package doesn't
|
157
|
+
need to know the machine type.
|
158
|
+
|
159
|
+
If you are _building_ compiler tools for cross-compiling, you should
|
160
|
+
use the `--target=TYPE' option to select the type of system they will
|
161
|
+
produce code for.
|
162
|
+
|
163
|
+
If you want to _use_ a cross compiler, that generates code for a
|
164
|
+
platform different from the build platform, you should specify the
|
165
|
+
"host" platform (i.e., that on which the generated programs will
|
166
|
+
eventually be run) with `--host=TYPE'.
|
167
|
+
|
168
|
+
Sharing Defaults
|
169
|
+
================
|
170
|
+
|
171
|
+
If you want to set default values for `configure' scripts to share,
|
172
|
+
you can create a site shell script called `config.site' that gives
|
173
|
+
default values for variables like `CC', `cache_file', and `prefix'.
|
174
|
+
`configure' looks for `PREFIX/share/config.site' if it exists, then
|
175
|
+
`PREFIX/etc/config.site' if it exists. Or, you can set the
|
176
|
+
`CONFIG_SITE' environment variable to the location of the site script.
|
177
|
+
A warning: not all `configure' scripts look for a site script.
|
178
|
+
|
179
|
+
Defining Variables
|
180
|
+
==================
|
181
|
+
|
182
|
+
Variables not defined in a site shell script can be set in the
|
183
|
+
environment passed to `configure'. However, some packages may run
|
184
|
+
configure again during the build, and the customized values of these
|
185
|
+
variables may be lost. In order to avoid this problem, you should set
|
186
|
+
them in the `configure' command line, using `VAR=value'. For example:
|
187
|
+
|
188
|
+
./configure CC=/usr/local2/bin/gcc
|
189
|
+
|
190
|
+
will cause the specified gcc to be used as the C compiler (unless it is
|
191
|
+
overridden in the site shell script).
|
192
|
+
|
193
|
+
`configure' Invocation
|
194
|
+
======================
|
195
|
+
|
196
|
+
`configure' recognizes the following options to control how it
|
197
|
+
operates.
|
198
|
+
|
199
|
+
`--help'
|
200
|
+
`-h'
|
201
|
+
Print a summary of the options to `configure', and exit.
|
202
|
+
|
203
|
+
`--version'
|
204
|
+
`-V'
|
205
|
+
Print the version of Autoconf used to generate the `configure'
|
206
|
+
script, and exit.
|
207
|
+
|
208
|
+
`--cache-file=FILE'
|
209
|
+
Enable the cache: use and save the results of the tests in FILE,
|
210
|
+
traditionally `config.cache'. FILE defaults to `/dev/null' to
|
211
|
+
disable caching.
|
212
|
+
|
213
|
+
`--config-cache'
|
214
|
+
`-C'
|
215
|
+
Alias for `--cache-file=config.cache'.
|
216
|
+
|
217
|
+
`--quiet'
|
218
|
+
`--silent'
|
219
|
+
`-q'
|
220
|
+
Do not print messages saying which checks are being made. To
|
221
|
+
suppress all normal output, redirect it to `/dev/null' (any error
|
222
|
+
messages will still be shown).
|
223
|
+
|
224
|
+
`--srcdir=DIR'
|
225
|
+
Look for the package's source code in directory DIR. Usually
|
226
|
+
`configure' can determine that directory automatically.
|
227
|
+
|
228
|
+
`configure' also accepts some other, not widely useful, options. Run
|
229
|
+
`configure --help' for more details.
|
230
|
+
|
@@ -0,0 +1,24 @@
|
|
1
|
+
ACLOCAL_AMFLAGS = -I m4
|
2
|
+
|
3
|
+
# Library.
|
4
|
+
lib_LTLIBRARIES = libsnappy.la
|
5
|
+
libsnappy_la_SOURCES = snappy.cc snappy-sinksource.cc snappy-stubs-internal.cc
|
6
|
+
libsnappy_la_LDFLAGS = $(EXTRA_LIBSNAPPY_LDFLAGS)
|
7
|
+
|
8
|
+
include_HEADERS = snappy.h snappy-sinksource.h snappy-stubs-public.h
|
9
|
+
noinst_HEADERS = snappy-internal.h snappy-stubs-internal.h snappy-test.h
|
10
|
+
|
11
|
+
# Unit tests and benchmarks.
|
12
|
+
snappy_unittest_CPPFLAGS = $(gflags_CFLAGS) $(GTEST_CPPFLAGS)
|
13
|
+
snappy_unittest_CXXFLAGS = $(GTEST_CPPFLAGS)
|
14
|
+
snappy_unittest_SOURCES = snappy_unittest.cc snappy-test.cc
|
15
|
+
snappy_unittest_LDFLAGS = $(GTEST_LDFLAGS)
|
16
|
+
snappy_unittest_LDADD = libsnappy.la $(gflags_LIBS) $(GTEST_LIBS)
|
17
|
+
TESTS = snappy_unittest
|
18
|
+
noinst_PROGRAMS = $(TESTS)
|
19
|
+
|
20
|
+
EXTRA_DIST = autogen.sh testdata/alice29.txt testdata/asyoulik.txt testdata/baddata1.snappy testdata/baddata2.snappy testdata/baddata3.snappy testdata/cp.html testdata/fields.c testdata/geo.protodata testdata/grammar.lsp testdata/house.jpg testdata/html testdata/html_x_4 testdata/kennedy.xls testdata/kppkn.gtb testdata/lcet10.txt testdata/mapreduce-osdi-1.pdf testdata/plrabn12.txt testdata/ptt5 testdata/sum testdata/urls.10K testdata/xargs.1
|
21
|
+
dist_doc_DATA = ChangeLog COPYING INSTALL NEWS README
|
22
|
+
|
23
|
+
libtool: $(LIBTOOL_DEPS)
|
24
|
+
$(SHELL) ./config.status --recheck
|