mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-09-14 13:32:23 +00:00
Meta: Add offline build for ANGLE flatpak module
At the same time, build with gcc instead of bundled clang. Co-Authored-By: Andrew Kaster <andrew@ladybird.org>
This commit is contained in:
parent
7d458103a8
commit
0c89b2e690
Notes:
github-actions[bot]
2025-07-23 21:13:28 +00:00
Author: https://github.com/JanKoudijs 🔰
Commit: 0c89b2e690
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/5500
Reviewed-by: https://github.com/ADKaster ✅
8 changed files with 180 additions and 22 deletions
|
@ -2,7 +2,6 @@
|
||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
export PATH=$PWD/depot_tools:$PATH
|
|
||||||
cd angle
|
cd angle
|
||||||
|
|
||||||
ninja -j"$(nproc)" -C out
|
ninja -j"$(nproc)" -C out
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git depot_tools
|
|
||||||
export PATH=$PWD/depot_tools:$PATH
|
|
||||||
|
|
||||||
gclient config https://chromium.googlesource.com/angle/angle < <(yes)
|
|
||||||
gclient sync -r chromium/7258 < <(yes)
|
|
||||||
gclient runhooks < <(yes)
|
|
|
@ -2,14 +2,15 @@
|
||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
export PATH=$PWD/depot_tools:$PATH
|
|
||||||
cd angle
|
cd angle
|
||||||
|
|
||||||
gn gen out --args='
|
gn gen out --args='
|
||||||
|
is_clang=false
|
||||||
is_official_build=true
|
is_official_build=true
|
||||||
is_component_build=true
|
is_component_build=true
|
||||||
is_debug=false
|
is_debug=false
|
||||||
angle_build_tests=false
|
angle_build_tests=false
|
||||||
|
angle_enable_abseil=true
|
||||||
angle_enable_renderdoc=false
|
angle_enable_renderdoc=false
|
||||||
angle_enable_swiftshader=false
|
angle_enable_swiftshader=false
|
||||||
angle_enable_vulkan=true
|
angle_enable_vulkan=true
|
||||||
|
@ -18,8 +19,11 @@ gn gen out --args='
|
||||||
angle_use_wayland=true
|
angle_use_wayland=true
|
||||||
angle_use_x11=false
|
angle_use_x11=false
|
||||||
build_angle_deqp_tests=false
|
build_angle_deqp_tests=false
|
||||||
|
treat_warnings_as_errors=false
|
||||||
use_custom_libcxx=false
|
use_custom_libcxx=false
|
||||||
use_safe_libstdcxx=true
|
use_safe_libstdcxx=true
|
||||||
|
use_siso=false
|
||||||
|
use_sysroot=false
|
||||||
chrome_pgo_phase=0
|
chrome_pgo_phase=0
|
||||||
is_cfi = false
|
is_cfi = false
|
||||||
'
|
'
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
export PATH=$PWD/depot_tools:$PATH
|
|
||||||
cd angle
|
cd angle
|
||||||
|
|
||||||
# Headers
|
# Headers
|
||||||
|
@ -41,5 +40,3 @@ cat > "$FLATPAK_DEST/lib/pkgconfig/angle.pc" <<EOF
|
||||||
Libs: -L\${libdir} -lEGL -lGLESv2
|
Libs: -L\${libdir} -lEGL -lGLESv2
|
||||||
Cflags: -I\${includedir}/angle
|
Cflags: -I\${includedir}/angle
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
git reset --hard origin/main
|
|
||||||
|
|
121
Meta/CMake/flatpak/angle/angle-sources.json
Normal file
121
Meta/CMake/flatpak/angle/angle-sources.json
Normal file
|
@ -0,0 +1,121 @@
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/chromium/src/build.git",
|
||||||
|
"commit": "169fcf699b64d2d5e75a391beaec8a7ad6e41a7f",
|
||||||
|
"dest": "angle/build",
|
||||||
|
"disable-submodules": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/chromium/src/testing",
|
||||||
|
"commit": "0d5210a4b1978e7e2c6b8623c719dff0a0994a8f",
|
||||||
|
"dest": "angle/testing",
|
||||||
|
"disable-submodules": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp",
|
||||||
|
"commit": "e3d58ba1a2a04f85225c3c04fa4603bb64399b2c",
|
||||||
|
"dest": "angle/third_party/abseil-cpp",
|
||||||
|
"disable-submodules": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/external/github.com/ARM-software/astc-encoder",
|
||||||
|
"commit": "2319d9c4d4af53a7fc7c52985e264ce6e8a02a9b",
|
||||||
|
"dest": "angle/third_party/astc-encoder/src",
|
||||||
|
"disable-submodules": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/EGL-Registry",
|
||||||
|
"commit": "7dea2ed79187cd13f76183c4b9100159b9e3e071",
|
||||||
|
"dest": "angle/third_party/EGL-Registry/src",
|
||||||
|
"disable-submodules": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/chromiumos/third_party/libdrm.git",
|
||||||
|
"commit": "ad78bb591d02162d3b90890aa4d0a238b2a37cde",
|
||||||
|
"dest": "angle/third_party/libdrm/src",
|
||||||
|
"disable-submodules": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/chromium/src/third_party/jsoncpp",
|
||||||
|
"commit": "f62d44704b4da6014aa231cfc116e7fd29617d2a",
|
||||||
|
"dest": "angle/third_party/jsoncpp",
|
||||||
|
"disable-submodules": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/external/github.com/open-source-parsers/jsoncpp.git",
|
||||||
|
"branch": "master",
|
||||||
|
"dest": "angle/third_party/jsoncpp/source",
|
||||||
|
"disable-submodules": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/OpenGL-Registry",
|
||||||
|
"commit": "200cea4030cb49d3e40677379e6368a5f0e8c27b",
|
||||||
|
"dest": "angle/third_party/OpenGL-Registry/src",
|
||||||
|
"disable-submodules": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/external/github.com/Tencent/rapidjson",
|
||||||
|
"commit": "781a4e667d84aeedbeb8184b7b62425ea66ec59f",
|
||||||
|
"dest": "angle/third_party/rapidjson/src",
|
||||||
|
"disable-submodules": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers",
|
||||||
|
"commit": "2a611a970fdbc41ac2e3e328802aed9985352dca",
|
||||||
|
"dest": "angle/third_party/spirv-headers/src",
|
||||||
|
"disable-submodules": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools",
|
||||||
|
"commit": "108b19e5c6979f496deffad4acbe354237afa7d3",
|
||||||
|
"dest": "angle/third_party/spirv-tools/src",
|
||||||
|
"disable-submodules": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers",
|
||||||
|
"commit": "10739e8e00a7b6f74d22dd0a547f1406ff1f5eb9",
|
||||||
|
"dest": "angle/third_party/vulkan-headers/src",
|
||||||
|
"disable-submodules": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader",
|
||||||
|
"commit": "c8a2c8c9164a58ce71c1c77104e28e8de724539e",
|
||||||
|
"dest": "angle/third_party/vulkan-loader/src",
|
||||||
|
"disable-submodules": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools",
|
||||||
|
"commit": "e3fc64396755191b3c51e5c57d0454872e7fa487",
|
||||||
|
"dest": "angle/third_party/vulkan-tools/src",
|
||||||
|
"disable-submodules": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator",
|
||||||
|
"commit": "56300b29fbfcc693ee6609ddad3fdd5b7a449a21",
|
||||||
|
"dest": "angle/third_party/vulkan_memory_allocator",
|
||||||
|
"disable-submodules": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/chromium/src/third_party/zlib",
|
||||||
|
"commit": "4028ebf8710ee39d2286cb0f847f9b95c59f84d8",
|
||||||
|
"dest": "angle/third_party/zlib",
|
||||||
|
"disable-submodules": true
|
||||||
|
}
|
||||||
|
]
|
13
Meta/CMake/flatpak/angle/build-arm64.patch
Normal file
13
Meta/CMake/flatpak/angle/build-arm64.patch
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
diff --git a/toolchain/linux/BUILD.gn b/toolchain/linux/BUILD.gn
|
||||||
|
index a6e20a05c..8eaab3250 100644
|
||||||
|
--- a/toolchain/linux/BUILD.gn
|
||||||
|
+++ b/toolchain/linux/BUILD.gn
|
||||||
|
@@ -31,7 +31,7 @@ clang_toolchain("clang_arm64") {
|
||||||
|
}
|
||||||
|
|
||||||
|
gcc_toolchain("arm64") {
|
||||||
|
- toolprefix = "aarch64-linux-gnu-"
|
||||||
|
+ toolprefix = ""
|
||||||
|
|
||||||
|
cc = "${toolprefix}gcc"
|
||||||
|
cxx = "${toolprefix}g++"
|
5
Meta/CMake/flatpak/angle/gclient_args.gni
Normal file
5
Meta/CMake/flatpak/angle/gclient_args.gni
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
# Generated from 'DEPS'
|
||||||
|
checkout_angle_internal = false
|
||||||
|
checkout_angle_mesa = false
|
||||||
|
checkout_angle_restricted_traces = false
|
||||||
|
generate_location_tags = false
|
|
@ -104,15 +104,45 @@
|
||||||
{
|
{
|
||||||
"name": "angle",
|
"name": "angle",
|
||||||
"buildsystem": "simple",
|
"buildsystem": "simple",
|
||||||
"build-options": {
|
|
||||||
"build-args": [
|
|
||||||
"--share=network"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"sources": [
|
"sources": [
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://chromium.googlesource.com/angle/angle",
|
||||||
|
"commit": "7ab02e1d49a649adaba62b8a7fdfabf8144b313f",
|
||||||
|
"dest": "angle",
|
||||||
|
"disable-submodules": true
|
||||||
|
},
|
||||||
|
"angle/angle-sources.json",
|
||||||
{
|
{
|
||||||
"type": "file",
|
"type": "file",
|
||||||
"path": "angle/angle-checkout.sh"
|
"url": "https://storage.googleapis.com/angle-glslang-validator/de8679c3e2f15291ba4f5c32eebc954ce78bf39c",
|
||||||
|
"sha256": "48296cebcdc8a57d9c1a0b93a51b3d33ad7c554d8d258d82ad2b9a9808a24a2e",
|
||||||
|
"dest": "angle/tools/glslang",
|
||||||
|
"dest-filename": "glslang_validator"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "file",
|
||||||
|
"url": "https://storage.googleapis.com/angle-flex-bison/36625019a2442ac8efc92c32e1d61bd3f450b7ab",
|
||||||
|
"sha256": "d786285a7bdbaa8315b3af79ad7134bcc9924ee9bb49555b03a6fc94a103a80b",
|
||||||
|
"dest": "angle/tools/flex-bison/linux",
|
||||||
|
"dest-filename": "bison"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "file",
|
||||||
|
"url": "https://storage.googleapis.com/angle-flex-bison/3c9694c62a4ad0d1f95b45bb748855c3688c923e",
|
||||||
|
"sha256": "fbfdf6cf32ecb5bf21b41cf7efc8c771d66cdcf5ca1e3ae5762a74ff136f93a3",
|
||||||
|
"dest": "angle/tools/flex-bison/linux",
|
||||||
|
"dest-filename": "flex"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "file",
|
||||||
|
"path": "angle/gclient_args.gni",
|
||||||
|
"dest": "angle/build/config"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "patch",
|
||||||
|
"path": "angle/build-arm64.patch",
|
||||||
|
"dest": "angle/build"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "file",
|
"type": "file",
|
||||||
|
@ -128,7 +158,6 @@
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"build-commands": [
|
"build-commands": [
|
||||||
"./angle-checkout.sh",
|
|
||||||
"./angle-configure.sh",
|
"./angle-configure.sh",
|
||||||
"./angle-build.sh",
|
"./angle-build.sh",
|
||||||
"./angle-install.sh"
|
"./angle-install.sh"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue