Преглед изворни кода

Update v8pp + v8. This required a bunch of changes.

This will also require a bunch of fixes in Starcry.
master
Ray Burgemeestre пре 5 година
родитељ
комит
700d514d57
3 измењених фајлова са 69 додато и 22 уклоњено
  1. +13
    -5
      v8pp/Makefile
  2. +41
    -0
      v8pp/build-v8.sh
  3. +15
    -17
      v8pp/v8-include.txt

+ 13
- 5
v8pp/Makefile Прегледај датотеку

@@ -1,10 +1,17 @@
SHELL:=/bin/bash

v8pp:
env
git clone https://github.com/rayburgemeestre/v8pp
v8:
# git clone https://github.com/rayburgemeestre/v8pp
#
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
bash ../ubuntu1804.sh make build
bash ../ubuntu1804.sh make archive # outside container not enough permissions

# will be factored out at some point
git clone https://github.com/pmed/v8pp
pushd v8pp && git checkout 8ad6c07b13a811d9132c202f48b4a902d5685a98 # master at time of writing

# also packages v8pp for now
make package

build:
@@ -15,7 +22,7 @@ build:
update-alternatives --install /usr/bin/ld ld /usr/bin/ld.lld-9 40
apt-get update
apt-get install pkg-config -y
cd v8pp && ./build-v8.sh
./build-v8.sh

archive:
rm -rf v8.a
@@ -35,13 +42,14 @@ package:
cp -prv v8.a out/opt/cppse/build/v8pp/lib

cp -prv v8pp/v8pp out/opt/cppse/build/v8pp/include/
cp -prv v8pp/v8/include out/opt/cppse/build/v8pp/include/v8
cp -prv v8/include out/opt/cppse/build/v8pp/include/v8

docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -s dir -t deb -n v8pp --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "v8pp - build dependency" --url "https://github.com/rayburgemeestre/v8pp" --deb-generate-changes -C /src/out

clean:
rm -rf v8pp
rm -rf out
rm -rf depot_tools

shell:
FLAGS="-i --privileged" bash ../ubuntu1804.sh /bin/bash

+ 41
- 0
v8pp/build-v8.sh Прегледај датотеку

@@ -0,0 +1,41 @@
#!/bin/bash

export PATH=`pwd`/depot_tools:"$PATH"
fetch v8
#gclient sync -r 6.9.427.6 # 55da769bafac8b531cd8b388df56161b8b7c6416
# gclient sync -r 7.1.69 #
#gclient sync -r lkgr/6.9

# newest version I found supported via v8pp CI:
# gclient sync -r 6.9.427.13 # https://ci.appveyor.com/project/pmed/v8pp
cd v8
gclient sync -r 7.5.288.23 #https://github.com/pmed/v8-nuget/
# old version
#git checkout 5.5.372.7

#GYP_DIR=build
#if [ ! -f "$GYP_DIR"/gyp_v8 ] ; then
# GYP_DIR=gypfiles
#fi
# Google got rid of this gyp stuff: https://chromium-review.googlesource.com/c/v8/v8/+/897566
# Looks like we have to use GN now: https://github.com/v8/v8/wiki/Building-with-GN

# OLD
#GYP_GENERATORS=make "$GYP_DIR"/gyp_v8 --generator-output=out --depth=. -I"$GYP_DIR"/standalone.gypi -I../v8_options.gypi "$GYP_DIR"/all.gyp
#make v8 v8_libplatform -C out BUILDTYPE=Release -j8 builddir=$(pwd)/out/Release

# NEW
# ./build/install-build-deps.sh
./tools/dev/gm.py x64.release

# workaround, see notes.txt
echo "v8_enable_embedded_builtins = false" | tee -a out/x64.release/args.gn
./tools/dev/gm.py x64.release

#mkdir -p lib
#cp out/Release/lib.target/*.so lib
#cp out/Release/lib* lib
#cp out/x64.release/obj/*.a lib
#cp out/x64.release/obj/*.so lib
#cp out/x64.release/obj/libv8* lib
#./v8/out/x64.release/obj/libv8_libbase.a

+ 15
- 17
v8pp/v8-include.txt Прегледај датотеку

@@ -1,17 +1,15 @@
./v8pp/v8/out/x64.release/obj/buildtools/third_party/libc++abi/libc++abi
./v8pp/v8/out/x64.release/obj/buildtools/third_party/libc++/libc++
./v8pp/v8/out/x64.release/obj/d8
./v8pp/v8/out/x64.release/obj/mksnapshot
./v8pp/v8/out/x64.release/obj/src/inspector/inspector
./v8pp/v8/out/x64.release/obj/third_party/antlr4/antlr4
./v8pp/v8/out/x64.release/obj/third_party/icu/icui18n
./v8pp/v8/out/x64.release/obj/third_party/icu/icuuc
./v8pp/v8/out/x64.release/obj/torque
./v8pp/v8/out/x64.release/obj/torque_generated_initializers
./v8pp/v8/out/x64.release/obj/v8_base
./v8pp/v8/out/x64.release/obj/v8_init
./v8pp/v8/out/x64.release/obj/v8_initializers
./v8pp/v8/out/x64.release/obj/v8_libbase
./v8pp/v8/out/x64.release/obj/v8_libplatform
./v8pp/v8/out/x64.release/obj/v8_libsampler
./v8pp/v8/out/x64.release/obj/v8_nosnapshot
./v8/out/x64.release/obj/buildtools/third_party/libc++abi/libc++abi
./v8/out/x64.release/obj/buildtools/third_party/libc++/libc++
./v8/out/x64.release/obj/d8
./v8/out/x64.release/obj/mksnapshot
./v8/out/x64.release/obj/src/inspector/inspector
./v8/out/x64.release/obj/third_party/icu/icui18n
./v8/out/x64.release/obj/third_party/icu/icuuc
./v8/out/x64.release/obj/torque
./v8/out/x64.release/obj/torque_generated_initializers
./v8/out/x64.release/obj/v8_init
./v8/out/x64.release/obj/v8_initializers
./v8/out/x64.release/obj/v8_libbase
./v8/out/x64.release/obj/v8_libplatform
./v8/out/x64.release/obj/v8_libsampler
./v8/out/x64.release/obj/v8_nosnapshot

Loading…
Откажи
Сачувај