diff --git a/Makefile b/Makefile index cc95d66acc..e4ae250053 100644 --- a/Makefile +++ b/Makefile @@ -408,7 +408,8 @@ generate-builtins: mkdir -p src/bun.js/builtins/cpp $(shell which python || which python2) $(realpath $(WEBKIT_DIR)/Source/JavaScriptCore/Scripts/generate-js-builtins.py) -i $(realpath src)/bun.js/builtins/js -o $(realpath src)/bun.js/builtins/cpp --framework WebCore --force $(shell which python || which python2) $(realpath $(WEBKIT_DIR)/Source/JavaScriptCore/Scripts/generate-js-builtins.py) -i $(realpath src)/bun.js/builtins/js -o $(realpath src)/bun.js/builtins/cpp --framework WebCore --wrappers-only - echo 'namespace Zig { class GlobalObject; }' >> /tmp/1.h + rm -rf /tmp/1.h src/bun.js/builtins/cpp/WebCoreJSBuiltinInternals.h.1 + echo -e '// clang-format off\nnamespace Zig { class GlobalObject; }' >> /tmp/1.h cat /tmp/1.h src/bun.js/builtins/cpp/WebCoreJSBuiltinInternals.h > src/bun.js/builtins/cpp/WebCoreJSBuiltinInternals.h.1 mv src/bun.js/builtins/cpp/WebCoreJSBuiltinInternals.h.1 src/bun.js/builtins/cpp/WebCoreJSBuiltinInternals.h $(SED) -i -e 's/class JSDOMGlobalObject/using JSDOMGlobalObject = Zig::GlobalObject/' src/bun.js/builtins/cpp/WebCoreJSBuiltinInternals.h @@ -1208,11 +1209,16 @@ bun-relink: bun-relink-copy bun-link-lld-release bun-link-lld-release-dsym wasm-return1: zig build-lib -OReleaseSmall test/bun.js/wasm-return-1-test.zig -femit-bin=test/bun.js/wasm-return-1-test.wasm -target wasm32-freestanding - +generate-sink: + bun src/bun.js/generate-jssink.js + $(WEBKIT_DIR)/Source/JavaScriptCore/create_hash_table src/bun.js/bindings/JSSink.cpp > src/bun.js/bindings/JSSinkLookupTable.h + $(SED) -i -e 's/#include "Lookup.h"//' src/bun.js/bindings/JSSinkLookupTable.h + $(SED) -i -e 's/namespace JSC {//' src/bun.js/bindings/JSSinkLookupTable.h + $(SED) -i -e 's/} \/\/ namespace JSC//' src/bun.js/bindings/JSSinkLookupTable.h EMIT_LLVM_FOR_RELEASE=-emit-llvm -flto="full" EMIT_LLVM_FOR_DEBUG= -EMIT_LLVM=$(EMIT_LLVM_FOR_DEBUG) +EMIT_LLVM=$(EMIT_LLVM_FOR_RELEASE) # We do this outside of build.zig for performance reasons # The C compilation stuff with build.zig is really slow and we don't need to run this as often as the rest diff --git a/src/bun.js/generate-jssink.js b/src/bun.js/generate-jssink.js index d272f60a69..3195c6be14 100644 --- a/src/bun.js/generate-jssink.js +++ b/src/bun.js/generate-jssink.js @@ -165,7 +165,7 @@ JSC_DECLARE_CUSTOM_GETTER(function${name}__getter); const outer = ` // AUTO-GENERATED FILE. DO NOT EDIT. -// Generated by ${import.meta.path} at ${new Date().toISOString()} +// Generated by 'make generate-sink' at ${new Date().toISOString()} // #pragma once @@ -201,10 +201,10 @@ JSObject* createJSSinkControllerPrototype(JSC::VM& vm, JSC::JSGlobalObject* glob async function implementation() { const head = ` // AUTO-GENERATED FILE. DO NOT EDIT. -// Generated by ${import.meta.path} at ${new Date().toISOString()} +// Generated by 'make generate-sink' at ${new Date().toISOString()} // To regenerate this file, run: // -// bun src/bun.js/generate-jssink.js +// make generate-sink // #include "root.h" #include "JSSink.h"