From 436ce68ecd41ad66e7a0605b47b5814582db8538 Mon Sep 17 00:00:00 2001 From: Joseph Hunkeler Date: Fri, 24 Apr 2020 12:29:49 -0400 Subject: Consolidate platform detection preprocessor checks --- include/spm.h | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) (limited to 'include') diff --git a/include/spm.h b/include/spm.h index f9b2201..5382378 100644 --- a/include/spm.h +++ b/include/spm.h @@ -4,6 +4,22 @@ #ifndef SPM_SPM_H #define SPM_SPM_H +// Define some platform detection shortcuts +#define OS_DARWIN 0 +#define OS_WINDOWS 0 +#define OS_LINUX 0 + +#if defined(__APPLE__) && defined(__MACH__) +#undef OS_DARWIN +#define OS_DARWIN 1 +#elif defined(_WIN32) +#undef OS_WINDOWS +#define OS_WINDOWS 1 +#elif defined(__linux) || defined(__linux__) +#undef OS_LINUX +#define OS_LINUX 1 +#endif + #include #include #include @@ -19,7 +35,7 @@ #include #include -#if !defined(_WIN32) +#if !OS_WINDOWS #include #include #include @@ -65,7 +81,7 @@ extern spm_vars SPM_GLOBAL; #define DIRSEPS_UNIX "/" #define PATHSEP_UNIX ';' #define PATHSEPS_UNIX ";" -#if defined(_WIN32) +#if OS_WINDOWS #define DIRSEP DIRSEP_WIN32 #define DIRSEPS DIRSEPS_WIN32 #define NOT_DIRSEP DIRSEP_UNIX @@ -98,7 +114,7 @@ _1________________________________________________" // GLOBALS -#ifdef __APPLE__ +#if OS_DARWIN extern char **environ; #define __environ environ #endif -- cgit