snappy 0.0.0 → 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.0
1
+ 0.0.1
@@ -37,6 +37,9 @@ void Init_snappy()
37
37
  rb_define_singleton_method(rb_mSnappy, "deflate", (VALUE (*)(...))snappy_deflate, 1);
38
38
  rb_define_singleton_method(rb_mSnappy, "inflate", (VALUE (*)(...))snappy_inflate, 1);
39
39
 
40
+ rb_define_singleton_method(rb_mSnappy, "compress", (VALUE (*)(...))snappy_deflate, 1);
41
+ rb_define_singleton_method(rb_mSnappy, "uncompress", (VALUE (*)(...))snappy_inflate, 1);
42
+
40
43
  i_to_s = rb_intern("to_s");
41
44
  }
42
45
  }
@@ -1,5 +1,52 @@
1
1
  require 'mkmf'
2
+ require 'fileutils'
2
3
 
3
- have_library('snappy')
4
- have_library('stdc++')
5
- create_makefile('snappy')
4
+ unless have_library 'snappy'
5
+ have_header 'sys/mman.h'
6
+
7
+ have_header 'stdint.h'
8
+
9
+ have_header 'stddef.h'
10
+
11
+ if try_run 'int main(int argc, char** argv){ return __builtin_expect(1, 1) ? 0 : 1; }'
12
+ $defs << '-DHAVE_BUILTIN_EXPECT'
13
+ end
14
+
15
+ if try_run 'int main(int argc, char** argv){ return (__builtin_ctzll(0x100000000LL) == 32) ? 0 : 1; }'
16
+ $defs << '-DHAVE_BUILTIN_CTZ'
17
+ end
18
+
19
+ dst = File.expand_path Dir.pwd
20
+
21
+ ver = "1.0.1"
22
+ src = "snappy-#{ver}"
23
+ FileUtils.rm_rf src
24
+
25
+ system "curl -s http://snappy.googlecode.com/files/#{src}.tar.gz | tar xz"
26
+
27
+ %w(
28
+ snappy-internal.h
29
+ snappy-sinksource.cc
30
+ snappy-sinksource.h
31
+ snappy-stubs-internal.cc
32
+ snappy-stubs-internal.h
33
+ snappy.cc
34
+ snappy.h
35
+ ).each do |file|
36
+ FileUtils.copy File.join(src, file), File.join(dst, file)
37
+ end
38
+
39
+ hdr = File.open(File.join(src, 'snappy-stubs-public.h.in'), 'rb'){ |f| f.read }
40
+ {
41
+ %r'#if @ac_cv_have_stdint_h@' => '#ifdef HAVE_STDINT_H',
42
+ %r'#if @ac_cv_have_stddef_h@' => '#ifdef HAVE_STDDEF_H',
43
+ %r'@SNAPPY_MAJOR@' => '1',
44
+ %r'@SNAPPY_MINOR@' => '0',
45
+ %r'@SNAPPY_PATCHLEVEL@' => '1',
46
+ }.each { |ptn, str| hdr.gsub! ptn, str }
47
+ File.open(File.join(dst, 'snappy-stubs-public.h'), 'wb'){ |f| f.write hdr }
48
+
49
+ end
50
+
51
+ have_library 'stdc++'
52
+ create_makefile 'snappy'
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{snappy}
8
- s.version = "0.0.0"
8
+ s.version = "0.0.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["miyucy"]
12
- s.date = %q{2011-03-24}
12
+ s.date = %q{2011-03-29}
13
13
  s.description = %q{libsnappy binding for Ruby}
14
14
  s.email = %q{miyucy@gmail.com}
15
15
  s.extensions = ["ext/extconf.rb"]
@@ -26,8 +26,8 @@ Gem::Specification.new do |s|
26
26
  "README.rdoc",
27
27
  "Rakefile",
28
28
  "VERSION",
29
+ "ext/api.cc",
29
30
  "ext/extconf.rb",
30
- "ext/snappy.cc",
31
31
  "snappy.gemspec",
32
32
  "spec/snappy_spec.rb",
33
33
  "spec/spec_helper.rb"
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: snappy
3
3
  version: !ruby/object:Gem::Version
4
- hash: 31
4
+ hash: 29
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 0
10
- version: 0.0.0
9
+ - 1
10
+ version: 0.0.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - miyucy
@@ -15,13 +15,11 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-03-24 00:00:00 +09:00
18
+ date: 2011-03-29 00:00:00 +09:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
- prerelease: false
23
- type: :development
24
- requirement: &id001 !ruby/object:Gem::Requirement
22
+ version_requirements: &id001 !ruby/object:Gem::Requirement
25
23
  none: false
26
24
  requirements:
27
25
  - - ~>
@@ -32,12 +30,12 @@ dependencies:
32
30
  - 3
33
31
  - 0
34
32
  version: 2.3.0
35
- name: rspec
36
- version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
38
33
  prerelease: false
39
34
  type: :development
40
- requirement: &id002 !ruby/object:Gem::Requirement
35
+ requirement: *id001
36
+ name: rspec
37
+ - !ruby/object:Gem::Dependency
38
+ version_requirements: &id002 !ruby/object:Gem::Requirement
41
39
  none: false
42
40
  requirements:
43
41
  - - ~>
@@ -48,12 +46,12 @@ dependencies:
48
46
  - 0
49
47
  - 0
50
48
  version: 1.0.0
51
- name: bundler
52
- version_requirements: *id002
53
- - !ruby/object:Gem::Dependency
54
49
  prerelease: false
55
50
  type: :development
56
- requirement: &id003 !ruby/object:Gem::Requirement
51
+ requirement: *id002
52
+ name: bundler
53
+ - !ruby/object:Gem::Dependency
54
+ version_requirements: &id003 !ruby/object:Gem::Requirement
57
55
  none: false
58
56
  requirements:
59
57
  - - ~>
@@ -64,12 +62,12 @@ dependencies:
64
62
  - 5
65
63
  - 2
66
64
  version: 1.5.2
67
- name: jeweler
68
- version_requirements: *id003
69
- - !ruby/object:Gem::Dependency
70
65
  prerelease: false
71
66
  type: :development
72
- requirement: &id004 !ruby/object:Gem::Requirement
67
+ requirement: *id003
68
+ name: jeweler
69
+ - !ruby/object:Gem::Dependency
70
+ version_requirements: &id004 !ruby/object:Gem::Requirement
73
71
  none: false
74
72
  requirements:
75
73
  - - ">="
@@ -78,8 +76,10 @@ dependencies:
78
76
  segments:
79
77
  - 0
80
78
  version: "0"
79
+ prerelease: false
80
+ type: :development
81
+ requirement: *id004
81
82
  name: rcov
82
- version_requirements: *id004
83
83
  description: libsnappy binding for Ruby
84
84
  email: miyucy@gmail.com
85
85
  executables: []
@@ -98,8 +98,8 @@ files:
98
98
  - README.rdoc
99
99
  - Rakefile
100
100
  - VERSION
101
+ - ext/api.cc
101
102
  - ext/extconf.rb
102
- - ext/snappy.cc
103
103
  - snappy.gemspec
104
104
  - spec/snappy_spec.rb
105
105
  - spec/spec_helper.rb