mirror of
https://github.com/wiiu-env/WUMSLoader.git
synced 2025-02-18 17:16:23 +01:00
Use wut 1.1.1
This commit is contained in:
parent
90d4ccfe2a
commit
47fc482931
@ -1,5 +1,5 @@
|
|||||||
FROM wiiuenv/devkitppc:20220507
|
FROM wiiuenv/devkitppc:20220806
|
||||||
|
|
||||||
COPY --from=wiiuenv/wiiumodulesystem:20220507 /artifacts $DEVKITPRO
|
COPY --from=wiiuenv/wiiumodulesystem:20220724 /artifacts $DEVKITPRO
|
||||||
|
|
||||||
WORKDIR project
|
WORKDIR project
|
36
wumsloader/src/crt.c
Normal file
36
wumsloader/src/crt.c
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
void __init_wut_malloc();
|
||||||
|
|
||||||
|
void __init_wut_newlib();
|
||||||
|
|
||||||
|
void __init_wut_stdcpp();
|
||||||
|
|
||||||
|
void __init_wut_devoptab();
|
||||||
|
|
||||||
|
void __attribute__((weak)) __init_wut_socket();
|
||||||
|
|
||||||
|
void __fini_wut_malloc();
|
||||||
|
|
||||||
|
void __fini_wut_newlib();
|
||||||
|
|
||||||
|
void __fini_wut_stdcpp();
|
||||||
|
|
||||||
|
void __fini_wut_devoptab();
|
||||||
|
|
||||||
|
void __attribute__((weak)) __fini_wut_socket();
|
||||||
|
|
||||||
|
void __attribute__((weak))
|
||||||
|
init_wut() {
|
||||||
|
__init_wut_malloc();
|
||||||
|
__init_wut_newlib();
|
||||||
|
__init_wut_stdcpp();
|
||||||
|
__init_wut_devoptab();
|
||||||
|
if (&__init_wut_socket) __init_wut_socket();
|
||||||
|
}
|
||||||
|
|
||||||
|
void __attribute__((weak))
|
||||||
|
fini_wut() {
|
||||||
|
__fini_wut_devoptab();
|
||||||
|
__fini_wut_stdcpp();
|
||||||
|
__fini_wut_newlib();
|
||||||
|
__fini_wut_malloc();
|
||||||
|
}
|
@ -41,7 +41,7 @@ extern "C" int _start(int argc, char **argv) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void doStart(int argc, char **argv) {
|
void doStart(int argc, char **argv) {
|
||||||
__init_wut();
|
init_wut();
|
||||||
initLogging();
|
initLogging();
|
||||||
|
|
||||||
if (!gInitCalled) {
|
if (!gInitCalled) {
|
||||||
@ -130,7 +130,7 @@ void doStart(int argc, char **argv) {
|
|||||||
CallHook(gLoadedModules, WUMS_HOOK_APPLICATION_STARTS);
|
CallHook(gLoadedModules, WUMS_HOOK_APPLICATION_STARTS);
|
||||||
|
|
||||||
deinitLogging();
|
deinitLogging();
|
||||||
__fini_wut();
|
fini_wut();
|
||||||
}
|
}
|
||||||
|
|
||||||
void CallInitHooksForModule(const std::shared_ptr<ModuleData> &curModule) {
|
void CallInitHooksForModule(const std::shared_ptr<ModuleData> &curModule) {
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
extern "C" void __init();
|
extern "C" void __init();
|
||||||
extern "C" void __init_wut();
|
extern "C" void init_wut();
|
||||||
extern "C" void __fini_wut();
|
extern "C" void fini_wut();
|
||||||
|
|
||||||
void doStart(int argc, char **argv);
|
void doStart(int argc, char **argv);
|
@ -33,6 +33,7 @@ IMPORT(OSWaitCond);
|
|||||||
IMPORT(OSSignalCond);
|
IMPORT(OSSignalCond);
|
||||||
IMPORT(MEMAllocFromDefaultHeapEx);
|
IMPORT(MEMAllocFromDefaultHeapEx);
|
||||||
IMPORT(MEMFreeToDefaultHeap);
|
IMPORT(MEMFreeToDefaultHeap);
|
||||||
|
IMPORT(OSSwapAtomic);
|
||||||
|
|
||||||
IMPORT(FSTimeToCalendarTime);
|
IMPORT(FSTimeToCalendarTime);
|
||||||
IMPORT(FSInit);
|
IMPORT(FSInit);
|
||||||
@ -46,6 +47,7 @@ IMPORT(FSGetFreeSpaceSize);
|
|||||||
IMPORT(FSGetStat);
|
IMPORT(FSGetStat);
|
||||||
IMPORT(FSRemove);
|
IMPORT(FSRemove);
|
||||||
IMPORT(FSOpenFile);
|
IMPORT(FSOpenFile);
|
||||||
|
IMPORT(FSOpenFileEx);
|
||||||
IMPORT(FSCloseFile);
|
IMPORT(FSCloseFile);
|
||||||
IMPORT(FSOpenDir);
|
IMPORT(FSOpenDir);
|
||||||
IMPORT(FSMakeDir);
|
IMPORT(FSMakeDir);
|
||||||
|
@ -7,7 +7,7 @@ std::unique_ptr<T> make_unique_nothrow(Args &&...args) noexcept(noexcept(T(std::
|
|||||||
}
|
}
|
||||||
|
|
||||||
template<typename T>
|
template<typename T>
|
||||||
inline typename std::_MakeUniq<T>::__array make_unique_nothrow(size_t num) noexcept {
|
inline typename std::unique_ptr<T> make_unique_nothrow(size_t num) noexcept {
|
||||||
return std::unique_ptr<T>(new (std::nothrow) std::remove_extent_t<T>[num]());
|
return std::unique_ptr<T>(new (std::nothrow) std::remove_extent_t<T>[num]());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user