aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <jarred@jarredsumner.com> 2021-10-24 17:00:21 -0700
committerGravatar Jarred Sumner <jarred@jarredsumner.com> 2021-10-24 17:00:21 -0700
commitedfc61889c19c6f21b7ab65c0c3a86ff442fe5ed (patch)
tree78f08eb9f0589e8f0757ab98d22d197debdda412
parent08c8ca18a743a0337d29d8708ffed4cb5a10522a (diff)
downloadbun-edfc61889c19c6f21b7ab65c0c3a86ff442fe5ed.tar.gz
bun-edfc61889c19c6f21b7ab65c0c3a86ff442fe5ed.tar.zst
bun-edfc61889c19c6f21b7ab65c0c3a86ff442fe5ed.zip
Mark all exported symbols as weak, always `zig fmt` the headers file to reduce diff churn
-rw-r--r--Makefile1
-rw-r--r--src/javascript/jsc/bindings/header-gen.zig6
-rw-r--r--src/javascript/jsc/bindings/headers-cpp.h2
-rw-r--r--src/javascript/jsc/bindings/headers.h6
4 files changed, 10 insertions, 5 deletions
diff --git a/Makefile b/Makefile
index 1e39122e1..2e7600dbc 100644
--- a/Makefile
+++ b/Makefile
@@ -437,6 +437,7 @@ jsc-bindings: jsc-bindings-headers jsc-bindings-mac
jsc-bindings-headers:
mkdir -p src/javascript/jsc/bindings-obj/
zig build headers
+ zig fmt src/javascript/jsc/bindings/headers.zig
bump:
expr $(BUILD_ID) + 1 > build-id
diff --git a/src/javascript/jsc/bindings/header-gen.zig b/src/javascript/jsc/bindings/header-gen.zig
index 449c73dfa..7c175d6c4 100644
--- a/src/javascript/jsc/bindings/header-gen.zig
+++ b/src/javascript/jsc/bindings/header-gen.zig
@@ -577,7 +577,7 @@ pub fn HeaderGen(comptime import: type, comptime fname: []const u8) type {
const Generator = C_Generator;
validateGenerator(Generator);
var file_writer = file.writer();
- file_writer.print("//-- AUTOGENERATED FILE -- {d}\n// clang-format: off\n", .{std.time.timestamp()}) catch unreachable;
+ file_writer.print("// clang-format: off\n//-- AUTOGENERATED FILE -- {d}\n", .{std.time.timestamp()}) catch unreachable;
file.writeAll(
\\#pragma once
\\
@@ -587,10 +587,12 @@ pub fn HeaderGen(comptime import: type, comptime fname: []const u8) type {
\\
\\#ifdef __cplusplus
\\ #define AUTO_EXTERN_C extern "C"
+ \\ #define AUTO_EXTERN_C_ZIG extern "C" __attribute__((weak))
\\#else
\\ #define AUTO_EXTERN_C
+ \\ #define AUTO_EXTERN_C_ZIG __attribute__((weak))
\\#endif
- \\#define ZIG_DECL AUTO_EXTERN_C
+ \\#define ZIG_DECL AUTO_EXTERN_C_ZIG
\\#define CPP_DECL AUTO_EXTERN_C
\\#define CPP_SIZE AUTO_EXTERN_C
\\
diff --git a/src/javascript/jsc/bindings/headers-cpp.h b/src/javascript/jsc/bindings/headers-cpp.h
index 3480e3f09..c97c8804d 100644
--- a/src/javascript/jsc/bindings/headers-cpp.h
+++ b/src/javascript/jsc/bindings/headers-cpp.h
@@ -1,4 +1,4 @@
-//-- AUTOGENERATED FILE -- 1634766497
+//-- AUTOGENERATED FILE -- 1635119991
// clang-format off
#pragma once
diff --git a/src/javascript/jsc/bindings/headers.h b/src/javascript/jsc/bindings/headers.h
index 657d4a4f4..c5d5f1932 100644
--- a/src/javascript/jsc/bindings/headers.h
+++ b/src/javascript/jsc/bindings/headers.h
@@ -1,5 +1,5 @@
-//-- AUTOGENERATED FILE -- 1632635195
// clang-format: off
+//-- AUTOGENERATED FILE -- 1635119991
#pragma once
#include <stddef.h>
@@ -8,10 +8,12 @@
#ifdef __cplusplus
#define AUTO_EXTERN_C extern "C"
+ #define AUTO_EXTERN_C_ZIG extern "C" __attribute__((weak))
#else
#define AUTO_EXTERN_C
+ #define AUTO_EXTERN_C_ZIG __attribute__((weak))
#endif
-#define ZIG_DECL AUTO_EXTERN_C
+#define ZIG_DECL AUTO_EXTERN_C_ZIG
#define CPP_DECL AUTO_EXTERN_C
#define CPP_SIZE AUTO_EXTERN_C