ImHex/plugins/libimhex/source/resources.cpp

96 lines
4.0 KiB
C++
Raw Normal View History

#if defined(OS_WINDOWS)
#define RESOURCE(name, path) \
__asm__ ( \
".section .rodata\n" \
".global " #name "\n" \
".global " #name "_size\n" \
#name ":\n" \
".incbin \"" path "\"\n" \
#name "_size:\n" \
".int " #name "_size - " #name "\n" \
".align 8\n" \
)
#define RESOURCE_NULL_TERMINATED(name, path) \
__asm__ ( \
".section .rodata\n" \
".global " #name "\n" \
".global " #name "_size\n" \
#name ":\n" \
".incbin \"" path "\"\n" \
".byte 0\n" \
#name "_size:\n" \
".int " #name "_size - " #name "\n" \
".align 8\n" \
)
2021-08-17 16:24:15 +00:00
#elif defined(OS_MACOS)
#define RESOURCE(name, path) \
__asm__ ( \
".global _" #name ";\n" \
".global _" #name "_size;\n" \
"_" #name ":\n" \
".incbin \"" path "\";\n" \
".align 8;\n" \
"_" #name "_size:\n" \
".int _" #name "_size - _" #name ";\n" \
".align 8;\n" \
)
#define RESOURCE_NULL_TERMINATED(name, path) \
__asm__ ( \
".global _" #name ";\n" \
".global _" #name "_size;\n" \
"_" #name ":\n" \
".incbin \"" path "\";\n" \
".byte 0\n" \
".align 8;\n" \
"_" #name "_size:\n" \
".int _" #name "_size - _" #name ";\n" \
".align 8;\n" \
)
2021-08-17 16:24:15 +00:00
#elif defined(OS_LINUX)
#define RESOURCE(name, path) \
__asm__ ( \
".section .rodata\n" \
".global " #name "\n" \
".global " #name "_size\n" \
#name ":\n" \
".incbin \"" path "\"\n" \
".byte 0\n" \
".type " #name ", @object\n" \
".size " #name "_size, 1\n" \
#name "_size:\n" \
".int " #name "_size - " #name "\n" \
".align 8\n" \
)
#define RESOURCE_NULL_TERMINATED(name, path) \
__asm__ ( \
".section .rodata\n" \
".global " #name "\n" \
".global " #name "_size\n" \
#name ":\n" \
".incbin \"" path "\"\n" \
".byte 0\n" \
".type " #name ", @object\n" \
".size " #name "_size, 1\n" \
#name "_size:\n" \
".int " #name "_size - " #name "\n" \
".align 8\n" \
)
#endif
2021-07-31 15:10:19 +00:00
RESOURCE(banner_light, "../../../res/resources/banner_light.png");
RESOURCE(banner_dark, "../../../res/resources/banner_dark.png");
RESOURCE(splash, "../../../res/resources/splash.png");
2021-08-18 20:36:46 +00:00
RESOURCE(imhex_logo, "../../../res/resources/logo.png");
2021-07-31 15:10:19 +00:00
RESOURCE_NULL_TERMINATED(cacert, "../../../res/resources/cacert.pem");