src/physfs_platforms.h
author Ryan C. Gordon <icculus@icculus.org>
Mon, 19 Mar 2012 20:41:14 -0400
changeset 1235 2ed0567fe413
parent 1233 53a01072f272
child 1291 854cdfefdf12
permissions -rw-r--r--
Make physfs_platforms.h define with a 1, so "#if X" works. Added a few other pertinent platforms.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
818
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     1
#ifndef _INCL_PHYSFS_PLATFORMS
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     2
#define _INCL_PHYSFS_PLATFORMS
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     3
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     4
#ifndef __PHYSICSFS_INTERNAL__
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     5
#error Do not include this header from your applications.
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     6
#endif
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     7
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     8
/*
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     9
 * These only define the platforms to determine which files in the platforms
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    10
 *  directory should be compiled. For example, technically BeOS can be called
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    11
 *  a "unix" system, but since it doesn't use unix.c, we don't define
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    12
 *  PHYSFS_PLATFORM_UNIX on that system.
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    13
 */
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    14
947
b0c91495af9b Haiku support.
Ryan C. Gordon <icculus@icculus.org>
parents: 942
diff changeset
    15
#if (defined __HAIKU__)
1235
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    16
#  define PHYSFS_PLATFORM_HAIKU 1
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    17
#  define PHYSFS_PLATFORM_BEOS 1
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    18
#  define PHYSFS_PLATFORM_POSIX 1
947
b0c91495af9b Haiku support.
Ryan C. Gordon <icculus@icculus.org>
parents: 942
diff changeset
    19
#elif ((defined __BEOS__) || (defined __beos__))
1235
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    20
#  define PHYSFS_PLATFORM_BEOS 1
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    21
#  define PHYSFS_PLATFORM_POSIX 1
818
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    22
#elif (defined _WIN32_WCE) || (defined _WIN64_WCE)
1196
54a1dfb1e6f7 Removed PocketPC support. It was old and crusty and targeted a dead platform.
Ryan C. Gordon <icculus@icculus.org>
parents: 1011
diff changeset
    23
#  error PocketPC support was dropped from PhysicsFS 2.1. Sorry.
818
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    24
#elif (((defined _WIN32) || (defined _WIN64)) && (!defined __CYGWIN__))
1235
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    25
#  define PHYSFS_PLATFORM_WINDOWS 1
818
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    26
#elif (defined OS2)
1197
65f35dc8f84c Removed OS/2 support.
Ryan C. Gordon <icculus@icculus.org>
parents: 1196
diff changeset
    27
#  error OS/2 support was dropped from PhysicsFS 2.1. Sorry.
818
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    28
#elif ((defined __MACH__) && (defined __APPLE__))
954
7f59a79739ba Fixed comment typo.
Ryan C. Gordon <icculus@icculus.org>
parents: 947
diff changeset
    29
/* To check if iphone or not, we need to include this file */
942
e7bed87e50ce iPhone support patch (thanks, Christian!)
Ryan C. Gordon <icculus@icculus.org>
parents: 847
diff changeset
    30
# include <TargetConditionals.h> 
1011
6bc1363ad17d Fixed building with Mac OS X 10.6 SDK.
Ryan C. Gordon <icculus@icculus.org>
parents: 972
diff changeset
    31
# if ((TARGET_IPHONE_SIMULATOR) || (TARGET_OS_IPHONE))
1235
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    32
#    define PHYSFS_PLATFORM_UNIX 1
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    33
#    define PHYSFS_PLATFORM_POSIX 1
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    34
#    define PHYSFS_NO_CDROM_SUPPORT 1
942
e7bed87e50ce iPhone support patch (thanks, Christian!)
Ryan C. Gordon <icculus@icculus.org>
parents: 847
diff changeset
    35
#  else
1235
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    36
#    define PHYSFS_PLATFORM_MACOSX 1
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    37
#    define PHYSFS_PLATFORM_POSIX 1
942
e7bed87e50ce iPhone support patch (thanks, Christian!)
Ryan C. Gordon <icculus@icculus.org>
parents: 847
diff changeset
    38
#  endif
818
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    39
#elif defined(macintosh)
825
b26da6cdcebb Dropped classic Mac OS support. Mac OS X remains supported, though.
Ryan C. Gordon <icculus@icculus.org>
parents: 818
diff changeset
    40
#  error Classic Mac OS support was dropped from PhysicsFS 2.0. Move to OS X.
1233
53a01072f272 Added Linux and Solaris tests.
Ryan C. Gordon <icculus@icculus.org>
parents: 1197
diff changeset
    41
#elif defined(__linux)
1235
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    42
#  define PHYSFS_PLATFORM_LINUX 1
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    43
#  define PHYSFS_PLATFORM_UNIX 1
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    44
#  define PHYSFS_PLATFORM_POSIX 1
1233
53a01072f272 Added Linux and Solaris tests.
Ryan C. Gordon <icculus@icculus.org>
parents: 1197
diff changeset
    45
#elif defined(__sun) || defined(sun)
1235
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    46
#  define PHYSFS_PLATFORM_SOLARIS 1
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    47
#  define PHYSFS_PLATFORM_UNIX 1
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    48
#  define PHYSFS_PLATFORM_POSIX 1
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    49
#elif defined(BSD)
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    50
#  define PHYSFS_PLATFORM_BSD 1
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    51
#  define PHYSFS_PLATFORM_UNIX 1
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    52
#  define PHYSFS_PLATFORM_POSIX 1
818
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    53
#elif defined(unix)
1235
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    54
#  define PHYSFS_PLATFORM_UNIX 1
2ed0567fe413 Make physfs_platforms.h define with a 1, so "#if X" works.
Ryan C. Gordon <icculus@icculus.org>
parents: 1233
diff changeset
    55
#  define PHYSFS_PLATFORM_POSIX 1
818
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    56
#else
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    57
#  error Unknown platform.
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    58
#endif
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    59
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    60
#endif  /* include-once blocker. */
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    61