Skip to content
This repository was archived by the owner on Dec 4, 2023. It is now read-only.

Commit c714ddf

Browse files
committed
Remove the options to specify --with-system-v8 and --with-cxx
1 parent e0c8685 commit c714ddf

2 files changed

Lines changed: 3 additions & 60 deletions

File tree

README.md

Lines changed: 2 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ source and binary form.
1111
### Why?
1212

1313
The goal of libv8 is two fold: provide a binary gem containing the a
14-
pre-compiled libv8.a for as many platforms as possible while at the
14+
pre-compiled libv8_monolith.a for as many platforms as possible while at the
1515
same time supporting for an automated compilation for all others.
1616

1717
Not only does this drastically reduce gem install times, but it also
@@ -74,27 +74,11 @@ source-based distribution
7474

7575
> This step release system is a workaround to carlhuda/bundler#1537
7676
77-
##### Use with different standard C libraries
78-
79-
The Linux binary versions of this gem are linked against the most used standard
80-
library - glibc. Currently rubygems has no mechanism to differentiate
81-
platform-specific gems by standard library so we have no way of distributing
82-
different binaries for different standard libraries.
83-
84-
What this means is that if you're running a distro that does not use glibc
85-
(like Alpine Linux), you'll have to use a source version of the gem.
86-
87-
Also, at the time of writing this, the Ruby version in Alpine's package
88-
repositories has been patched to not look to download binary versions of gems at
89-
all.
90-
9177
### Requirements
9278

9379
Building the V8 library from source imposes the following requirements:
9480

95-
* A compiler that supports C++11 (such as GCC 4.8 and above or clang,
96-
preferably 3.5 and above)
97-
* GNU Make
81+
* Ninja
9882
* Python 2
9983

10084
### Using a git version
@@ -122,47 +106,6 @@ To get the source, these commands will get you started:
122106
bundle install
123107
bundle exec rake compile
124108

125-
### Bring your own V8
126-
127-
*This is a great way to ensure that the builds of all gems that depend on libv8
128-
fail. Please see the Gotchas section below and use the follwing instructions
129-
only if you know what you're doing. If you're resorting to this because the
130-
build of the gem is failing on your system or because there's no
131-
platform-specific gem for your platform, please open up an issue.*
132-
133-
Because libv8 is the interface for the V8 engine used by several gems, you may
134-
need to use libv8, even if you have V8 installed already. If you wish to use
135-
your own V8 installation, rather than have it built for you, use the
136-
`--with-system-v8` option.
137-
138-
Using RubyGems:
139-
140-
gem install libv8 -- --with-system-v8
141-
142-
Using Bundler (in your Gemfile):
143-
144-
bundle config build.libv8 --with-system-v8
145-
146-
#### Gotchas
147-
148-
Please note that if you intend to run your own V8, you must install
149-
both V8 *and its headers* (found in libv8-dev for Debian-based distros).
150-
151-
Also, keep in mind that V8's API does not tend to be stable and in case you're
152-
using your local version of V8 you *need* to **make sure that the the gems that
153-
depend on libv8 are compatible with the API of the version of V8 present on your
154-
system**. Otherwise those gems' builds *will* fail. Ideally you want the same
155-
version of V8 as the one packaged in the installed version of the gem. See the
156-
Versioning section for more information.
157-
158-
### Bring your own compiler
159-
160-
You can specify a compiler of your choice by either setting the `CXX`
161-
environment variable before compilation, or by adding the
162-
`--with-cxx=<compiler>` option to the bundle configuration:
163-
164-
bundle config build.libv8 --with-cxx=clang++
165-
166109
### About
167110

168111
This project spun off of

ext/libv8/extconf.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22
create_makefile('libv8')
33

44
require File.expand_path '../location', __FILE__
5-
location = with_config('system-v8') ? Libv8::Location::System.new : Libv8::Location::Vendor.new
5+
location = Libv8::Location::Vendor.new
66

77
exit location.install!

0 commit comments

Comments
 (0)