x-resources.h (931B)
1 #ifndef X_RESOURCES_H 2 #define X_RESOURCES_H 3 4 #ifdef __APPLE__ 5 #include <mach-o/getsect.h> 6 7 #define EXTLD(NAME) \ 8 extern const unsigned char _section$__DATA__ ## NAME []; 9 #define LDVAR(NAME) _section$__DATA__ ## NAME 10 #define LDLEN(NAME) (getsectbyname("__DATA", "__" #NAME)->size) 11 12 #elif (defined __WIN32__) /* mingw */ 13 14 #define EXTLD(NAME) \ 15 extern const unsigned char binary_ ## NAME ## _start[]; \ 16 extern const unsigned char binary_ ## NAME ## _end[]; 17 #define LDVAR(NAME) \ 18 binary_ ## NAME ## _start 19 #define LDLEN(NAME) \ 20 ((binary_ ## NAME ## _end) - (binary_ ## NAME ## _start)) 21 22 #else /* gnu/linux ld */ 23 24 #define EXTLD(NAME) \ 25 extern const unsigned char _binary_ ## NAME ## _start[]; \ 26 extern const unsigned char _binary_ ## NAME ## _end[]; 27 #define LDVAR(NAME) \ 28 _binary_ ## NAME ## _start 29 #define LDLEN(NAME) \ 30 ((_binary_ ## NAME ## _end) - (_binary_ ## NAME ## _start)) 31 #endif 32 33 #endif /* X_RESOURCES_H */ 34