mirror of
https://github.com/ziglang/zig.git
synced 2025-12-21 21:53:08 +00:00
75 lines
1.6 KiB
Zig
75 lines
1.6 KiB
Zig
//! We do this instead of @cImport because the self-hosted compiler is easier
|
|
//! to bootstrap if it does not depend on translate-c.
|
|
|
|
pub const Link = ZigLLDLink;
|
|
extern fn ZigLLDLink(
|
|
oformat: ObjectFormatType,
|
|
args: [*:null]const ?[*:0]const u8,
|
|
arg_count: usize,
|
|
append_diagnostic: fn (context: usize, ptr: [*]const u8, len: usize) callconv(.C) void,
|
|
context_stdout: usize,
|
|
context_stderr: usize,
|
|
) bool;
|
|
|
|
pub const ObjectFormatType = extern enum(c_int) {
|
|
Unknown,
|
|
COFF,
|
|
ELF,
|
|
MachO,
|
|
Wasm,
|
|
XCOFF,
|
|
};
|
|
|
|
pub const GetHostCPUName = LLVMGetHostCPUName;
|
|
extern fn LLVMGetHostCPUName() ?[*:0]u8;
|
|
|
|
pub const GetNativeFeatures = ZigLLVMGetNativeFeatures;
|
|
extern fn ZigLLVMGetNativeFeatures() ?[*:0]u8;
|
|
|
|
pub const WriteArchive = ZigLLVMWriteArchive;
|
|
extern fn ZigLLVMWriteArchive(
|
|
archive_name: [*:0]const u8,
|
|
file_names_ptr: [*]const [*:0]const u8,
|
|
file_names_len: usize,
|
|
os_type: OSType,
|
|
) bool;
|
|
|
|
pub const OSType = extern enum(c_int) {
|
|
UnknownOS = 0,
|
|
Ananas = 1,
|
|
CloudABI = 2,
|
|
Darwin = 3,
|
|
DragonFly = 4,
|
|
FreeBSD = 5,
|
|
Fuchsia = 6,
|
|
IOS = 7,
|
|
KFreeBSD = 8,
|
|
Linux = 9,
|
|
Lv2 = 10,
|
|
MacOSX = 11,
|
|
NetBSD = 12,
|
|
OpenBSD = 13,
|
|
Solaris = 14,
|
|
Win32 = 15,
|
|
Haiku = 16,
|
|
Minix = 17,
|
|
RTEMS = 18,
|
|
NaCl = 19,
|
|
CNK = 20,
|
|
AIX = 21,
|
|
CUDA = 22,
|
|
NVCL = 23,
|
|
AMDHSA = 24,
|
|
PS4 = 25,
|
|
ELFIAMCU = 26,
|
|
TvOS = 27,
|
|
WatchOS = 28,
|
|
Mesa3D = 29,
|
|
Contiki = 30,
|
|
AMDPAL = 31,
|
|
HermitCore = 32,
|
|
Hurd = 33,
|
|
WASI = 34,
|
|
Emscripten = 35,
|
|
};
|