libfacade 1.1
A library for manipulating PNG images with payloads.
|
Various macros and defines that help determine the platform of the compiler. More...
Go to the source code of this file.
Macros | |
#define | EXPORT |
#define | PACK(alignment) __attribute__((packed,aligned(alignment))) |
#define | UNPACK() |
Various macros and defines that help determine the platform of the compiler.
Doxygen mangles the documentation for this particular file, so this is documented manually.
LIBFACADE_SHARED
: defined when compiling or importing as a shared objectLIBFACADE_EXPORT
: defined when compiling as a shared object, explicitly noting that symbols should be exported, not imported.LIBFACADE_WIN32
: defined when compiling on MSVCEXPORT
: on MSVC, if LIBFACADE_SHARED
is defined and LIBFACADE_EXPORT
is defined, this value is __declspec(dllexport)
; if LIBFACADE_EXPORT
is not defined, this is defined as __declspec(dllimport)
. if MSVC is not detected, this is defined as __attribute__((visibility("default")))
.PACK(alignment)
: on MSVC, this evaluates to __pragma(pack(push, alignment))
. if MSVC is not detected, this evaluates to __attribute__((packed,aligned(alignment)))
.UNPACK()
: on MSVC, this evaluates to __pragma(pack(pop))
. if MSVC is not detected, this evaluates to nothing. #define EXPORT |
#define PACK | ( | alignment | ) | __attribute__((packed,aligned(alignment))) |
#define UNPACK | ( | ) |