libv8 3.16.14.13 → 3.16.14.14

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a790f5d5bfb2f2b3b36729f7f348f846ea7cf2a4
4
- data.tar.gz: 6313e7339be07bc0d3c5b4f5d03320a94d0c08cf
3
+ metadata.gz: c4b888c69d0ba2844ae209a8951b6a811e122a8f
4
+ data.tar.gz: f2ae53593da203454156ab4221bb4b29adb1b70d
5
5
  SHA512:
6
- metadata.gz: b3e9135de2c7b796c867d84f1eb7d95ecb11ae95dc50b816c1d938c51d176e17740bc53c58a636596f98df635ca51bfbaf7fb4e19f5d24aefa585ba788aececa
7
- data.tar.gz: 4549c2e41bad275064c27af0403c077cb444d41a47689c28d138e351d54cc0e9bea1e20be2f6df313981694e596fb5e27bd7b2218e01f2fa1e281fd8bbfd5c4a
6
+ metadata.gz: 16bc788bcc0306162b6b6773b8d90cc8ff1a056bbd49a513c1ab5ff4e498b03aead1842c3eb6e1e99d800a47d6861eb19097ecc5210be6969b1f926ec03c9a4a
7
+ data.tar.gz: df157ca9e8300f6d7cd7dc8b6d34365c619fb6e74cfae6899aea71780841af44785c9cab1a56b503e05de80b0b3106b8fda994d0516dc0a132117330f824380e
@@ -1,13 +1,38 @@
1
1
  rvm:
2
- - 2.0.0
3
- - 2.1.5
2
+ - 2.3.0
3
+ - 2.2.4
4
+ - 2.1.8
4
5
  - 1.9.3
5
6
  - rbx
7
+ matrix:
8
+ include:
9
+ - rvm: system
10
+ os: osx
11
+ osx_image: xcode7.3
12
+ - rvm: system
13
+ os: osx
14
+ osx_image: xcode6.4
15
+ - rvm: system
16
+ os: osx
17
+ osx_image: beta-xcode6.2
6
18
  bundler_args: --jobs=1 --retry=3
19
+ before_install:
20
+ - if [ "$TRAVIS_OS_NAME" == "linux" ]; then sudo apt-get update; fi
21
+ - if [ "$TRAVIS_OS_NAME" == "linux" ]; then sudo apt-get install git-svn; fi
22
+ - if [ "$TRAVIS_OS_NAME" == "linux" ]; then gem update --system; fi
23
+ - if [ "$TRAVIS_OS_NAME" == "linux" ]; then gem update bundler; fi
24
+ - if [ "$TRAVIS_OS_NAME" == "osx" ]; then sudo gem install bundler ; fi
25
+ script:
26
+ - MAKEFLAGS+=-j8 bundle exec rake checkout compile spec binary --trace
27
+ deploy:
28
+ provider: releases
29
+ file: $(git ls-files -o pkg | head -1)
30
+ api_key:
31
+ secure: hvq5MEvIq3qk2OC3qGj7dVjq8p6RzGdY98Gq+cSn2MaNr3AUFgJw11458ZGqwrsB3V9TLnPIVZFeSRd2PWYfUx+aan5qtKX4yGc17UJ5IyFPSyCgQj5N1NR40pAwEmFJkVcLXDSMhIVMlo64lCfetCS7apOewOxuH85JcZENrIiEyoOH5rWpd7W8idNTy+dCUaLEN30rOuA2JP0KPgP9uwf5J89tzGp/THy0Dk++pyz9JdOiPxI07CUf/zqHGwm8F4XAdx0SxRwesokDDU2x5dik1cYVVYqcdwHUpz4ywaT6WjjQ50Kt0KHi869kCMkUZ7TtNbCXUoWFZavkK7DSUSmJeuEniaTYxKRPf7bhWJudKko/qwWhLLAWzVtfwGc5uJnE7ZcpeBdbcOLhv+zOFVyes9S16VGxWpkEZykgGynltvbcX3gLb7cYYtZkoTMdeeTZpuHSyuupHCBSU+KM76AeeXG9zpX6STR3jYDKrf1ZqibwEH6AR77BOG+pK7zstD8sZaBvp+KERgYPg6+kA2omVazWFrYK1pIi8L2wzuTWmajL83STz+P+iuA0a4xXA+XGzJhZ9B/U+Ib2wf5R7y9/EdkF/xTN5nG2sHKHgswGkXf1WCfR1qxMBXHzIvyJcEeBg0bskiiedlgPtbZVG5Utrxt0Q9+7VDz/4A5NNZ4=
32
+ skip_cleanup: true
33
+ on:
34
+ tags: true
7
35
  notifications:
8
36
  recipients:
9
37
  - cowboyd@thefrontside.net
10
38
  - bordjukov@gmail.com
11
- before_install:
12
- - sudo apt-get update
13
- - sudo apt-get install git-svn
@@ -0,0 +1,7 @@
1
+ ### Unreleased
2
+
3
+ * Enhance compiler version detection and architecture detection #212
4
+ * Introduce darwin13-15 binary building #211
5
+ * Disable errors on warning for OS X #210
6
+ * Improve --with-system-v8 error message #200
7
+ * Fix the check for git-svn #199
data/README.md CHANGED
@@ -71,7 +71,7 @@ so by specifying the git repo as a gem source. Just make sure you have
71
71
  `git-svn` and add the following to your `Gemfile`:
72
72
 
73
73
  ```Ruby
74
- gem "libv8", git: "git://github.com/cowboyd/libv8.git", submodules: true
74
+ gem "libv8", github: "cowboyd/libv8", submodules: true
75
75
  ```
76
76
 
77
77
  You can find more info on using a git repo as a gem source in
data/Rakefile CHANGED
@@ -92,20 +92,20 @@ task :devkit do
92
92
  end
93
93
 
94
94
  namespace :build do
95
- ['x86_64-linux', 'x86-linux'].each do |arch|
95
+ ['x86_64-linux', 'x86-linux', 'x86_64-freebsd10'].each do |arch|
96
96
  desc "build binary gem for #{arch}"
97
97
  task arch do
98
98
  arch_dir = Pathname(__FILE__).dirname.join("release/#{arch}")
99
99
  Dir.chdir(arch_dir) do
100
+ ENV['RUBYLIB'] = nil # https://github.com/mitchellh/vagrant/issues/6158
100
101
  sh "vagrant up"
101
- sh "vagrant ssh -c 'cd /vagrant && rm -rf libv8 && git clone /libv8/.git libv8'"
102
- sh "vagrant ssh -c 'cd /vagrant/libv8 && bundle install --path vendor/bundle'"
103
- sh "vagrant ssh -c 'cd /vagrant/libv8 && bundle exec rake checkout binary'"
104
- sh "vagrant ssh -c 'cp /vagrant/libv8/pkg/*.gem /vagrant'"
102
+ sh "vagrant ssh -c 'git clone /libv8/.git ~/libv8'"
103
+ sh "vagrant ssh -c 'cd ~/libv8 && bundle install --path vendor/bundle'"
104
+ sh "vagrant ssh -c 'cd ~/libv8 && bundle exec rake checkout binary'"
105
+ sh "vagrant ssh -c 'cp ~/libv8/pkg/*.gem /vagrant'"
105
106
  end
106
107
  end
107
108
  end
108
-
109
109
  end
110
110
 
111
111
  task :default => [:checkout, :compile, :spec]
@@ -20,7 +20,7 @@ module Libv8
20
20
  profile = enable_config('debug') ? 'debug' : 'release'
21
21
  "#{libv8_arch}.#{profile}"
22
22
  end
23
-
23
+
24
24
  def make_flags(*flags)
25
25
  # FreeBSD uses gcc 4.2 by default which leads to
26
26
  # compilation failures due to warnings about aliasing.
@@ -49,24 +49,29 @@ module Libv8
49
49
  end
50
50
 
51
51
  def build_libv8!
52
+ checkout!
53
+ setup_python!
52
54
  Dir.chdir(V8_Source) do
53
- fail 'No compilers available' if @compiler.nil?
54
- checkout!
55
- setup_python!
56
55
  setup_build_deps!
57
- patch! *patch_directories_for(@compiler)
56
+ fail 'No compilers available' if @compiler.nil?
57
+ patch!
58
58
  print_build_info
59
+ puts 'Beginning compilation. This will take some time.'
60
+
61
+ command = "env CXX=#{@compiler} LINK=#{@compiler}"
59
62
 
60
63
  case RUBY_PLATFORM
61
64
  when /mingw/
62
65
  # use a script that will fix the paths in the generated Makefiles
63
66
  # don't use make_flags otherwise it will trigger a rebuild of the Makefiles
64
67
  system "env CXX=#{@compiler} LINK=#{@compiler} bash #{PATCH_DIRECTORY}/mingw-generate-makefiles.sh"
65
- system "env CXX=#{@compiler} LINK=#{@compiler} make #{make_target}"
66
-
68
+ command += " make #{make_target}"
67
69
  else
68
- puts `env CXX=#{@compiler} LINK=#{@compiler} #{make} #{make_flags}`
70
+ command += " #{make} #{make_flags}"
69
71
  end
72
+
73
+ puts "Building v8 with #{command}"
74
+ system command
70
75
  end
71
76
  return $?.exitstatus
72
77
  end
@@ -97,7 +102,7 @@ module Libv8
97
102
  def choose_compiler
98
103
  compiler_names = if with_config('cxx') then [with_config('cxx')]
99
104
  elsif ENV['CXX'] then [ENV['CXX']]
100
- else Compiler::KNOWN_COMPILERS
105
+ else Compiler::well_known_compilers
101
106
  end
102
107
 
103
108
  available_compilers = Compiler.available_compilers(*compiler_names)
@@ -44,7 +44,7 @@ module Libv8
44
44
  # msysgit provides git svn
45
45
  return if RUBY_PLATFORM =~ /mingw/
46
46
 
47
- unless system 'git help svn 2>&1 > /dev/null'
47
+ unless system 'git svn --version 2>&1 > /dev/null'
48
48
  fail "git-svn not installed!\nPlease install git-svn."
49
49
  end
50
50
  end
@@ -1,42 +1,63 @@
1
- require 'mkmf'
2
- require 'open3'
1
+ require 'rbconfig'
3
2
  require File.expand_path '../compiler/generic_compiler', __FILE__
4
3
  require File.expand_path '../compiler/gcc', __FILE__
5
4
  require File.expand_path '../compiler/clang', __FILE__
5
+ require File.expand_path '../compiler/apple_llvm', __FILE__
6
6
 
7
7
  module Libv8
8
8
  module Compiler
9
- KNOWN_COMPILERS = [
10
- 'c++',
11
- 'g++48', 'g++46', 'g++44', 'g++',
12
- 'clang++',
13
- ]
14
-
15
9
  module_function
16
10
 
17
- def system_compilers
18
- available_compilers *Compiler::KNOWN_COMPILERS
11
+ def well_known_compilers
12
+ compilers = []
13
+
14
+ # The default system compiler
15
+ compilers << 'c++'
16
+
17
+ # FreeBSD GCC command names
18
+ compilers += ['g++48', 'g++49', 'g++5', 'g++6', 'g++7']
19
+
20
+ # Default compiler names
21
+ compilers += ['clang++', 'g++']
22
+
23
+ compilers.uniq
19
24
  end
20
25
 
21
26
  def available_compilers(*compiler_names)
22
- compiler_paths = compiler_names.map { |name| find name }.reject &:nil?
27
+ available = compiler_names.select { |compiler_name| available? compiler_name }
28
+ available.map { |compiler_name| type_of(compiler_name).new compiler_name }
23
29
  end
24
30
 
25
- def find(name)
26
- return nil if name.empty?
27
- path, _, status = Open3.capture3 "which #{name}"
28
- path.chomp!
29
- determine_type(path).new(path) if status.success?
31
+ def type_of(compiler_name)
32
+ case version_string_of(compiler_name)
33
+ when /^Apple LLVM\b/ then AppleLLVM
34
+ when /\bclang\b/i then Clang
35
+ when /^gcc/i then GCC
36
+ else GenericCompiler
37
+ end
30
38
  end
31
39
 
32
- def determine_type(compiler_path)
33
- compiler_version = Open3.capture3("#{compiler_path} -v")[0..1].join
40
+ def version_string_of(compiler_name)
41
+ command_result = execute_command "#{compiler_name} -v 2>&1"
34
42
 
35
- case compiler_version
36
- when /\bclang\b/i then Clang
37
- when /^gcc/i then GCC
38
- else GenericCompiler
43
+ unless command_result.status.success?
44
+ raise "Could not get version string of compiler #{compiler_name}"
39
45
  end
46
+
47
+ command_result.output
48
+ end
49
+
50
+ def available?(command)
51
+ execute_command("which #{command} 2>&1").status.success?
52
+ end
53
+
54
+ def execute_command(command)
55
+ output = `env LC_ALL=C LANG=C #{command}`
56
+ status = $?
57
+ ExecutionResult.new output, status
58
+ end
59
+
60
+ class ExecutionResult < Struct.new(:output, :status)
40
61
  end
41
62
  end
42
63
  end
@@ -0,0 +1,21 @@
1
+ module Libv8
2
+ module Compiler
3
+ class AppleLLVM < Clang
4
+ LLVM_VERSION_REGEXP = /Apple LLVM version (\d+\.\d+(\.\d+)*) \(/i
5
+
6
+ def name
7
+ 'Apple LLVM'
8
+ end
9
+
10
+ def compatible?
11
+ version >= '4.3' unless version.nil?
12
+ end
13
+
14
+ private
15
+
16
+ def version_regexp
17
+ LLVM_VERSION_REGEXP
18
+ end
19
+ end
20
+ end
21
+ end
@@ -1,14 +1,20 @@
1
1
  module Libv8
2
2
  module Compiler
3
3
  class Clang < GenericCompiler
4
- VERSION_REGEXP = /clang version (\d+\.\d+(\.\d+)*) \(/i
4
+ CLANG_VERSION_REGEXP = /clang version (\d+\.\d+(\.\d+)*) \(/i
5
5
 
6
6
  def name
7
7
  'clang'
8
8
  end
9
9
 
10
10
  def compatible?
11
- version >= '3.1'
11
+ version >= '3.1' unless version.nil?
12
+ end
13
+
14
+ private
15
+
16
+ def version_regexp
17
+ CLANG_VERSION_REGEXP
12
18
  end
13
19
  end
14
20
  end
@@ -1,14 +1,20 @@
1
1
  module Libv8
2
2
  module Compiler
3
3
  class GCC < GenericCompiler
4
- VERSION_REGEXP = /gcc version (\d+\.\d+(\.\d+)*)/i
4
+ GCC_VERSION_REGEXP = /gcc version (\d+\.\d+(\.\d+)*)/i
5
5
 
6
6
  def name
7
7
  'GCC'
8
8
  end
9
9
 
10
10
  def compatible?
11
- version > '4.3' and version < '5'
11
+ version > '4.3' unless version.nil?
12
+ end
13
+
14
+ private
15
+
16
+ def version_regexp
17
+ GCC_VERSION_REGEXP
12
18
  end
13
19
  end
14
20
  end
@@ -1,28 +1,28 @@
1
1
  module Libv8
2
2
  module Compiler
3
3
  class GenericCompiler
4
- VERSION_REGEXP = /(\d+\.\d+(\.\d+)*)/
5
- TARGET_REGEXP = /Target: ([a-z0-9\-_.]*)/
4
+ GENERIC_VERSION_REGEXP = /(\d+\.\d+(\.\d+)*)/
5
+ GENERIC_TARGET_REGEXP = /Target: ([a-z0-9\-_.]*)/
6
6
 
7
- def initialize(path)
8
- @path = path
7
+ def initialize(command)
8
+ @command = command
9
9
  end
10
10
 
11
11
  def name
12
- File.basename @path
12
+ File.basename @command
13
13
  end
14
14
 
15
15
  def to_s
16
- @path
16
+ @command
17
17
  end
18
18
 
19
19
  def version
20
- call('-v')[0..1].join =~ VERSION_REGEXP
20
+ version_string =~ version_regexp
21
21
  $1
22
22
  end
23
23
 
24
24
  def target
25
- call('-v')[0..1].join =~ TARGET_REGEXP
25
+ version_string =~ target_regexp
26
26
  $1
27
27
  end
28
28
 
@@ -31,7 +31,25 @@ module Libv8
31
31
  end
32
32
 
33
33
  def call(*arguments)
34
- Open3.capture3 arguments.unshift('env LC_ALL=en', @path).join(' ')
34
+ Compiler::execute_command arguments.unshift(@command).join(' ')
35
+ end
36
+
37
+ private
38
+
39
+ def version_string
40
+ begin
41
+ Compiler::version_string_of @command
42
+ rescue StandardError
43
+ nil
44
+ end
45
+ end
46
+
47
+ def version_regexp
48
+ GENERIC_VERSION_REGEXP
49
+ end
50
+
51
+ def target_regexp
52
+ GENERIC_TARGET_REGEXP
35
53
  end
36
54
  end
37
55
  end
@@ -54,16 +54,15 @@ module Libv8
54
54
  class NotFoundError < StandardError
55
55
  def initialize(*args)
56
56
  super(<<-EOS)
57
- You have chosen to use the version of V8 found on your system
58
- and *not* the one that is bundle with the libv8 rubygem. However,
59
- it could not be located. please make sure you have a version of
60
- v8 that is compatible with #{Libv8::VERSION} installed. You may
61
- need to special --with-v8-dir options if it is in a non-standard
62
- location
57
+ By using --with-system-v8, you have chosen to use the version
58
+ of V8 found on your system and *not* the one that is bundled with
59
+ the libv8 rubygem.
63
60
 
64
- thanks,
65
- The Mgmt
61
+ However, your system version of v8 could not be located.
66
62
 
63
+ Please make sure your system version of v8 that is compatible
64
+ with #{Libv8::VERSION} installed. You may need to use the
65
+ --with-v8-dir option if it is installed in a non-standard location
67
66
  EOS
68
67
  end
69
68
  end
@@ -4,51 +4,15 @@ module Libv8
4
4
 
5
5
  module_function
6
6
 
7
- def patch_directories_for(compiler)
8
- patch_directories = []
9
-
10
- case
11
- when compiler.target =~ /arm/
12
- patch_directories << 'arm'
13
- end
14
-
15
- case compiler
16
- when Compiler::GCC
17
- patch_directories << 'gcc48' if compiler.version >= '4.8'
18
- when Compiler::Clang
19
- patch_directories << 'clang'
20
- patch_directories << 'clang33' if compiler.version >= '3.3'
21
- patch_directories << 'clang51' if compiler.version >= '5.1'
22
- patch_directories << 'clang70' if compiler.version >= '7.0'
23
- end
24
-
25
- patch_directories
26
- end
27
-
28
- def patch_directories(*additional_directories)
29
- absolute_paths = [PATCH_DIRECTORY]
30
-
31
- additional_directories.each do |directory|
32
- absolute_paths << File.join(PATCH_DIRECTORY, directory)
33
- end
34
-
35
- absolute_paths.uniq
36
- end
37
-
38
- def patches(*additional_directories)
39
- patch_directories(*additional_directories).map do |directory|
40
- Dir.glob(File.join directory, '*.patch')
41
- end.flatten.sort
42
- end
43
-
44
- def patch!(*additional_directories)
7
+ def patch!
45
8
  File.open(".applied_patches", File::RDWR|File::CREAT) do |f|
46
- available_patches = patches *additional_directories
9
+ available_patches = Dir.glob(File.join(PATCH_DIRECTORY, '*.patch'))
47
10
  applied_patches = f.readlines.map(&:chomp)
48
11
 
49
12
  (available_patches - applied_patches).each do |patch|
13
+ puts "Applying #{patch}"
50
14
  `patch -p1 -N < #{patch}`
51
- fail 'failed to apply patch' unless $?.success?
15
+ fail "failed to apply patch #{patch}" unless $?.success?
52
16
  f.puts patch
53
17
  end
54
18
  end
@@ -1,3 +1,3 @@
1
1
  module Libv8
2
- VERSION = "3.16.14.13"
2
+ VERSION = "3.16.14.14"
3
3
  end
@@ -0,0 +1,12 @@
1
+ diff --git a/build/standalone.gypi b/build/standalone.gypi
2
+ index 125c5bf..de1924c 100644
3
+ --- a/build/standalone.gypi
4
+ +++ b/build/standalone.gypi
5
+ @@ -194,7 +194,6 @@
6
+ 'GCC_INLINES_ARE_PRIVATE_EXTERN': 'YES',
7
+ 'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES', # -fvisibility=hidden
8
+ 'GCC_THREADSAFE_STATICS': 'NO', # -fno-threadsafe-statics
9
+ - 'GCC_TREAT_WARNINGS_AS_ERRORS': 'YES', # -Werror
10
+ 'GCC_VERSION': 'com.apple.compilers.llvmgcc42',
11
+ 'GCC_WARN_ABOUT_MISSING_NEWLINE': 'YES', # -Wnewline-eof
12
+ # MACOSX_DEPLOYMENT_TARGET maps to -mmacosx-version-min
@@ -13,7 +13,7 @@ Vagrant.configure(2) do |config|
13
13
  # Every Vagrant development environment requires a box. You can search for
14
14
  # boxes at https://atlas.hashicorp.com/search.
15
15
  # https://atlas.hashicorp.com/boxcutter/boxes/debian80-i386
16
- config.vm.box = "boxcutter/debian80-i386"
16
+ config.vm.box = "ubuntu/trusty32"
17
17
 
18
18
  # Disable automatic box update checking. If you disable this, then
19
19
  # boxes will only be checked for updates when the user runs
@@ -61,6 +61,11 @@ Vagrant.configure(2) do |config|
61
61
  # config.push.define "atlas" do |push|
62
62
  # push.app = "YOUR_ATLAS_USERNAME/YOUR_APPLICATION_NAME"
63
63
  # end
64
+ config.vm.provider :virtualbox do |vb|
65
+ vb.customize ["modifyvm", :id, "--hwvirtex", "on"]
66
+ vb.customize ["modifyvm", :id, "--audio", "none"]
67
+ vb.customize ["modifyvm", :id, "--nictype1", "virtio"]
68
+ end
64
69
 
65
70
  # Enable provisioning with a shell script. Additional provisioners such as
66
71
  # Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the
@@ -72,4 +77,5 @@ Vagrant.configure(2) do |config|
72
77
  sudo update-alternatives --config gcc
73
78
  gem install bundler
74
79
  SHELL
80
+
75
81
  end
@@ -0,0 +1,86 @@
1
+ # -*- mode: ruby -*-
2
+ # vi: set ft=ruby :
3
+
4
+ # All Vagrant configuration is done below. The "2" in Vagrant.configure
5
+ # configures the configuration version (we support older styles for
6
+ # backwards compatibility). Please don't change it unless you know what
7
+ # you're doing.
8
+ Vagrant.configure(2) do |config|
9
+ # The most common configuration options are documented and commented below.
10
+ # For a complete reference, please see the online documentation at
11
+ # https://docs.vagrantup.com.
12
+
13
+ # Every Vagrant development environment requires a box. You can search for
14
+ # boxes at https://atlas.hashicorp.com/search.
15
+ config.vm.box = "freebsd/FreeBSD-10.3-RELEASE"
16
+
17
+ # Disable automatic box update checking. If you disable this, then
18
+ # boxes will only be checked for updates when the user runs
19
+ # `vagrant box outdated`. This is not recommended.
20
+ # config.vm.box_check_update = false
21
+
22
+ # Create a forwarded port mapping which allows access to a specific port
23
+ # within the machine from a port on the host machine. In the example below,
24
+ # accessing "localhost:8080" will access port 80 on the guest machine.
25
+ # config.vm.network "forwarded_port", guest: 80, host: 8080
26
+
27
+ # Create a private network, which allows host-only access to the machine
28
+ # using a specific IP.
29
+ # config.vm.network "private_network", ip: "192.168.33.10"
30
+ config.vm.network "private_network", ip: "192.168.33.10"
31
+
32
+ # Create a public network, which generally matched to bridged network.
33
+ # Bridged networks make the machine appear as another physical device on
34
+ # your network.
35
+ # config.vm.network "public_network"
36
+
37
+ # Share an additional folder to the guest VM. The first argument is
38
+ # the path on the host to the actual folder. The second argument is
39
+ # the path on the guest to mount the folder. And the optional third
40
+ # argument is a set of non-required options.
41
+ config.vm.synced_folder ".", "/vagrant", nfs: true
42
+ config.vm.synced_folder "../..", "/libv8", nfs: true
43
+
44
+
45
+ # Provider-specific configuration so you can fine-tune various
46
+ # backing providers for Vagrant. These expose provider-specific options.
47
+ # Example for VirtualBox:
48
+ #
49
+ # config.vm.provider "virtualbox" do |vb|
50
+ # # Display the VirtualBox GUI when booting the machine
51
+ # vb.gui = true
52
+ #
53
+ # # Customize the amount of memory on the VM:
54
+ # vb.memory = "1024"
55
+ # end
56
+ #
57
+ # View the documentation for the provider you are using for more
58
+ # information on available options.
59
+ # Various settings as suggested by the FreeBSD community
60
+ config.ssh.shell = "sh"
61
+ config.vm.base_mac = "080027D14C66"
62
+ config.vm.provider :virtualbox do |vb|
63
+ vb.customize ["modifyvm", :id, "--hwvirtex", "on"]
64
+ vb.customize ["modifyvm", :id, "--audio", "none"]
65
+ vb.customize ["modifyvm", :id, "--nictype1", "virtio"]
66
+ vb.customize ["modifyvm", :id, "--nictype2", "virtio"]
67
+ end
68
+
69
+ # Define a Vagrant Push strategy for pushing to Atlas. Other push strategies
70
+ # such as FTP and Heroku are also available. See the documentation at
71
+ # https://docs.vagrantup.com/v2/push/atlas.html for more information.
72
+ # config.push.define "atlas" do |push|
73
+ # push.app = "YOUR_ATLAS_USERNAME/YOUR_APPLICATION_NAME"
74
+ # end
75
+
76
+ # Enable provisioning with a shell script. Additional provisioners such as
77
+ # Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the
78
+ # documentation for more information about their specific syntax and use.
79
+ # config.vm.provision "shell", inline: <<-SHELL
80
+ # sudo apt-get update
81
+ # sudo apt-get install -y apache2
82
+ # SHELL
83
+ config.vm.provision "shell", inline: <<-SHELL
84
+ pkg install -y gmake ruby rubygem-bundler git-subversion python2
85
+ SHELL
86
+ end
@@ -13,7 +13,7 @@ Vagrant.configure(2) do |config|
13
13
  # Every Vagrant development environment requires a box. You can search for
14
14
  # boxes at https://atlas.hashicorp.com/search.
15
15
  # https://atlas.hashicorp.com/quarkslab/boxes/debian-8.0-amd64
16
- config.vm.box = "quarkslab/debian-8.0-amd64"
16
+ config.vm.box = "ubuntu/trusty64"
17
17
 
18
18
  # Disable automatic box update checking. If you disable this, then
19
19
  # boxes will only be checked for updates when the user runs
@@ -54,6 +54,11 @@ Vagrant.configure(2) do |config|
54
54
  #
55
55
  # View the documentation for the provider you are using for more
56
56
  # information on available options.
57
+ config.vm.provider :virtualbox do |vb|
58
+ vb.customize ["modifyvm", :id, "--hwvirtex", "on"]
59
+ vb.customize ["modifyvm", :id, "--audio", "none"]
60
+ vb.customize ["modifyvm", :id, "--nictype1", "virtio"]
61
+ end
57
62
 
58
63
  # Define a Vagrant Push strategy for pushing to Atlas. Other push strategies
59
64
  # such as FTP and Heroku are also available. See the documentation at
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: libv8
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.16.14.13
4
+ version: 3.16.14.14
5
5
  platform: ruby
6
6
  authors:
7
7
  - Charles Lowell
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-15 00:00:00.000000000 Z
11
+ date: 2016-04-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -78,6 +78,7 @@ files:
78
78
  - ".gitignore"
79
79
  - ".gitmodules"
80
80
  - ".travis.yml"
81
+ - CHANGELOG.md
81
82
  - Gemfile
82
83
  - README.md
83
84
  - Rakefile
@@ -86,6 +87,7 @@ files:
86
87
  - ext/libv8/builder.rb
87
88
  - ext/libv8/checkout.rb
88
89
  - ext/libv8/compiler.rb
90
+ - ext/libv8/compiler/apple_llvm.rb
89
91
  - ext/libv8/compiler/clang.rb
90
92
  - ext/libv8/compiler/gcc.rb
91
93
  - ext/libv8/compiler/generic_compiler.rb
@@ -97,17 +99,14 @@ files:
97
99
  - lib/libv8.rb
98
100
  - lib/libv8/version.rb
99
101
  - libv8.gemspec
100
- - patches/arm/do-not-imply-vfp3-and-armv7.patch
101
- - patches/arm/do-not-use-vfp2.patch
102
- - patches/clang/no-unused-private-field.patch
103
- - patches/clang33/silence-nested-anon-types-and-unused-function-warnings.patch
104
- - patches/clang51/no-unused-variable.patch
105
- - patches/clang70/no-unused-local-typedefs.patch
106
102
  - patches/disable-building-tests.patch
103
+ - patches/disable-werror-on-osx.patch
104
+ - patches/do-not-imply-vfp3-and-armv7.patch
105
+ - patches/do-not-use-vfp2.patch
107
106
  - patches/fPIC-for-static.patch
108
- - patches/gcc48/gcc48-wno-unused-local-typedefs.patch
109
107
  - patches/mingw-generate-makefiles.sh
110
108
  - release/x86-linux/Vagrantfile
109
+ - release/x86_64-freebsd10/Vagrantfile
111
110
  - release/x86_64-linux/Vagrantfile
112
111
  - spec/location_spec.rb
113
112
  - spec/spec_helper.rb
@@ -3054,7 +3053,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
3054
3053
  version: '0'
3055
3054
  requirements: []
3056
3055
  rubyforge_project: libv8
3057
- rubygems_version: 2.4.5
3056
+ rubygems_version: 2.6.4
3058
3057
  signing_key:
3059
3058
  specification_version: 4
3060
3059
  summary: Distribution of the V8 JavaScript engine
@@ -1,28 +0,0 @@
1
- diff --git a/build/common.gypi b/build/common.gypi
2
- index 3a59639..14bf0f9 100644
3
- --- a/build/common.gypi
4
- +++ b/build/common.gypi
5
- @@ -376,7 +376,8 @@
6
- }],
7
- ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd"', {
8
- 'cflags': [ '-Wall', '<(werror)', '-W', '-Wno-unused-parameter',
9
- - '-Wnon-virtual-dtor', '-Woverloaded-virtual' ],
10
- + '-Wnon-virtual-dtor', '-Woverloaded-virtual',
11
- + '-Wno-unused-private-field' ],
12
- }],
13
- ['OS=="linux" and v8_enable_backtrace==1', {
14
- # Support for backtrace_symbols.
15
- diff --git a/build/standalone.gypi b/build/standalone.gypi
16
- index 125c5bf..c8d9b4f 100644
17
- --- a/build/standalone.gypi
18
- +++ b/build/standalone.gypi
19
- @@ -98,7 +98,8 @@
20
- 'target_defaults': {
21
- 'cflags': [ '-Wall', '<(werror)', '-W', '-Wno-unused-parameter',
22
- '-Wnon-virtual-dtor', '-pthread', '-fno-rtti',
23
- - '-fno-exceptions', '-pedantic' ],
24
- + '-fno-exceptions', '-pedantic',
25
- + '-Wno-unused-private-field' ],
26
- 'ldflags': [ '-pthread', ],
27
- 'conditions': [
28
- [ 'OS=="linux"', {
@@ -1,28 +0,0 @@
1
- diff --git a/build/common.gypi b/build/common.gypi
2
- index 14bf0f9..301109a 100644
3
- --- a/build/common.gypi
4
- +++ b/build/common.gypi
5
- @@ -377,7 +377,8 @@
6
- ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd"', {
7
- 'cflags': [ '-Wall', '<(werror)', '-W', '-Wno-unused-parameter',
8
- '-Wnon-virtual-dtor', '-Woverloaded-virtual',
9
- - '-Wno-unused-private-field' ],
10
- + '-Wno-unused-private-field', '-Wno-nested-anon-types',
11
- + '-Wno-unused-function' ],
12
- }],
13
- ['OS=="linux" and v8_enable_backtrace==1', {
14
- # Support for backtrace_symbols.
15
- diff --git a/build/standalone.gypi b/build/standalone.gypi
16
- index c8d9b4f..ddd1693 100644
17
- --- a/build/standalone.gypi
18
- +++ b/build/standalone.gypi
19
- @@ -99,7 +99,8 @@
20
- 'cflags': [ '-Wall', '<(werror)', '-W', '-Wno-unused-parameter',
21
- '-Wnon-virtual-dtor', '-pthread', '-fno-rtti',
22
- '-fno-exceptions', '-pedantic',
23
- - '-Wno-unused-private-field' ],
24
- + '-Wno-unused-private-field', '-Wno-nested-anon-types',
25
- + '-Wno-unused-function' ],
26
- 'ldflags': [ '-pthread', ],
27
- 'conditions': [
28
- [ 'OS=="linux"', {
@@ -1,12 +0,0 @@
1
- diff --git a/build/standalone.gypi b/build/standalone.gypi
2
- index 125c5bf..a283a28 100644
3
- --- a/build/standalone.gypi
4
- +++ b/build/standalone.gypi
5
- @@ -210,6 +212,7 @@
6
- '-Wendif-labels',
7
- '-W',
8
- '-Wno-unused-parameter',
9
- + '-Wno-unused-variable',
10
- '-Wnon-virtual-dtor',
11
- ],
12
- },
@@ -1,13 +0,0 @@
1
- diff --git a/build/standalone.gypi b/build/standalone.gypi
2
- index 125c5bf..a283a28 100644
3
- --- a/build/standalone.gypi
4
- +++ b/build/standalone.gypi
5
- @@ -211,6 +212,8 @@
6
- '-W',
7
- '-Wno-unused-parameter',
8
- '-Wno-unused-variable',
9
- + '-Wno-unused-local-typedefs',
10
- + '-Wno-tautological-undefined-compare',
11
- '-Wnon-virtual-dtor',
12
- ],
13
- },
@@ -1,28 +0,0 @@
1
- diff --git a/build/common.gypi b/build/common.gypi
2
- index 3a59639..365178a 100644
3
- --- a/build/common.gypi
4
- +++ b/build/common.gypi
5
- @@ -376,7 +376,8 @@
6
- }],
7
- ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd"', {
8
- 'cflags': [ '-Wall', '<(werror)', '-W', '-Wno-unused-parameter',
9
- - '-Wnon-virtual-dtor', '-Woverloaded-virtual' ],
10
- + '-Wnon-virtual-dtor', '-Woverloaded-virtual',
11
- + '-Wno-unused-local-typedefs' ],
12
- }],
13
- ['OS=="linux" and v8_enable_backtrace==1', {
14
- # Support for backtrace_symbols.
15
- diff --git a/build/standalone.gypi b/build/standalone.gypi
16
- index 125c5bf..32eaf85 100644
17
- --- a/build/standalone.gypi
18
- +++ b/build/standalone.gypi
19
- @@ -98,7 +98,8 @@
20
- 'target_defaults': {
21
- 'cflags': [ '-Wall', '<(werror)', '-W', '-Wno-unused-parameter',
22
- '-Wnon-virtual-dtor', '-pthread', '-fno-rtti',
23
- - '-fno-exceptions', '-pedantic' ],
24
- + '-fno-exceptions', '-pedantic',
25
- + '-Wno-unused-local-typedefs' ],
26
- 'ldflags': [ '-pthread', ],
27
- 'conditions': [
28
- [ 'OS=="linux"', {