libv8 5.1.281.59.1 → 5.2.361.43.0
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 +4 -4
- data/.travis.yml +0 -7
- data/CHANGELOG.md +9 -1
- data/README.md +41 -23
- data/Rakefile +1 -1
- data/ext/libv8/builder.rb +1 -1
- data/ext/libv8/compiler/apple_llvm.rb +5 -4
- data/ext/libv8/compiler/clang.rb +5 -4
- data/ext/libv8/compiler/gcc.rb +5 -4
- data/ext/libv8/compiler/generic_compiler.rb +11 -1
- data/lib/libv8/version.rb +1 -1
- data/patches/0001-Build-a-standalone-static-library.patch +26 -0
- data/patches/{0002-Disable-building-tests.patch → 0002-Don-t-compile-unnecessary-stuff.patch} +31 -34
- data/patches/0003-Use-the-fPIC-flag-for-the-static-library.patch +10 -10
- data/patches/0004-Reinterpret-thread-hash-for-FreeBSD-too.patch +25 -0
- data/release/armhf-linux/Vagrantfile +95 -0
- data/release/armhf-linux/initrd.img +0 -0
- data/release/armhf-linux/vmlinuz +0 -0
- data/release/{x86_64-freebsd10 → x86_64-freebsd-10}/Vagrantfile +3 -1
- data/spec/compiler/apple_llvm_spec.rb +10 -3
- data/spec/compiler/clang_spec.rb +7 -0
- data/spec/compiler_spec.rb +1 -1
- data/spec/support/compiler_helpers.rb +3 -1
- data/vendor/depot_tools/{README → README.md} +33 -12
- data/vendor/depot_tools/checkout.py +7 -2
- data/vendor/depot_tools/cit.py +51 -13
- data/vendor/depot_tools/cpplint.py +27 -5
- data/vendor/depot_tools/git_cl.py +370 -290
- data/vendor/depot_tools/git_common.py +133 -28
- data/vendor/depot_tools/git_drover.py +29 -2
- data/vendor/depot_tools/git_map.py +2 -2
- data/vendor/depot_tools/git_map_branches.py +9 -5
- data/vendor/depot_tools/git_rebase_update.py +3 -3
- data/vendor/depot_tools/git_upstream_diff.py +1 -1
- data/vendor/depot_tools/infra/config/OWNERS +1 -0
- data/vendor/depot_tools/infra/config/cq.cfg +8 -3
- data/vendor/depot_tools/infra/config/recipes.cfg +1 -1
- data/vendor/depot_tools/man/html/depot_tools.html +10 -2
- data/vendor/depot_tools/man/html/depot_tools_tutorial.html +14 -15
- data/vendor/depot_tools/man/html/git-auto-svn.html +2 -2
- data/vendor/depot_tools/man/html/git-cherry-pick-upload.html +2 -11
- data/vendor/depot_tools/man/html/git-drover.html +19 -17
- data/vendor/depot_tools/man/html/git-footers.html +2 -2
- data/vendor/depot_tools/man/html/git-freeze.html +17 -4
- data/vendor/depot_tools/man/html/git-hyper-blame.html +2 -2
- data/vendor/depot_tools/man/html/git-map-branches.html +2 -2
- data/vendor/depot_tools/man/html/git-map.html +3 -3
- data/vendor/depot_tools/man/html/git-mark-merge-base.html +2 -2
- data/vendor/depot_tools/man/html/git-nav-downstream.html +7 -7
- data/vendor/depot_tools/man/html/git-nav-upstream.html +4 -4
- data/vendor/depot_tools/man/html/git-new-branch.html +2 -2
- data/vendor/depot_tools/man/html/git-rebase-update.html +2 -2
- data/vendor/depot_tools/man/html/git-rename-branch.html +2 -2
- data/vendor/depot_tools/man/html/git-reparent-branch.html +2 -2
- data/vendor/depot_tools/man/html/git-retry.html +2 -2
- data/vendor/depot_tools/man/html/git-squash-branch.html +4 -4
- data/vendor/depot_tools/man/html/git-thaw.html +2 -2
- data/vendor/depot_tools/man/html/git-upstream-diff.html +2 -2
- data/vendor/depot_tools/man/man1/git-auto-svn.1 +4 -4
- data/vendor/depot_tools/man/man1/git-cherry-pick-upload.1 +5 -14
- data/vendor/depot_tools/man/man1/git-drover.1 +21 -19
- data/vendor/depot_tools/man/man1/git-footers.1 +5 -5
- data/vendor/depot_tools/man/man1/git-freeze.1 +12 -6
- data/vendor/depot_tools/man/man1/git-hyper-blame.1 +4 -4
- data/vendor/depot_tools/man/man1/git-map-branches.1 +5 -7
- data/vendor/depot_tools/man/man1/git-map.1 +5 -5
- data/vendor/depot_tools/man/man1/git-mark-merge-base.1 +4 -4
- data/vendor/depot_tools/man/man1/git-nav-downstream.1 +9 -9
- data/vendor/depot_tools/man/man1/git-nav-upstream.1 +6 -6
- data/vendor/depot_tools/man/man1/git-new-branch.1 +4 -4
- data/vendor/depot_tools/man/man1/git-rebase-update.1 +4 -4
- data/vendor/depot_tools/man/man1/git-rename-branch.1 +4 -4
- data/vendor/depot_tools/man/man1/git-reparent-branch.1 +4 -4
- data/vendor/depot_tools/man/man1/git-retry.1 +4 -4
- data/vendor/depot_tools/man/man1/git-squash-branch.1 +6 -6
- data/vendor/depot_tools/man/man1/git-thaw.1 +4 -4
- data/vendor/depot_tools/man/man1/git-upstream-diff.1 +4 -4
- data/vendor/depot_tools/man/man7/depot_tools.7 +9 -4
- data/vendor/depot_tools/man/man7/depot_tools_tutorial.7 +14 -15
- data/vendor/depot_tools/man/src/depot_tools_tutorial.txt +1 -2
- data/vendor/depot_tools/man/src/git-freeze.txt +15 -0
- data/vendor/depot_tools/man/src/make_docs.sh +4 -4
- data/vendor/depot_tools/owners.py +50 -46
- data/vendor/depot_tools/owners_finder.py +6 -19
- data/vendor/depot_tools/presubmit_canned_checks.py +2 -1
- data/vendor/depot_tools/presubmit_support.py +8 -10
- data/vendor/depot_tools/recipe_modules/bot_update/api.py +69 -55
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/tryjob_fail.json +1 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/tryjob_fail_patch.json +1 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/tryjob_fail_patch_download.json +1 -0
- data/vendor/depot_tools/recipe_modules/bot_update/resources/bot_update.py +2 -0
- data/vendor/depot_tools/recipe_modules/gclient/api.py +0 -17
- data/vendor/depot_tools/recipe_modules/gclient/config.py +9 -8
- data/vendor/depot_tools/recipe_modules/gclient/example.py +1 -1
- data/vendor/depot_tools/recipe_modules/git/api.py +20 -4
- data/vendor/depot_tools/recipe_modules/git/example.expected/can_fail_build.json +1 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/count-objects_with_bad_output_fails_build.json +1 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/git-cache-checkout.json +189 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/platform_win.json +2 -1
- data/vendor/depot_tools/recipe_modules/git/example.expected/rebase_failed.json +1 -0
- data/vendor/depot_tools/recipe_modules/git/example.py +6 -1
- data/vendor/depot_tools/recipe_modules/git_cl/api.py +13 -0
- data/vendor/depot_tools/recipe_modules/git_cl/example.expected/basic.json +17 -0
- data/vendor/depot_tools/recipe_modules/git_cl/example.py +3 -0
- data/vendor/depot_tools/recipe_modules/infra_paths/example.expected/paths_swarmbucket_linux.json +14 -0
- data/vendor/depot_tools/recipe_modules/infra_paths/example.expected/paths_swarmbucket_mac.json +14 -0
- data/vendor/depot_tools/recipe_modules/infra_paths/example.expected/paths_swarmbucket_win.json +14 -0
- data/vendor/depot_tools/recipe_modules/infra_paths/example.py +1 -1
- data/vendor/depot_tools/recipe_modules/infra_paths/path_config.py +23 -10
- data/vendor/depot_tools/recipe_modules/tryserver/api.py +5 -3
- data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_git_patch.json +1 -0
- data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_rietveld_patch.json +1 -0
- data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_rietveld_patch_new.json +1 -0
- data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_svn_patch.json +1 -0
- data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_wrong_patch.json +3 -1
- data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_wrong_patch_new.json +3 -1
- data/vendor/depot_tools/recipes.py +56 -27
- data/vendor/depot_tools/rietveld.py +10 -0
- data/vendor/depot_tools/third_party/httplib2/README.chromium +3 -3
- data/vendor/depot_tools/third_party/httplib2/__init__.py +31 -15
- data/vendor/depot_tools/third_party/upload.py +54 -45
- data/vendor/depot_tools/update_depot_tools +16 -70
- data/vendor/depot_tools/update_depot_tools.bat +4 -18
- data/vendor/depot_tools/win_toolchain/get_toolchain_if_necessary.py +10 -6
- metadata +15 -8
- data/patches/0001-Build-standalone-static-library.patch +0 -26
- data/vendor/depot_tools/git_utils/git-tree-prune +0 -122
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: d2d214217489251ff3cc384d2f717358bc010132
|
|
4
|
+
data.tar.gz: 7ef46315f67750f3615f81790ae4b2c4a48a9c58
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: df2615b61c27ed8684e30c9dc800a731fb2d94d407b68950bdfda9ddca4ee1412c8844834647af7aa504e732b5a75a333e08299a631ee44b67a7266ab569c9b8
|
|
7
|
+
data.tar.gz: fdb034e795fbd8643b68b323cba30530ce15380775068521fdce1be841d9bd7f4df55b2ec6ce854389609cd31b9dd91b2fe869b105d26413d143b7e53385d332
|
data/.travis.yml
CHANGED
|
@@ -31,8 +31,6 @@ before_install:
|
|
|
31
31
|
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then gem update bundler; fi
|
|
32
32
|
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then sudo gem install bundler; fi
|
|
33
33
|
script:
|
|
34
|
-
- if ! [ "$(ls -A vendor/v8/.git)" ] ; then rm -rf vendor/v8; fi
|
|
35
|
-
- rm -rf vendor/depot_tools
|
|
36
34
|
- git submodule update --init
|
|
37
35
|
- MAKEFLAGS+=-j8 bundle exec rake spec binary --trace
|
|
38
36
|
deploy:
|
|
@@ -44,13 +42,8 @@ deploy:
|
|
|
44
42
|
on:
|
|
45
43
|
tags: true
|
|
46
44
|
condition: $TRAVIS_OS_NAME = osx
|
|
47
|
-
before_cache:
|
|
48
|
-
- cd vendor/v8 && git clean -xdf && git checkout . && cd ../..
|
|
49
|
-
- rm -rf vendor/depot_tools
|
|
50
45
|
cache:
|
|
51
46
|
bundler: true
|
|
52
|
-
directories:
|
|
53
|
-
- vendor
|
|
54
47
|
notifications:
|
|
55
48
|
recipients:
|
|
56
49
|
- cowboyd@thefrontside.net
|
data/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,12 @@
|
|
|
1
|
-
###
|
|
1
|
+
### 5.2.361.43.0, 5.2.361.43.1 - 2016-06-26:
|
|
2
|
+
|
|
3
|
+
* Compare compiler versions part by part as integers instead of using string
|
|
4
|
+
comparison on the whole version string #154 (thanks @ltk)
|
|
5
|
+
* Update upstream v8 to version 5.2.361.43 and refresh the patch set
|
|
6
|
+
|
|
7
|
+
### 5.1.281.67.0, 5.1.281.67.1 - 2016-06-26:
|
|
8
|
+
|
|
9
|
+
* Update upstream v8 version to 5.1.281.67 to address #219
|
|
2
10
|
|
|
3
11
|
### 5.1.281.59.0, 5.1.281.59.1 - 2016-06-15:
|
|
4
12
|
|
data/README.md
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
# libv8
|
|
2
2
|
[](http://badge.fury.io/rb/libv8)
|
|
3
3
|
[](https://travis-ci.org/cowboyd/libv8)
|
|
4
|
-
<!-- [](https://ci.appveyor.com/project/cowboyd/libv8) -->
|
|
5
4
|
[](https://gitter.im/cowboyd/therubyracer?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
|
6
5
|
|
|
7
6
|
A gem for distributing the v8 runtime libraries and headers in both
|
|
@@ -32,13 +31,25 @@ If you don't see your platform on this list, first, make sure that it
|
|
|
32
31
|
installs from source, and second talk to us about setting up a binary
|
|
33
32
|
distro for you.
|
|
34
33
|
|
|
34
|
+
#### Note on ~~OS X~~ macOS binaries
|
|
35
|
+
|
|
36
|
+
If you're installing libv8 on a macOS system that is present in the list above,
|
|
37
|
+
and despite that, RubyGems insists on downloading a source version and compiling
|
|
38
|
+
it, check the output of `ruby -e 'puts Gem::Platform.local'`. If it does not
|
|
39
|
+
reflect the current version of your OS, recompile Ruby.
|
|
40
|
+
|
|
41
|
+
The platform gets hardcoded in Ruby during compilation and if you've updated
|
|
42
|
+
your OS since you've compiled Ruby, it does not represent correctly your current
|
|
43
|
+
platform which leads to RubyGems trying to download a platform-specific gem for
|
|
44
|
+
the older version of your OS.
|
|
45
|
+
|
|
35
46
|
### Versioning
|
|
36
47
|
|
|
37
|
-
Versions of the libv8 gem track the version of
|
|
38
|
-
own point release after the main
|
|
39
|
-
and `5.0.71.35.14` both correspond to
|
|
48
|
+
Versions of the libv8 gem track the version of V8 itself, adding its
|
|
49
|
+
own point release after the main V8 version. So libv8 `5.0.71.35.5`
|
|
50
|
+
and `5.0.71.35.14` both correspond to V8 version `5.0.71.35`. Another
|
|
40
51
|
way to think about it would be that `5.0.71.35.14` is the 14th release
|
|
41
|
-
of the libv8 rubygem based on
|
|
52
|
+
of the libv8 rubygem based on V8 version `5.0.71.35`
|
|
42
53
|
|
|
43
54
|
#### Source and Binary Releases
|
|
44
55
|
|
|
@@ -61,17 +72,17 @@ source-based distribution
|
|
|
61
72
|
|
|
62
73
|
##### Use with different standard C libraries
|
|
63
74
|
|
|
64
|
-
The binary versions of this gem are linked against the most used standard
|
|
65
|
-
library - glibc. Currently rubygems
|
|
66
|
-
standard library so we have no way of distributing
|
|
67
|
-
|
|
75
|
+
The Linux binary versions of this gem are linked against the most used standard
|
|
76
|
+
library - glibc. Currently rubygems has no mechanism to differentiate
|
|
77
|
+
platform-specific gems by standard library so we have no way of distributing
|
|
78
|
+
different binaries for different standard libraries.
|
|
68
79
|
|
|
69
80
|
What this means is that if you're running a distro that does not use glibc
|
|
70
81
|
(like Alpine Linux), you'll have to use a source version of the gem.
|
|
71
82
|
|
|
72
83
|
### Requirements
|
|
73
84
|
|
|
74
|
-
Building the
|
|
85
|
+
Building the V8 library from source imposes the following requirements:
|
|
75
86
|
|
|
76
87
|
* A compiler that supports C++11 (such as GCC 4.8 and above or clang,
|
|
77
88
|
preferably 3.5 and above)
|
|
@@ -93,7 +104,7 @@ You can find more info on using a git repo as a gem source in
|
|
|
93
104
|
|
|
94
105
|
### What if I can't install from source?
|
|
95
106
|
|
|
96
|
-
If you can fix
|
|
107
|
+
If you can fix V8's build system so that it correctly compiles for your
|
|
97
108
|
platform, we'll pull it right in!
|
|
98
109
|
|
|
99
110
|
To get the source, these commands will get you started:
|
|
@@ -105,11 +116,16 @@ To get the source, these commands will get you started:
|
|
|
105
116
|
|
|
106
117
|
### Bring your own V8
|
|
107
118
|
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
119
|
+
*This is a great way to ensure that the builds of all gems that depend on libv8
|
|
120
|
+
fail. Please see the Gotchas section below and use the follwing instructions
|
|
121
|
+
only if you know what you're doing. If you're resorting to this because the
|
|
122
|
+
build of the gem is failing on your system or because there's no
|
|
123
|
+
platform-specific gem for your platform, please open up an issue.*
|
|
124
|
+
|
|
125
|
+
Because libv8 is the interface for the V8 engine used by several gems, you may
|
|
126
|
+
need to use libv8, even if you have V8 installed already. If you wish to use
|
|
127
|
+
your own V8 installation, rather than have it built for you, use the
|
|
128
|
+
`--with-system-v8` option.
|
|
113
129
|
|
|
114
130
|
Using RubyGems:
|
|
115
131
|
|
|
@@ -122,12 +138,14 @@ Using Bundler (in your Gemfile):
|
|
|
122
138
|
#### Gotchas
|
|
123
139
|
|
|
124
140
|
Please note that if you intend to run your own V8, you must install
|
|
125
|
-
both V8 *and its headers* (found in libv8-dev for Debian distros).
|
|
141
|
+
both V8 *and its headers* (found in libv8-dev for Debian-based distros).
|
|
126
142
|
|
|
127
|
-
Also keep in mind that
|
|
128
|
-
need to make sure that the
|
|
129
|
-
|
|
130
|
-
|
|
143
|
+
Also, keep in mind that V8's API does not tend to be stable and in case you're
|
|
144
|
+
using your local version of V8 you *need* to **make sure that the the gems that
|
|
145
|
+
depend on libv8 are compatible with the API of the version of V8 present on your
|
|
146
|
+
system**. Otherwise those gems' builds *will* fail. Ideally you want the same
|
|
147
|
+
version of V8 as the one packaged in the installed version of the gem. See the
|
|
148
|
+
Versioning section for more information.
|
|
131
149
|
|
|
132
150
|
### Bring your own compiler
|
|
133
151
|
|
|
@@ -141,11 +159,11 @@ environment variable before compilation, or by adding the
|
|
|
141
159
|
|
|
142
160
|
This project spun off of
|
|
143
161
|
[therubyracer](http://github.com/cowboyd/therubyracer) which depends
|
|
144
|
-
on having a specific version of
|
|
162
|
+
on having a specific version of V8 to compile and run against.
|
|
145
163
|
However, actually delivering that version reliably to all the
|
|
146
164
|
different platforms proved to be a challenge to say the least.
|
|
147
165
|
|
|
148
|
-
We got tired of waiting 5 minutes for
|
|
166
|
+
We got tired of waiting 5 minutes for V8 to compile every time we
|
|
149
167
|
installed that gem.
|
|
150
168
|
|
|
151
169
|
### Sponsored by
|
data/Rakefile
CHANGED
|
@@ -51,7 +51,7 @@ task :binary => :compile do
|
|
|
51
51
|
end
|
|
52
52
|
|
|
53
53
|
namespace :build do
|
|
54
|
-
['x86_64-linux', 'x86-linux', 'x86_64-
|
|
54
|
+
['x86_64-linux', 'x86-linux', 'armhf-linux', 'x86_64-freebsd-10'].each do |arch|
|
|
55
55
|
desc "build binary gem for #{arch}"
|
|
56
56
|
task arch do
|
|
57
57
|
arch_dir = Pathname(__FILE__).dirname.join("release/#{arch}")
|
data/ext/libv8/builder.rb
CHANGED
|
@@ -108,7 +108,7 @@ module Libv8
|
|
|
108
108
|
system "gclient fetch" or fail "could not fetch v8 build dependencies commits"
|
|
109
109
|
end
|
|
110
110
|
Dir.chdir('v8') do
|
|
111
|
-
unless system "git checkout #{source_version}
|
|
111
|
+
unless system "git checkout #{source_version}"
|
|
112
112
|
fail "unable to checkout source for v8 #{source_version}"
|
|
113
113
|
end
|
|
114
114
|
system "gclient sync" or fail "could not sync v8 build dependencies"
|
|
@@ -2,17 +2,18 @@ module Libv8
|
|
|
2
2
|
module Compiler
|
|
3
3
|
class AppleLLVM < Clang
|
|
4
4
|
LLVM_VERSION_REGEXP = /Apple LLVM version (\d+\.\d+(\.\d+)*) \(/i
|
|
5
|
+
REQUIRED_VERSION = '4.3'
|
|
5
6
|
|
|
6
7
|
def name
|
|
7
8
|
'Apple LLVM'
|
|
8
9
|
end
|
|
9
10
|
|
|
10
|
-
def compatible?
|
|
11
|
-
version >= '4.3' unless version.nil?
|
|
12
|
-
end
|
|
13
|
-
|
|
14
11
|
private
|
|
15
12
|
|
|
13
|
+
def required_version
|
|
14
|
+
REQUIRED_VERSION
|
|
15
|
+
end
|
|
16
|
+
|
|
16
17
|
def version_regexp
|
|
17
18
|
LLVM_VERSION_REGEXP
|
|
18
19
|
end
|
data/ext/libv8/compiler/clang.rb
CHANGED
|
@@ -2,17 +2,18 @@ module Libv8
|
|
|
2
2
|
module Compiler
|
|
3
3
|
class Clang < GenericCompiler
|
|
4
4
|
CLANG_VERSION_REGEXP = /clang version (\d+\.\d+(\.\d+)*) \(/i
|
|
5
|
+
REQUIRED_VERSION = '3.1'
|
|
5
6
|
|
|
6
7
|
def name
|
|
7
8
|
'clang'
|
|
8
9
|
end
|
|
9
10
|
|
|
10
|
-
def compatible?
|
|
11
|
-
version >= '3.1' unless version.nil?
|
|
12
|
-
end
|
|
13
|
-
|
|
14
11
|
private
|
|
15
12
|
|
|
13
|
+
def required_version
|
|
14
|
+
REQUIRED_VERSION
|
|
15
|
+
end
|
|
16
|
+
|
|
16
17
|
def version_regexp
|
|
17
18
|
CLANG_VERSION_REGEXP
|
|
18
19
|
end
|
data/ext/libv8/compiler/gcc.rb
CHANGED
|
@@ -2,17 +2,18 @@ module Libv8
|
|
|
2
2
|
module Compiler
|
|
3
3
|
class GCC < GenericCompiler
|
|
4
4
|
GCC_VERSION_REGEXP = /gcc version (\d+\.\d+(\.\d+)*)/i
|
|
5
|
+
REQUIRED_VERSION = '4.7'
|
|
5
6
|
|
|
6
7
|
def name
|
|
7
8
|
'GCC'
|
|
8
9
|
end
|
|
9
10
|
|
|
10
|
-
def compatible?
|
|
11
|
-
version > '4.7' unless version.nil?
|
|
12
|
-
end
|
|
13
|
-
|
|
14
11
|
private
|
|
15
12
|
|
|
13
|
+
def required_version
|
|
14
|
+
REQUIRED_VERSION
|
|
15
|
+
end
|
|
16
|
+
|
|
16
17
|
def version_regexp
|
|
17
18
|
GCC_VERSION_REGEXP
|
|
18
19
|
end
|
|
@@ -27,7 +27,9 @@ module Libv8
|
|
|
27
27
|
end
|
|
28
28
|
|
|
29
29
|
def compatible?
|
|
30
|
-
false
|
|
30
|
+
return false unless required_version && !version.nil?
|
|
31
|
+
|
|
32
|
+
(string_to_semver(version) <=> string_to_semver(required_version)) > -1
|
|
31
33
|
end
|
|
32
34
|
|
|
33
35
|
def call(*arguments)
|
|
@@ -51,6 +53,14 @@ module Libv8
|
|
|
51
53
|
def target_regexp
|
|
52
54
|
GENERIC_TARGET_REGEXP
|
|
53
55
|
end
|
|
56
|
+
|
|
57
|
+
def required_version
|
|
58
|
+
nil
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
def string_to_semver(version)
|
|
62
|
+
version.split('.').map(&:to_i)
|
|
63
|
+
end
|
|
54
64
|
end
|
|
55
65
|
end
|
|
56
66
|
end
|
data/lib/libv8/version.rb
CHANGED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
From 84470a0b6c696f42aa7f86ba5ffd22b17e0047c4 Mon Sep 17 00:00:00 2001
|
|
2
|
+
From: Petko Bordjukov <bordjukov@gmail.com>
|
|
3
|
+
Date: Mon, 25 Jul 2016 00:00:19 +0300
|
|
4
|
+
Subject: [PATCH 1/4] Build a standalone static library
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
gypfiles/standalone.gypi | 3 +++
|
|
8
|
+
1 file changed, 3 insertions(+)
|
|
9
|
+
|
|
10
|
+
diff --git a/gypfiles/standalone.gypi b/gypfiles/standalone.gypi
|
|
11
|
+
index 630c45e..1a69c6f 100644
|
|
12
|
+
--- a/gypfiles/standalone.gypi
|
|
13
|
+
+++ b/gypfiles/standalone.gypi
|
|
14
|
+
@@ -488,6 +488,9 @@
|
|
15
|
+
}], # fastbuild!=0
|
|
16
|
+
],
|
|
17
|
+
'target_conditions': [
|
|
18
|
+
+ ['_type=="static_library"', {
|
|
19
|
+
+ 'standalone_static_library': 1,
|
|
20
|
+
+ }],
|
|
21
|
+
['v8_code == 0', {
|
|
22
|
+
'defines!': [
|
|
23
|
+
'DEBUG',
|
|
24
|
+
--
|
|
25
|
+
2.9.0
|
|
26
|
+
|
data/patches/{0002-Disable-building-tests.patch → 0002-Don-t-compile-unnecessary-stuff.patch}
RENAMED
|
@@ -1,51 +1,48 @@
|
|
|
1
|
-
From
|
|
1
|
+
From 930d596106fb3289f6aa37cdf8abaec3106c31b9 Mon Sep 17 00:00:00 2001
|
|
2
2
|
From: Petko Bordjukov <bordjukov@gmail.com>
|
|
3
|
-
Date:
|
|
4
|
-
Subject: [PATCH 2/
|
|
3
|
+
Date: Mon, 25 Jul 2016 00:04:07 +0300
|
|
4
|
+
Subject: [PATCH 2/4] Don't compile unnecessary stuff
|
|
5
5
|
|
|
6
6
|
---
|
|
7
|
-
Makefile
|
|
8
|
-
|
|
9
|
-
2 files changed,
|
|
7
|
+
Makefile | 7 +------
|
|
8
|
+
gypfiles/all.gyp | 32 --------------------------------
|
|
9
|
+
2 files changed, 1 insertion(+), 38 deletions(-)
|
|
10
10
|
|
|
11
11
|
diff --git a/Makefile b/Makefile
|
|
12
|
-
index
|
|
12
|
+
index 0f8f93a..68778e9 100644
|
|
13
13
|
--- a/Makefile
|
|
14
14
|
+++ b/Makefile
|
|
15
|
-
@@ -
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
15
|
+
@@ -264,12 +264,7 @@ GYPFILES = third_party/icu/icu.gypi third_party/icu/icu.gyp \
|
|
16
|
+
gypfiles/shim_headers.gypi gypfiles/features.gypi \
|
|
17
|
+
gypfiles/standalone.gypi \
|
|
18
|
+
gypfiles/toolchain.gypi gypfiles/all.gyp gypfiles/mac/asan.gyp \
|
|
19
19
|
- test/cctest/cctest.gyp test/fuzzer/fuzzer.gyp \
|
|
20
|
-
- test/unittests/unittests.gyp
|
|
20
|
+
- test/unittests/unittests.gyp src/v8.gyp \
|
|
21
21
|
- tools/parser-shell.gyp testing/gmock.gyp testing/gtest.gyp \
|
|
22
|
-
|
|
23
|
-
buildtools/third_party/libc++abi/libc++abi.gyp \
|
|
22
|
+
- buildtools/third_party/libc++abi/libc++abi.gyp \
|
|
24
23
|
- buildtools/third_party/libc++/libc++.gyp samples/samples.gyp \
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
- src/third_party/vtune/v8vtune.gyp src/d8.gyp
|
|
25
|
+
+ src/v8.gyp tools/parser-shell.gyp src/d8.gyp
|
|
27
26
|
|
|
28
27
|
# If vtunejit=on, the v8vtune.gyp will be appended.
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
'type': 'none',
|
|
36
|
-
'dependencies': [
|
|
37
|
-
- '../samples/samples.gyp:*',
|
|
38
|
-
'../src/d8.gyp:d8',
|
|
39
|
-
- '../test/cctest/cctest.gyp:*',
|
|
40
|
-
- '../test/fuzzer/fuzzer.gyp:*',
|
|
41
|
-
- '../test/unittests/unittests.gyp:*',
|
|
42
|
-
],
|
|
43
|
-
'conditions': [
|
|
44
|
-
['component!="shared_library"', {
|
|
45
|
-
@@ -20,29 +16,6 @@
|
|
28
|
+
ifeq ($(vtunejit), on)
|
|
29
|
+
diff --git a/gypfiles/all.gyp b/gypfiles/all.gyp
|
|
30
|
+
index ff1bea4..96820a0 100644
|
|
31
|
+
--- a/gypfiles/all.gyp
|
|
32
|
+
+++ b/gypfiles/all.gyp
|
|
33
|
+
@@ -16,38 +16,6 @@
|
|
46
34
|
'../tools/parser-shell.gyp:parser-shell',
|
|
47
35
|
],
|
|
48
36
|
}],
|
|
37
|
+
- # These items don't compile for Android on Mac.
|
|
38
|
+
- ['host_os!="mac" or OS!="android"', {
|
|
39
|
+
- 'dependencies': [
|
|
40
|
+
- '../samples/samples.gyp:*',
|
|
41
|
+
- '../test/cctest/cctest.gyp:*',
|
|
42
|
+
- '../test/fuzzer/fuzzer.gyp:*',
|
|
43
|
+
- '../test/unittests/unittests.gyp:*',
|
|
44
|
+
- ],
|
|
45
|
+
- }],
|
|
49
46
|
- ['test_isolation_mode != "noop"', {
|
|
50
47
|
- 'dependencies': [
|
|
51
48
|
- '../test/bot_default.gyp:*',
|
|
@@ -73,5 +70,5 @@ index feaf4fe..96820a0 100644
|
|
|
73
70
|
}
|
|
74
71
|
]
|
|
75
72
|
--
|
|
76
|
-
2.
|
|
73
|
+
2.9.0
|
|
77
74
|
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
From
|
|
1
|
+
From 8873d0ee6e1304e256bf3181b287e189bc68a9c8 Mon Sep 17 00:00:00 2001
|
|
2
2
|
From: Petko Bordjukov <bordjukov@gmail.com>
|
|
3
|
-
Date:
|
|
4
|
-
Subject: [PATCH 3/
|
|
3
|
+
Date: Mon, 25 Jul 2016 00:05:47 +0300
|
|
4
|
+
Subject: [PATCH 3/4] Use the -fPIC flag for the static library
|
|
5
5
|
|
|
6
6
|
---
|
|
7
|
-
|
|
7
|
+
gypfiles/standalone.gypi | 2 +-
|
|
8
8
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
9
9
|
|
|
10
|
-
diff --git a/
|
|
11
|
-
index
|
|
12
|
-
--- a/
|
|
13
|
-
+++ b/
|
|
14
|
-
@@ -
|
|
10
|
+
diff --git a/gypfiles/standalone.gypi b/gypfiles/standalone.gypi
|
|
11
|
+
index 1a69c6f..b19304f 100644
|
|
12
|
+
--- a/gypfiles/standalone.gypi
|
|
13
|
+
+++ b/gypfiles/standalone.gypi
|
|
14
|
+
@@ -744,7 +744,7 @@
|
|
15
15
|
[ 'visibility=="hidden" and v8_enable_backtrace==0', {
|
|
16
16
|
'cflags': [ '-fvisibility=hidden' ],
|
|
17
17
|
}],
|
|
@@ -21,5 +21,5 @@ index 4f10909..3a67af3 100644
|
|
|
21
21
|
}],
|
|
22
22
|
[ 'clang==0 and coverage==1', {
|
|
23
23
|
--
|
|
24
|
-
2.
|
|
24
|
+
2.9.0
|
|
25
25
|
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
From 0f376ac8f77980b86bfbfb55e3a1714201a0f78f Mon Sep 17 00:00:00 2001
|
|
2
|
+
From: Petko Bordjukov <bordjukov@gmail.com>
|
|
3
|
+
Date: Wed, 27 Jul 2016 06:20:13 +0300
|
|
4
|
+
Subject: [PATCH 4/4] Reinterpret thread hash for FreeBSD, too
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
src/profiler/sampler.cc | 2 +-
|
|
8
|
+
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
9
|
+
|
|
10
|
+
diff --git a/src/profiler/sampler.cc b/src/profiler/sampler.cc
|
|
11
|
+
index ae47dca..4eb8780 100644
|
|
12
|
+
--- a/src/profiler/sampler.cc
|
|
13
|
+
+++ b/src/profiler/sampler.cc
|
|
14
|
+
@@ -210,7 +210,7 @@ void* ThreadKey(pthread_t thread_id) {
|
|
15
|
+
|
|
16
|
+
// Returns hash value for hash map.
|
|
17
|
+
uint32_t ThreadHash(pthread_t thread_id) {
|
|
18
|
+
-#if V8_OS_MACOSX
|
|
19
|
+
+#if (V8_OS_MACOSX || V8_OS_FREEBSD)
|
|
20
|
+
return static_cast<uint32_t>(reinterpret_cast<intptr_t>(thread_id));
|
|
21
|
+
#else
|
|
22
|
+
return static_cast<uint32_t>(thread_id);
|
|
23
|
+
--
|
|
24
|
+
2.9.0
|
|
25
|
+
|