You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
931 B
C
35 lines
931 B
C
#ifndef X_RESOURCES_H
|
|
#define X_RESOURCES_H
|
|
|
|
#ifdef __APPLE__
|
|
#include <mach-o/getsect.h>
|
|
|
|
#define EXTLD(NAME) \
|
|
extern const unsigned char _section$__DATA__ ## NAME [];
|
|
#define LDVAR(NAME) _section$__DATA__ ## NAME
|
|
#define LDLEN(NAME) (getsectbyname("__DATA", "__" #NAME)->size)
|
|
|
|
#elif (defined __WIN32__) /* mingw */
|
|
|
|
#define EXTLD(NAME) \
|
|
extern const unsigned char binary_ ## NAME ## _start[]; \
|
|
extern const unsigned char binary_ ## NAME ## _end[];
|
|
#define LDVAR(NAME) \
|
|
binary_ ## NAME ## _start
|
|
#define LDLEN(NAME) \
|
|
((binary_ ## NAME ## _end) - (binary_ ## NAME ## _start))
|
|
|
|
#else /* gnu/linux ld */
|
|
|
|
#define EXTLD(NAME) \
|
|
extern const unsigned char _binary_ ## NAME ## _start[]; \
|
|
extern const unsigned char _binary_ ## NAME ## _end[];
|
|
#define LDVAR(NAME) \
|
|
_binary_ ## NAME ## _start
|
|
#define LDLEN(NAME) \
|
|
((_binary_ ## NAME ## _end) - (_binary_ ## NAME ## _start))
|
|
#endif
|
|
|
|
#endif /* X_RESOURCES_H */
|
|
|