Build and release v8 #53
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build and release v8 | |
on: workflow_dispatch | |
jobs: | |
build_macos_arm64: | |
name: macOS-arm64 | |
runs-on: macos-14 | |
steps: | |
- name: Install Depot Tools | |
uses: newkdev/[email protected] | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.11.7' | |
- run: | | |
echo 'solutions = [ | |
{ | |
"name": "v8", | |
"url": "https://github.com/openwebf/v8.git", | |
"deps_file": "DEPS", | |
"managed": False, | |
"custom_deps": {} | |
}, | |
]' > .gclient | |
- run: cat .gclient | |
- run: ls -la | |
- run: gclient sync && cd v8 | |
- name: Generate build dir | |
run: cd v8 && ./tools/dev/v8gen.py arm64.release -vv | |
- run: cd v8 && rm ./out.gn/arm64.release/args.gn | |
- run: | | |
echo 'is_component_build = true | |
is_debug = false | |
target_cpu = "arm64" | |
v8_target_cpu = "arm64" | |
use_goma = false | |
v8_enable_backtrace = true | |
v8_enable_i18n_support = false | |
v8_use_zlib = false | |
use_custom_libcxx = false | |
v8_enable_i18n_support = false | |
symbol_level = 0 | |
v8_enable_webassembly = false | |
v8_enable_disassembler = false | |
v8_enable_object_print = false | |
v8_enable_verify_heap = false | |
dcheck_always_on = false | |
v8_enable_pointer_compression = false | |
v8_use_external_startup_data = true' > v8/out.gn/arm64.release/args.gn | |
- run: cat v8/out.gn/arm64.release/args.gn | |
- name: Setup Ninja | |
uses: ashutoshvarma/setup-ninja@master | |
with: | |
version: 1.10.0 | |
- name: Build | |
run: ninja -C ./v8/out.gn/arm64.release | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: v8_macos_arm64 | |
path: | | |
v8/out.gn/arm64.release/libv8.dylib | |
v8/out.gn/arm64.release/libv8_libbase.dylib | |
v8/out.gn/arm64.release/libv8_libplatform.dylib | |
v8/out.gn/arm64.release/libthird_party_abseil-cpp_absl.dylib | |
v8/out.gn/arm64.release/d8 | |
v8/include | |
v8/out.gn/arm64.release/mkgrokdump | |
v8/out.gn/arm64.release/mksnapshot | |
v8/out.gn/arm64.release/torque | |
v8/out.gn/arm64.release/torque-language-server | |
build_macos_x86_64: | |
name: macOS-x86_64 | |
runs-on: macos-14 | |
steps: | |
- name: Install Depot Tools | |
uses: newkdev/[email protected] | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.11.7' | |
- run: | | |
echo 'solutions = [ | |
{ | |
"name": "v8", | |
"url": "https://github.com/openwebf/v8.git", | |
"deps_file": "DEPS", | |
"managed": False, | |
"custom_deps": {} | |
}, | |
]' > .gclient | |
- run: cat .gclient | |
- run: ls -la | |
- run: gclient sync && cd v8 | |
- name: Generate build dir | |
run: cd v8 && ./tools/dev/v8gen.py x64.release -vv | |
- run: cd v8 && rm ./out.gn/x64.release/args.gn | |
- run: | | |
echo 'is_component_build = true | |
is_debug = false | |
target_cpu = "x64" | |
v8_target_cpu = "x64" | |
use_goma = false | |
v8_enable_backtrace = "" | |
v8_use_zlib = false | |
v8_enable_i18n_support = false | |
symbol_level = 0 | |
v8_enable_webassembly = false | |
v8_enable_disassembler = "" | |
v8_enable_object_print = "" | |
v8_enable_verify_heap = "" | |
dcheck_always_on = false | |
v8_enable_pointer_compression = "" | |
v8_use_external_startup_data = true' > v8/out.gn/x64.release/args.gn | |
- run: cat v8/out.gn/x64.release/args.gn | |
- name: Setup Ninja | |
uses: ashutoshvarma/setup-ninja@master | |
with: | |
version: 1.10.0 | |
- name: Build | |
run: ninja -v -C ./v8/out.gn/x64.release | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: macos_x86_64 | |
path: | | |
v8/out.gn/x64.release/libv8.dylib | |
v8/out.gn/x64.release/libv8_libbase.dylib | |
v8/out.gn/x64.release/libv8_libplatform.dylib | |
v8/out.gn/x64.release/libthird_party_abseil-cpp_absl.dylib | |
v8/out.gn/x64.release/d8 | |
v8/include | |
v8/out.gn/x64.release/mkgrokdump | |
v8/out.gn/x64.release/mksnapshot | |
v8/out.gn/x64.release/torque | |
v8/out.gn/x64.release/torque-language-server | |
build_android_arm64: | |
name: android-arm64 | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install Depot Tools | |
uses: newkdev/[email protected] | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.11.7' | |
- uses: nttld/setup-ndk@v1 | |
with: | |
ndk-version: r16b | |
- run: | | |
echo 'solutions = [ | |
{ | |
"name": "v8", | |
"url": "https://github.com/openwebf/v8.git", | |
"deps_file": "DEPS", | |
"managed": False, | |
"custom_deps": {} | |
}, | |
] | |
target_os = ["android"] | |
' > .gclient | |
- run: cat .gclient | |
- run: gclient sync && cd v8 | |
- name: Generate build dir | |
run: cd v8 && ./tools/dev/v8gen.py arm64.release -vv | |
- run: cd v8 && rm ./out.gn/arm64.release/args.gn | |
- run: | | |
echo 'is_component_build = true | |
is_debug = false | |
target_cpu = "arm64" | |
target_os = "android" | |
v8_target_cpu = "arm64" | |
use_goma = false | |
v8_enable_backtrace = true | |
v8_enable_i18n_support = false | |
v8_use_zlib = true | |
v8_enable_i18n_support = false | |
symbol_level = 0 | |
v8_enable_webassembly = false | |
v8_enable_disassembler = false | |
v8_enable_object_print = false | |
v8_enable_snapshot_compression = true | |
v8_enable_verify_heap = false | |
dcheck_always_on = false | |
v8_enable_pointer_compression = false | |
v8_use_external_startup_data = true' > v8/out.gn/arm64.release/args.gn | |
- run: cat v8/out.gn/arm64.release/args.gn | |
- name: Setup Ninja | |
uses: ashutoshvarma/setup-ninja@master | |
with: | |
version: 1.10.0 | |
- name: Build | |
run: ninja -C ./v8/out.gn/arm64.release | |
- run: cd v8/out.gn/ && ls -la | |
build_windows_x86_64: | |
name: windows-x64 | |
runs-on: windows-latest | |
steps: | |
- name: Install Depot Tools | |
uses: newkdev/[email protected] | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.11.7' | |
- run: | | |
echo 'solutions = [ | |
{ | |
"name": "v8", | |
"url": "https://github.com/openwebf/v8.git", | |
"deps_file": "DEPS", | |
"managed": False, | |
"custom_deps": {} | |
}, | |
] | |
' > .gclient | |
- run: cat .gclient | |
- run: gclient sync && cd v8 | |
- name: Generate build dir | |
run: python3 v8/tools/dev/v8gen.py arm64.release -vv | |
- run: | | |
@"is_component_build = true | |
is_debug = false | |
target_cpu = "arm64" | |
target_os = "android" | |
v8_target_cpu = "arm64" | |
use_goma = false | |
v8_enable_backtrace = true | |
v8_enable_i18n_support = false | |
v8_use_zlib = false | |
use_custom_libcxx = false | |
v8_enable_i18n_support = false | |
symbol_level = 0 | |
v8_enable_webassembly = false | |
v8_enable_disassembler = false | |
v8_enable_object_print = false | |
v8_enable_verify_heap = false | |
dcheck_always_on = false | |
v8_enable_pointer_compression = false | |
v8_use_external_startup_data = true"@ | Out-File -FilePath v8/out.gn/arm64.release/args.gn | |
- name: Setup Ninja | |
uses: ashutoshvarma/setup-ninja@master | |
with: | |
version: 1.10.0 | |
- name: Build | |
run: ninja -C ./v8/out.gn/arm64.release | |
- run: cd v8/out.gn/ && ls -la |