zig.h: Introduce object format macros.

This commit is contained in:
Alex Rønne Petersen 2024-12-02 10:47:19 +01:00
parent ace8396076
commit 084ec97811
No known key found for this signature in database

View File

@ -10,6 +10,8 @@
#define zig_gnuc #define zig_gnuc
#elif defined(__GNUC__) #elif defined(__GNUC__)
#define zig_gnuc #define zig_gnuc
#elif defined(__IBMC__)
#define zig_xlc
#elif defined(__TINYC__) #elif defined(__TINYC__)
#define zig_tinyc #define zig_tinyc
#elif defined(__slimcc__) #elif defined(__slimcc__)
@ -79,6 +81,18 @@
#define zig_big_endian 1 #define zig_big_endian 1
#endif #endif
#if defined(_WIN32)
#define zig_coff
#elif defined(__ELF__)
#define zig_elf
#elif defined(__MVS__)
#define zig_goff
#elif defined(__MACH__)
#define zig_macho
#elif defined(_AIX)
#define zig_xcoff
#endif
#define zig_concat(lhs, rhs) lhs##rhs #define zig_concat(lhs, rhs) lhs##rhs
#define zig_expand_concat(lhs, rhs) zig_concat(lhs, rhs) #define zig_expand_concat(lhs, rhs) zig_concat(lhs, rhs)
@ -236,14 +250,14 @@
#define zig_mangle_c(symbol) "_" symbol #define zig_mangle_c(symbol) "_" symbol
#endif /* zig_x86_64 */ #endif /* zig_x86_64 */
#else /* zig_msvc */ #else /* zig_msvc */
#if __APPLE__ #if defined(zig_macho)
#define zig_mangle_c(symbol) "_" symbol #define zig_mangle_c(symbol) "_" symbol
#else /* __APPLE__ */ #else /* zig_macho */
#define zig_mangle_c(symbol) symbol #define zig_mangle_c(symbol) symbol
#endif /* __APPLE__ */ #endif /* zig_macho */
#endif /* zig_msvc */ #endif /* zig_msvc */
#if (zig_has_attribute(alias) || defined(zig_tinyc)) && !__APPLE__ #if (zig_has_attribute(alias) || defined(zig_tinyc)) && !defined(zig_macho)
#define zig_export(symbol, name) __attribute__((alias(symbol))) #define zig_export(symbol, name) __attribute__((alias(symbol)))
#elif defined(zig_msvc) #elif defined(zig_msvc)
#define zig_export(symbol, name) ; \ #define zig_export(symbol, name) ; \