Contains the Google's V8 build used in android runtime.
- get depot tools more :
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
export PATH=`pwd`/depot_tools:"$PATH"
- Make sure you have these packages installed (Linux only)
sudo apt-get install curl libc6-dev-i386 g++-multilib
- Download and extract Android NDK 19
Mac OS:
curl -O https://dl.google.com/android/repository/android-ndk-r19-darwin-x86_64.zip
unzip android-ndk-r19-darwin-x86_64.zip -d ndkr19
You need to use XCode < 10 to be able to build v8
Linux:
curl -O https://dl.google.com/android/repository/android-ndk-r19-linux-x86_64.zip
unzip android-ndk-r19-linux-x86_64.zip -d ndkr19
- Export ANDROID_NDK_HOME environment variable
export ANDROID_NDK_HOME=`pwd`/ndkr19/android-ndk-r19
-
fetch v8(this will create av8repo folder) -
cd v8
-
Create symlinks
mkdir third_party/android_tools
ln -s $ANDROID_NDK_HOME third_party/android_tools/ndk
ln -s $ANDROID_NDK_HOME third_party/android_ndk
- checkout tag 7.2.502.25
git checkout 7.2.502.25
- Run sync
gclient sync
- Apply patch running the following command
../apply_patch
- run the following command in the root folder command
cd ..
./build_v8
you can run:
../build_v8 debugif you want to build v8 in debug, by default it's built in release.
The output folder is called dist and it's created at v8 root level.
git diff 04a2 b36f > patch.diff
- Copy the files from the v8/dist folder in the corresponding folder in android-runtime
- Update the v8-versions.json file in the android-runtime root folder
- Update the settings.json file in android-runtime/build-artifacts/project-template-gradle
- Replace all the needed header and inspector files in the repo. The following article might be helpful