mirror of
https://github.com/wiiu-env/wut.git
synced 2024-12-13 22:21:52 +01:00
30 lines
771 B
C
30 lines
771 B
C
#include "config.h"
|
|
|
|
// Get the start of the stubs
|
|
static const void *fstubBegin[0] __attribute__((section(".data.rplFuncStubs")));
|
|
|
|
#define EXPORT(name) \
|
|
extern void *name; \
|
|
const void *name##_stub __attribute__((section(".data.rplFuncStubs"))) = &name; \
|
|
|
|
#include "exports.h"
|
|
|
|
// Get the end of the stubs
|
|
static const void *fstubEnd[0] __attribute__((section(".data.rplFuncStubs")));
|
|
|
|
// Create a header with the name and stub begin/end in
|
|
typedef struct
|
|
{
|
|
const char *name;
|
|
const void *fstubBegin;
|
|
const void *fstubEnd;
|
|
} __attribute__((__packed__)) rpl_header;
|
|
|
|
static const const char name[] __attribute__((section(".rodata.rplNames"))) = LIBRARY_NAME;
|
|
|
|
static rpl_header header __attribute__((section(".lib.rplLibs"))) = {
|
|
name,
|
|
fstubBegin,
|
|
fstubEnd,
|
|
};
|