Doxygen displays two warnings (among others) because parameters filled in @params are not correct.
The warnings fixed are:
pspsdk/src/user/pspthreadman.h:622: warning: argument 'optionsPTr' of command @param is not found in the argument list of sceKernelCreateLwMutex(SceLwMutexWorkarea *workarea, const char *name, SceUInt32 attr, int initialCount, u32 *optionsPtr)
pspsdk/src/user/pspthreadman.h:622: warning: The following parameter of sceKernelCreateLwMutex(SceLwMutexWorkarea *workarea, const char *name, SceUInt32 attr, int initialCount, u32 *optionsPtr) is not documented:
parameter 'optionsPtr'
pspsdk/src/user/pspthreadman.h:665: warning: argument 'name' of command @param is not found in the argument list of sceKernelUnlockLwMutex(SceLwMutexWorkarea *workarea, int lockCount)
Fixes#123. Guards `_PSP_FW_VERSION` references with `#if defined()` to avoid the SDK headers returning warnings when compiling modules with the `-Wundef` cflag.
clock_t is defined in <time.h>, but not <sys/time.h> in newlib 4.1.0.
this fixes a compile error in files including this header:
In file included from psp-elf/bin/../psp/sdk/include/pspuser.h:25:0,
from psp-elf/bin/../psp/sdk/include/pspkernel.h:17,
from ./include/driver/me.h:5,
from src/me.c:1:
psp-elf/bin/../psp/sdk/include/psputils.h:51:1: error: unknown type name 'clock_t'
make[1]: *** [src/me.o] Error 1
encountered while trying to compile MElib.
Defining asm labels in inline assembly is not a good idea, according to
GCC docs it can result in labels being deleted (optimized away) or even
duplicated (see https://gcc.gnu.org/onlinedocs/gcc/Extended-Asm.html).
This affects LTO linking, since LTO removes the four symbols and results
in undefined references. Using an ASM file makes sure that symbols exist
with the correct attributes.