physfs_platforms.h
author Ryan C. Gordon <icculus@icculus.org>
Tue, 23 Mar 2010 16:06:49 -0400
branchstable-2.0
changeset 1082 94771621792f
parent 1013 d0a87845e580
child 1296 729ae74cee66
permissions -rw-r--r--
Upped version to 2.0.1
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__)
b0c91495af9b Haiku support.
Ryan C. Gordon <icculus@icculus.org>
parents: 942
diff changeset
    16
#  define PHYSFS_PLATFORM_HAIKU
b0c91495af9b Haiku support.
Ryan C. Gordon <icculus@icculus.org>
parents: 942
diff changeset
    17
#  define PHYSFS_PLATFORM_BEOS
b0c91495af9b Haiku support.
Ryan C. Gordon <icculus@icculus.org>
parents: 942
diff changeset
    18
#  define PHYSFS_PLATFORM_POSIX
b0c91495af9b Haiku support.
Ryan C. Gordon <icculus@icculus.org>
parents: 942
diff changeset
    19
#elif ((defined __BEOS__) || (defined __beos__))
818
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    20
#  define PHYSFS_PLATFORM_BEOS
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    21
#  define PHYSFS_PLATFORM_POSIX
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)
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    23
#  define PHYSFS_PLATFORM_POCKETPC
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__))
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    25
#  define PHYSFS_PLATFORM_WINDOWS
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)
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    27
#  define PHYSFS_PLATFORM_OS2
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> 
1013
d0a87845e580 Fixed building of stable-2.0 branch with Mac OS X 10.6 SDK.
Ryan C. Gordon <icculus@icculus.org>
parents: 954
diff changeset
    31
# if ((TARGET_IPHONE_SIMULATOR) || (TARGET_OS_IPHONE))
942
e7bed87e50ce iPhone support patch (thanks, Christian!)
Ryan C. Gordon <icculus@icculus.org>
parents: 847
diff changeset
    32
#    define PHYSFS_PLATFORM_UNIX
e7bed87e50ce iPhone support patch (thanks, Christian!)
Ryan C. Gordon <icculus@icculus.org>
parents: 847
diff changeset
    33
#    define PHYSFS_PLATFORM_POSIX
e7bed87e50ce iPhone support patch (thanks, Christian!)
Ryan C. Gordon <icculus@icculus.org>
parents: 847
diff changeset
    34
#    define PHYSFS_NO_CDROM_SUPPORT
e7bed87e50ce iPhone support patch (thanks, Christian!)
Ryan C. Gordon <icculus@icculus.org>
parents: 847
diff changeset
    35
#  else
e7bed87e50ce iPhone support patch (thanks, Christian!)
Ryan C. Gordon <icculus@icculus.org>
parents: 847
diff changeset
    36
#    define PHYSFS_PLATFORM_MACOSX
e7bed87e50ce iPhone support patch (thanks, Christian!)
Ryan C. Gordon <icculus@icculus.org>
parents: 847
diff changeset
    37
#    define PHYSFS_PLATFORM_POSIX
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.
818
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    41
#elif defined(unix)
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    42
#  define PHYSFS_PLATFORM_UNIX
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    43
#  define PHYSFS_PLATFORM_POSIX
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    44
#else
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    45
#  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
    46
#endif
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    47
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    48
#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
    49