Get bun ready for linux builds

Adds: conditional builds in makefile
Fixes: incorrect imports of 'JavaScriptCore.zig' (note the caps 's')
replaces with correct import of 'JavascriptCore.zig'
This commit is contained in:
Dov Alperin
2021-09-17 08:39:58 -04:00
parent 3350e63004
commit c98e007ff7
5 changed files with 20 additions and 8 deletions

View File

@@ -50,12 +50,20 @@ runtime_js:
bun_error:
@cd packages/bun-error; npm install; npm run --silent build
JSC_BUILD_STEPS :=
ifeq ($(OS_NAME),linux)
JSC_BUILD_STEPS += jsc-build-linux jsc-copy-headers
endif
ifeq ($(OS_NAME),darwin)
JSC_BUILD_STEPS += jsc-build-mac jsc-copy-headers
endif
jsc: jsc-build jsc-bindings
jsc-build: jsc-build-mac jsc-copy-headers
jsc-build: $(JSC_BUILD_STEPS)
jsc-bindings: jsc-bindings-headers jsc-bindings-mac
jsc-bindings-headers:
mkdir -p src/JavaScript/jsc/bindings-obj/
mkdir -p src/javascript/jsc/bindings-obj/
zig build headers
bump:
@@ -134,9 +142,10 @@ jsc-build-mac-compile:
jsc-build-linux-compile:
cd src/javascript/jsc/WebKit && ./Tools/Scripts/build-jsc --jsc-only --cmakeargs="-DENABLE_STATIC_JSC=ON -DCMAKE_BUILD_TYPE=relwithdebinfo
jsc-build-mac: jsc-build-mac-compile jsc-build-mac-copy
jsc-build-linux: jsc-build-linux-compile jsc-build-mac-copy
jsc-build-mac-copy:
cp src/JavaScript/jsc/WebKit/WebKitBuild/Release/lib/libJavaScriptCore.a src/deps/libJavaScriptCore.a
cp src/JavaScript/jsc/WebKit/WebKitBuild/Release/lib/libWTF.a src/deps/libWTF.a
@@ -146,7 +155,10 @@ JSC_FILES := src/deps/libJavaScriptCore.a \
src/deps/libWTF.a \
src/deps/libbmalloc.a
HOMEBREW_PREFIX := $(shell brew --prefix)/
ifeq ($(OS_NAME),darwin)
HOMEBREW_PREFIX := $(shell brew --prefix)/
endif
SRC_DIR := src/javascript/jsc/bindings
OBJ_DIR := src/javascript/jsc/bindings-obj

View File

@@ -1,4 +1,4 @@
pub const js = @import("./JavaScriptCore.zig");
pub const js = @import("./JavascriptCore.zig");
const std = @import("std");
pub usingnamespace @import("../../global.zig");
usingnamespace @import("./javascript.zig");

View File

@@ -2,7 +2,7 @@ usingnamespace @import("./shared.zig");
usingnamespace @import("./headers.zig");
pub const Shimmer = @import("./shimmer.zig").Shimmer;
const hasRef = std.meta.trait.hasField("ref");
const C_API = @import("../JavaScriptCore.zig");
const C_API = @import("../JavascriptCore.zig");
const StringPointer = @import("../../../api/schema.zig").Api.StringPointer;
pub const JSObject = extern struct {
pub const shim = Shimmer("JSC", "JSObject", @This());

View File

@@ -1,7 +1,7 @@
usingnamespace @import("./bindings.zig");
usingnamespace @import("./shared.zig");
const Fs = @import("../../../fs.zig");
const CAPI = @import("../JavaScriptCore.zig");
const CAPI = @import("../JavascriptCore.zig");
const JS = @import("../javascript.zig");
const JSBase = @import("../base.zig");
const ZigURL = @import("../../../query_string_map.zig").URL;

View File

@@ -1,5 +1,5 @@
const bindings = @import("./bindings.zig");
pub usingnamespace @import("../JavaScriptCore.zig");
pub usingnamespace @import("../JavascriptCore.zig");
pub const struct_JSC__StringPrototype = bindings.StringPrototype;
pub const struct_JSC__SetIteratorPrototype = bindings.SetIteratorPrototype;