libv8 3.11.8.11 → 3.11.8.12

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/Rakefile CHANGED
@@ -28,7 +28,6 @@ task :checkout do
28
28
  # Based on: https://chromiumcodereview.appspot.com/10079030/patch/1/2
29
29
  sh "patch -N -p0 -d vendor/v8 < patches/add-freebsd9-and-freebsd10-to-gyp-GetFlavor.patch"
30
30
  sh "patch -N -p1 -d vendor/v8 < patches/fPIC-on-x64.patch"
31
- sh "patch -N -p1 -d vendor/v8 < patches/gcc42-on-freebsd.patch" if RUBY_PLATFORM.include?("freebsd") && !system("pkg_info | grep gcc-4")
32
31
  end
33
32
 
34
33
  desc "compile v8 via the ruby extension mechanism"
@@ -42,7 +41,7 @@ task :manual_compile do
42
41
  require File.expand_path '../ext/libv8/arch.rb', __FILE__
43
42
  include Libv8::Arch
44
43
  Dir.chdir(V8_Source) do
45
- sh %Q{#{make} -j2 #{libv8_arch}.release GYPFLAGS="-Dhost_arch=#{libv8_arch}"}
44
+ sh %Q{#{make} -j2 #{libv8_arch}.release ARFLAGS.target=crs}
46
45
  end
47
46
  end
48
47
 
@@ -81,5 +80,12 @@ task :clean do
81
80
  sh "cd #{V8_Source} && git checkout -f && git clean -dxf"
82
81
  end
83
82
 
83
+ desc "build a binary on heroku (you must have vulcan configured for this)"
84
+ task :vulcan => directory("tmp/vulcan") do
85
+ Dir.chdir('tmp/vulcan') do
86
+ sh "vulcan build -v -c 'LANG=en_US.UTF-8 export BIN=/`pwd`/bin && export GEM=$BIN/gem && curl https://s3.amazonaws.com/heroku-buildpack-ruby/ruby-1.9.3.tgz > ruby-1.9.3.tgz && tar xf ruby-1.9.3.tgz && cd /tmp && $GEM fetch libv8 --platform=ruby --version=#{Libv8::VERSION} && $GEM unpack libv8*.gem && $GEM install bundler -n $BIN --no-ri --no-rdoc && cd libv8-#{Libv8::VERSION} && $BIN/bundle && $BIN/bundle exec rake binary' -p /tmp/libv8-#{Libv8::VERSION}"
87
+ end
88
+ end
89
+
84
90
  task :default => [:checkout, :compile, :spec]
85
91
  task :build => [:clean, :checkout]
@@ -1,3 +1,4 @@
1
+ require 'mkmf'
1
2
  require File.expand_path '../compiler', __FILE__
2
3
  require File.expand_path '../arch', __FILE__
3
4
  require File.expand_path '../make', __FILE__
@@ -8,11 +9,24 @@ module Libv8
8
9
  include Libv8::Compiler
9
10
  include Libv8::Make
10
11
 
11
- def build_libv8!
12
+ def make_flags(*flags)
12
13
  profile = enable_config('debug') ? 'debug' : 'release'
13
14
 
15
+ # FreeBSD uses gcc 4.2 by default which leads to
16
+ # compilation failures due to warnings about aliasing.
17
+ # http://svnweb.freebsd.org/ports/head/lang/v8/Makefile?view=markup
18
+ flags << "strictaliasing=off" if RUBY_PLATFORM.include?("freebsd") and !check_gcc_compiler(compiler)
19
+
20
+ # Fix Malformed archive issue caused by GYP creating thin archives by
21
+ # default.
22
+ flags << "ARFLAGS.target=crs"
23
+
24
+ "#{libv8_arch}.#{profile} #{flags.join ' '}"
25
+ end
26
+
27
+ def build_libv8!
14
28
  Dir.chdir(File.expand_path '../../../vendor/v8', __FILE__) do
15
- puts `env CXX=#{compiler} LINK=#{compiler} #{make} #{libv8_arch}.#{profile} GYPFLAGS="-Dhost_arch=#{libv8_arch}"`
29
+ puts `env CXX=#{compiler} LINK=#{compiler} #{make} #{make_flags}`
16
30
  end
17
31
  return $?.exitstatus
18
32
  end
@@ -1,3 +1,3 @@
1
1
  module Libv8
2
- VERSION = "3.11.8.11"
2
+ VERSION = "3.11.8.12"
3
3
  end
@@ -28,4 +28,5 @@ Gem::Specification.new do |s|
28
28
  s.add_development_dependency "rake-compiler"
29
29
  s.add_development_dependency "rspec"
30
30
  s.add_development_dependency "rspec-spies"
31
+ s.add_development_dependency "vulcan"
31
32
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: libv8
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.11.8.11
4
+ version: 3.11.8.12
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-01-07 00:00:00.000000000 Z
12
+ date: 2013-01-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
@@ -75,6 +75,22 @@ dependencies:
75
75
  - - ! '>='
76
76
  - !ruby/object:Gem::Version
77
77
  version: '0'
78
+ - !ruby/object:Gem::Dependency
79
+ name: vulcan
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
86
+ type: :development
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
78
94
  description: Distributes the V8 JavaScript engine in binary and source forms in order
79
95
  to support fast builds of The Ruby Racer
80
96
  email:
@@ -98,13 +114,10 @@ files:
98
114
  - ext/libv8/make.rb
99
115
  - ext/libv8/paths.rb
100
116
  - lib/libv8.rb
101
- - lib/libv8/fpic-on-freebsd-amd64.patch
102
117
  - lib/libv8/version.rb
103
118
  - libv8.gemspec
104
119
  - patches/add-freebsd9-and-freebsd10-to-gyp-GetFlavor.patch
105
120
  - patches/fPIC-on-x64.patch
106
- - patches/gcc42-on-freebsd.patch
107
- - patches/src_platform-freebsd.cc.patch
108
121
  - spec/location_spec.rb
109
122
  - spec/spec_helper.rb
110
123
  - thefrontside.png
@@ -2534,7 +2547,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
2534
2547
  version: '0'
2535
2548
  segments:
2536
2549
  - 0
2537
- hash: -919823723999092811
2550
+ hash: 2128360318782201251
2538
2551
  required_rubygems_version: !ruby/object:Gem::Requirement
2539
2552
  none: false
2540
2553
  requirements:
@@ -2543,7 +2556,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
2543
2556
  version: '0'
2544
2557
  segments:
2545
2558
  - 0
2546
- hash: -919823723999092811
2559
+ hash: 2128360318782201251
2547
2560
  requirements: []
2548
2561
  rubyforge_project: libv8
2549
2562
  rubygems_version: 1.8.24
@@ -1,16 +0,0 @@
1
- diff --git a/SConstruct b/SConstruct
2
- index 4a7e182..b462335 100644
3
- --- a/SConstruct
4
- +++ b/SConstruct
5
- @@ -124,6 +124,10 @@ LIBRARY_FLAGS = {
6
- 'LIBPATH' : ['/usr/local/lib'],
7
- 'CCFLAGS': ['-ansi'],
8
- - 'LIBS': ['execinfo']
9
- + 'LIBS': ['execinfo'],
10
- + 'arch:x64': {
11
- + 'CCFLAGS': ['-fPIC'],
12
- + 'CXXFLAGS': ['-fPIC']
13
- + },
14
- },
15
- 'os:openbsd': {
16
- 'CPPPATH' : ['/usr/local/include'],
@@ -1,14 +0,0 @@
1
- diff --git a/build/standalone.gypi b/build/standalone.gypi
2
- index ebdf557..c7a59bc 100644
3
- --- a/build/standalone.gypi
4
- +++ b/build/standalone.gypi
5
- @@ -98,6 +98,9 @@
6
- [ 'OS=="linux"', {
7
- 'cflags': [ '-ansi' ],
8
- }],
9
- + [ 'OS=="freebsd"', {
10
- + 'cflags': [ '-fno-strict-aliasing', ],
11
- + }],
12
- [ 'visibility=="hidden"', {
13
- 'cflags': [ '-fvisibility=hidden' ],
14
- }],
@@ -1,10 +0,0 @@
1
- --- src/platform-freebsd.cc.orig 2012-05-12 16:47:50.556202492 +0100
2
- +++ src/platform-freebsd.cc 2012-05-12 16:37:59.924934272 +0100
3
- @@ -554,6 +554,7 @@
4
- ASSERT(result == 0);
5
- result = pthread_mutex_init(&mutex_, &attrs);
6
- ASSERT(result == 0);
7
- + USE(result);
8
- }
9
-
10
- virtual ~FreeBSDMutex() { pthread_mutex_destroy(&mutex_); }