Files
bun.sh/src/main.zig
dave caruso 369e3022e4 chore: upgrade zig to 0.12.0-dev.1828+225fe6ddb (#7671)
* chore: upgrade zig to 0.12.0-dev.1828+225fe6ddb

* open as iterable

* fix building identifier cache

* fix windows build

* fix linux build

* fix linux build
2023-12-16 00:14:15 -08:00

51 lines
1.7 KiB
Zig

const std = @import("std");
pub const build_options = @import("build_options");
const panicky = @import("./panic_handler.zig");
const MainPanicHandler = panicky.NewPanicHandler(std.builtin.default_panic);
pub const io_mode = .blocking;
pub fn panic(msg: []const u8, error_return_trace: ?*std.builtin.StackTrace, addr: ?usize) noreturn {
MainPanicHandler.handle_panic(msg, error_return_trace, addr);
}
const CrashReporter = @import("./crash_reporter.zig");
extern fn bun_warn_avx_missing(url: [*:0]const u8) void;
pub extern "C" var _environ: ?*anyopaque;
pub extern "C" var environ: ?*anyopaque;
pub fn main() void {
const bun = @import("root").bun;
const Output = bun.Output;
const Environment = bun.Environment;
if (Environment.isRelease and Environment.isPosix)
CrashReporter.start() catch unreachable;
if (Environment.isWindows) {
environ = @ptrCast(std.os.environ.ptr);
_environ = @ptrCast(std.os.environ.ptr);
bun.win32.STDOUT_FD = bun.toFD(std.io.getStdOut().handle);
bun.win32.STDERR_FD = bun.toFD(std.io.getStdErr().handle);
bun.win32.STDIN_FD = bun.toFD(std.io.getStdIn().handle);
// This fixes printing unicode characters
_ = std.os.windows.kernel32.SetConsoleOutputCP(65001);
}
bun.start_time = std.time.nanoTimestamp();
const stdout = std.io.getStdOut();
const stderr = std.io.getStdErr();
var output_source = Output.Source.init(stdout, stderr);
Output.Source.set(&output_source);
defer Output.flush();
if (Environment.isX64 and Environment.enableSIMD) {
bun_warn_avx_missing(@import("./cli/upgrade_command.zig").Version.Bun__githubBaselineURL.ptr);
}
bun.CLI.Cli.start(bun.default_allocator, stdout, stderr, MainPanicHandler);
}