1 #ifndef _INCL_PHYSFS_PLATFORMS |
|
2 #define _INCL_PHYSFS_PLATFORMS |
|
3 |
|
4 #ifndef __PHYSICSFS_INTERNAL__ |
|
5 #error Do not include this header from your applications. |
|
6 #endif |
|
7 |
|
8 /* |
|
9 * These only define the platforms to determine which files in the platforms |
|
10 * directory should be compiled. For example, technically BeOS can be called |
|
11 * a "unix" system, but since it doesn't use unix.c, we don't define |
|
12 * PHYSFS_PLATFORM_UNIX on that system. |
|
13 */ |
|
14 |
|
15 #if (defined __HAIKU__) |
|
16 # define PHYSFS_PLATFORM_HAIKU 1 |
|
17 # define PHYSFS_PLATFORM_BEOS 1 |
|
18 # define PHYSFS_PLATFORM_POSIX 1 |
|
19 #elif ((defined __BEOS__) || (defined __beos__)) |
|
20 # define PHYSFS_PLATFORM_BEOS 1 |
|
21 # define PHYSFS_PLATFORM_POSIX 1 |
|
22 #elif (defined _WIN32_WCE) || (defined _WIN64_WCE) |
|
23 # error PocketPC support was dropped from PhysicsFS 2.1. Sorry. |
|
24 #elif ((defined WINAPI_FAMILY) && WINAPI_FAMILY == WINAPI_FAMILY_APP) |
|
25 # define PHYSFS_PLATFORM_WINRT 1 |
|
26 # define PHYSFS_NO_CDROM_SUPPORT 1 |
|
27 # define PHYSFS_PLATFORM_WINDOWS 1 |
|
28 #elif (((defined _WIN32) || (defined _WIN64)) && (!defined __CYGWIN__)) |
|
29 # define PHYSFS_PLATFORM_WINDOWS 1 |
|
30 #elif (defined OS2) |
|
31 # error OS/2 support was dropped from PhysicsFS 2.1. Sorry. |
|
32 #elif ((defined __MACH__) && (defined __APPLE__)) |
|
33 /* To check if iphone or not, we need to include this file */ |
|
34 # include <TargetConditionals.h> |
|
35 # if ((TARGET_IPHONE_SIMULATOR) || (TARGET_OS_IPHONE)) |
|
36 # define PHYSFS_NO_CDROM_SUPPORT 1 |
|
37 # endif |
|
38 # define PHYSFS_PLATFORM_MACOSX 1 |
|
39 # define PHYSFS_PLATFORM_POSIX 1 |
|
40 #elif defined(macintosh) |
|
41 # error Classic Mac OS support was dropped from PhysicsFS 2.0. Move to OS X. |
|
42 #elif defined(ANDROID) |
|
43 # define PHYSFS_PLATFORM_LINUX 1 |
|
44 # define PHYSFS_PLATFORM_UNIX 1 |
|
45 # define PHYSFS_PLATFORM_POSIX 1 |
|
46 # define PHYSFS_NO_CDROM_SUPPORT 1 |
|
47 #elif defined(__linux) |
|
48 # define PHYSFS_PLATFORM_LINUX 1 |
|
49 # define PHYSFS_PLATFORM_UNIX 1 |
|
50 # define PHYSFS_PLATFORM_POSIX 1 |
|
51 #elif defined(__sun) || defined(sun) |
|
52 # define PHYSFS_PLATFORM_SOLARIS 1 |
|
53 # define PHYSFS_PLATFORM_UNIX 1 |
|
54 # define PHYSFS_PLATFORM_POSIX 1 |
|
55 #elif defined(__FreeBSD__) || defined(__DragonFly__) |
|
56 # define PHYSFS_PLATFORM_FREEBSD 1 |
|
57 # define PHYSFS_PLATFORM_BSD 1 |
|
58 # define PHYSFS_PLATFORM_UNIX 1 |
|
59 # define PHYSFS_PLATFORM_POSIX 1 |
|
60 #elif defined(__NetBSD__) || defined(__OpenBSD__) || defined(__bsdi__) |
|
61 # define PHYSFS_PLATFORM_BSD 1 |
|
62 # define PHYSFS_PLATFORM_UNIX 1 |
|
63 # define PHYSFS_PLATFORM_POSIX 1 |
|
64 #elif defined(unix) || defined(__unix__) |
|
65 # define PHYSFS_PLATFORM_UNIX 1 |
|
66 # define PHYSFS_PLATFORM_POSIX 1 |
|
67 #else |
|
68 # error Unknown platform. |
|
69 #endif |
|
70 |
|
71 #endif /* include-once blocker. */ |
|
72 |
|