X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=posix.h;h=6ab9a7f173483e254f0f07d9c117af692f741f21;hb=HEAD;hp=33ca96ccbb04c6164cff63e122dfb0215355c8f5;hpb=a86e9a3e58f55bf49d99dfd5e5d6413e17149593;p=libpicofe.git diff --git a/posix.h b/posix.h index 33ca96c..6ab9a7f 100644 --- a/posix.h +++ b/posix.h @@ -1,5 +1,8 @@ +#ifndef LIBPICOFE_POSIX_H +#define LIBPICOFE_POSIX_H + /* define POSIX stuff: dirent, scandir, getcwd, mkdir */ -#if defined(__linux__) || defined(__MINGW32__) +#if defined(__FreeBSD__) || defined(__MACH__) || defined(__linux__) || defined(__MINGW32__) #include #include @@ -14,10 +17,25 @@ #define DT_DIR 0 #endif +#elif defined(__PSP__) + +#include +#include +#include + +#ifndef DT_DIR +/* map PSP names to posix. needs special scandir() function to mask rwx bits */ +#define d_type d_stat.st_attr +#define DT_LNK FIO_SO_IFLNK +#define DT_DIR FIO_SO_IFDIR +#define DT_REG FIO_SO_IFREG +#define DT_UNKNOWN 0 +#endif + #else #error "must provide posix" #endif - +#endif // LIBPICOFE_POSIX_H