0
0
mirror of https://github.com/phpv8/v8js.git synced 2024-12-22 15:11:53 +00:00

Remove compilation instructions for old versions of V8

This commit is contained in:
Stefan Siegl 2017-11-12 14:50:57 +01:00 committed by GitHub
parent b767fa4a4e
commit fbfce17a8b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -68,61 +68,6 @@ sudo cp -R include/* /opt/v8/include/
```
Compile V8 versions 5.5 and older (using Gyp)
---------------------------------------------
```
# Install `build-essential` if you haven't already:
sudo apt install build-essential
# Install `chrpath` for fixing libv8.so's RUNPATH header, if you haven't already:
sudo apt install chrpath
cd /tmp
# Install depot_tools first (needed for source checkout)
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
export PATH=`pwd`/depot_tools:"$PATH"
# Download v8
fetch v8
cd v8
# (optional) If you'd like to build a certain version:
git checkout 4.9.385.28
gclient sync
# Build (with internal snapshots)
export GYPFLAGS="-Dv8_use_external_startup_data=0"
# Force gyp to use system-wide ld.gold
export GYPFLAGS="${GYPFLAGS} -Dlinux_use_bundled_gold=0"
# Compile V8 (using up to 8 CPU cores, requires a lot of RAM, adapt as needed)
make native library=shared snapshot=on -j8
# Install to /opt/v8
sudo mkdir -p /opt/v8/{lib,include}
sudo cp out/native/lib.target/lib*.so /opt/v8/lib/
sudo cp -R include/* /opt/v8/include
# Fix libv8.so's RUNPATH header
sudo chrpath -r '$ORIGIN' /opt/v8/lib/libv8.so
# Install libv8_libplatform.a (V8 >= 5.2.51)
echo -e "create /opt/v8/lib/libv8_libplatform.a\naddlib out/native/obj.target/src/libv8_libplatform.a\nsave\nend" | sudo ar -M
# ... same for V8 < 5.2.51, libv8_libplatform.a is built in tools/gyp directory
echo -e "create /opt/v8/lib/libv8_libplatform.a\naddlib out/native/obj.target/tools/gyp/libv8_libplatform.a\nsave\nend" | sudo ar -M
```
`libv8_libplatform.a` should not be copied directly since it's a thin
archive, i.e. it contains only pointers to the build objects, which
otherwise must not be deleted. The simple mri-script converts the
thin archive to a normal archive.
Compile php-v8js itself
-----------------------