diff --git a/src/lib/evil/evil_private.h b/src/lib/evil/evil_private.h index d26030b9e3..2c79b84418 100644 --- a/src/lib/evil/evil_private.h +++ b/src/lib/evil/evil_private.h @@ -48,17 +48,17 @@ extern "C" { #include "evil_locale.h" #include "evil_main.h" #include "evil_mman.h" -#include "evil_stat.h" #include "evil_stdio.h" #include "evil_stdlib.h" #include "evil_string.h" #include "evil_strings.h" +#include "evil_sys_stat.h" +#include "evil_sys_time.h" +#include "evil_sys_types.h" #include "evil_time.h" #include "evil_unistd.h" #include "evil_util.h" #include "evil_vasprintf.h" -#include "evil_sys_types.h" -#include "evil_sys_time.h" #define sigsetjmp(Env, Save) setjmp(Env) diff --git a/src/lib/evil/evil_stat.h b/src/lib/evil/evil_stat.h deleted file mode 100644 index 932bdf0303..0000000000 --- a/src/lib/evil/evil_stat.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef __EVIL_STAT_H__ -#define __EVIL_STAT_H__ - -// Missing definitions: -// Note: some pieces of code were based on LibreSSL-Portable's compat lib and -// adapted to EFL standards. -#ifdef _MSC_VER -# define S_IRWXU 0 /* RWX user */ -# define S_IRUSR S_IREAD /* Read user */ -# define S_IWUSR S_IWRITE /* Write user */ -# define S_IXUSR 0 /* Execute user */ -# define S_IRWXG 0 /* RWX group */ -# define S_IRGRP 0 /* Read group */ -# define S_IWGRP 0 /* Write group */ -# define S_IXGRP 0 /* Execute group */ -# define S_IRWXO 0 /* RWX others */ -# define S_IROTH 0 /* Read others */ -# define S_IWOTH 0 /* Write others */ -# define S_IXOTH 0 /* Execute others */ - -# define S_ISDIR(mode) (((mode) & S_IFMT) == S_IFDIR) -# define S_ISREG(m) (((m) & S_IFMT) == S_IFREG) - -#endif - -#endif diff --git a/src/lib/evil/evil_sys_stat.h b/src/lib/evil/evil_sys_stat.h new file mode 100644 index 0000000000..dc5a3febc6 --- /dev/null +++ b/src/lib/evil/evil_sys_stat.h @@ -0,0 +1,42 @@ +#ifndef __EVIL_SYS_STAT_H__ +#define __EVIL_SYS_STAT_H__ + +#ifdef _MSC_VER +# include +# include +# include +# include +# include +# include + +typedef int mode_t; + +// Missing definitions: +// Note: some pieces of code were based on LibreSSL-Portable's compat lib and +// adapted to EFL standards. +# define S_IRWXU 0 /* RWX user */ +# define S_IRUSR S_IREAD /* Read user */ +# define S_IWUSR S_IWRITE /* Write user */ +# define S_IXUSR 0 /* Execute user */ +# define S_IRWXG 0 /* RWX group */ +# define S_IRGRP 0 /* Read group */ +# define S_IWGRP 0 /* Write group */ +# define S_IXGRP 0 /* Execute group */ +# define S_IRWXO 0 /* RWX others */ +# define S_IROTH 0 /* Read others */ +# define S_IWOTH 0 /* Write others */ +# define S_IXOTH 0 /* Execute others */ + +# define S_ISDIR(mode) (((mode) & S_IFMT) == S_IFDIR) +# define S_ISREG(mode) (((mode) & S_IFMT) == S_IFREG) +# define S_ISFIFO(mode) (((mode) & S_IFMT) == S_IFIFO) +# define S_ISDIR(mode) (((mode) & S_IFMT) == S_IFDIR) +# define S_ISREG(mode) (((mode) & S_IFMT) == S_IFREG) +# define S_ISLNK(mode) (((mode) & S_IFMT) == S_IFLNK) +# define S_ISSOCK(mode) (((mode) & S_IFMT) == S_IFSOCK) +# define S_ISCHR(mode) (((mode) & S_IFMT) == S_IFCHR) +# define S_ISBLK(mode) (((mode) & S_IFMT) == S_IFBLK) + +#endif /* _MSV_VER */ + +#endif /* __EVIL_SYS_STAT_H__ */