From 5190ca06c42413fe245ce74f94e104bc177c36a6 Mon Sep 17 00:00:00 2001 From: Muki Kiboigo Date: Sat, 25 Oct 2025 20:13:47 -0700 Subject: [PATCH] use prebuilt v8 --- build.zig | 18 ++++++------------ build.zig.zon | 6 +++--- 2 files changed, 9 insertions(+), 15 deletions(-) diff --git a/build.zig b/build.zig index 5a2790ff..8eda3092 100644 --- a/build.zig +++ b/build.zig @@ -46,6 +46,8 @@ pub fn build(b: *Build) !void { b.option([]const u8, "git_commit", "Current git commit") orelse "dev", ); + const prebuilt_v8_path = b.option([]const u8, "prebuilt_v8_path", "Path to prebuilt libc_v8.a"); + const target = b.standardTargetOptions(.{}); const optimize = b.standardOptimizeOption(.{}); @@ -59,7 +61,7 @@ pub fn build(b: *Build) !void { .link_libc = true, .link_libcpp = true, }); - try addDependencies(b, lightpanda_module, opts); + try addDependencies(b, lightpanda_module, opts, prebuilt_v8_path); { // browser @@ -113,7 +115,7 @@ pub fn build(b: *Build) !void { .target = target, .optimize = optimize, }); - try addDependencies(b, wpt_module, opts); + try addDependencies(b, wpt_module, opts, prebuilt_v8_path); // compile and install const wpt = b.addExecutable(.{ @@ -133,7 +135,7 @@ pub fn build(b: *Build) !void { } } -fn addDependencies(b: *Build, mod: *Build.Module, opts: *Build.Step.Options) !void { +fn addDependencies(b: *Build, mod: *Build.Module, opts: *Build.Step.Options, prebuilt_v8_path: ?[]const u8) !void { try moduleNetSurf(b, mod); mod.addImport("build_config", opts.createModule()); @@ -141,6 +143,7 @@ fn addDependencies(b: *Build, mod: *Build.Module, opts: *Build.Step.Options) !vo const dep_opts = .{ .target = target, .optimize = mod.optimize.?, + .prebuilt_v8_path = prebuilt_v8_path, }; mod.addIncludePath(b.path("vendor/lightpanda")); @@ -153,15 +156,6 @@ fn addDependencies(b: *Build, mod: *Build.Module, opts: *Build.Step.Options) !vo const v8_mod = b.dependency("v8", dep_opts).module("v8"); v8_mod.addOptions("default_exports", v8_opts); mod.addImport("v8", v8_mod); - - switch (target.result.os.tag) { - .macos => { - // v8 has a dependency, abseil-cpp, which, on Mac, uses CoreFoundation - mod.addSystemFrameworkPath(.{ .cwd_relative = "/System/Library/Frameworks" }); - mod.linkFramework("CoreFoundation", .{}); - }, - else => {}, - } } { diff --git a/build.zig.zon b/build.zig.zon index f000f808..d78923c0 100644 --- a/build.zig.zon +++ b/build.zig.zon @@ -5,9 +5,9 @@ .fingerprint = 0xda130f3af836cea0, .dependencies = .{ .v8 = .{ - .url = "https://github.com/lightpanda-io/zig-v8-fork/archive/fbefa84efdf1b5c1401c930cdc5e99aee508a1f9.tar.gz", - .hash = "v8-0.0.0-xddH62UlBAC-QfZy4qD6pF87wF8VjY54IOTu8SnFV4ub", + .url = "https://github.com/lightpanda-io/zig-v8-fork/archive/543fb7b40a0e139ebe38e1401942b6506222daf3.tar.gz", + .hash = "v8-0.0.0-xddH6-kmBAAdoG6goGoo3pMwzfL73XiFgcj82vYbLym4", }, - //.v8 = .{ .path = "../zig-v8-fork" }, + // .v8 = .{ .path = "../zig-v8-fork" }, }, }