physfs_platforms.h
author Ryan C. Gordon <icculus@icculus.org>
Sun, 02 Nov 2008 15:19:58 -0500
changeset 942 e7bed87e50ce
parent 847 5e5e6c067413
child 947 b0c91495af9b
permissions -rw-r--r--
iPhone support patch (thanks, Christian!) Original email... Date: Tue, 28 Oct 2008 20:22:04 +0100 From: Christian Gmeiner To: icculus@icculus.org Subject: Physfs IPhone suport Hi.. this simple patch adds IPhone support to physfs. I have also tested a normal osx 10 cocoa app and it builds too with this patch. Hope to see it soon in the main hg tree. In the next week I will do some tests on a real IPhone/IPod Touch, but I think it should be okay. greets, -- Christian Gmeiner, B.Sc.
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
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    15
#if ((defined __BEOS__) || (defined __beos__))
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    16
#  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
    17
#  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
    18
#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
    19
#  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
    20
#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
    21
#  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
    22
#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
    23
#  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
    24
#elif ((defined __MACH__) && (defined __APPLE__))
942
e7bed87e50ce iPhone support patch (thanks, Christian!)
Ryan C. Gordon <icculus@icculus.org>
parents: 847
diff changeset
    25
/* To check if iphone or not, we need to inlcude this file */
e7bed87e50ce iPhone support patch (thanks, Christian!)
Ryan C. Gordon <icculus@icculus.org>
parents: 847
diff changeset
    26
# include <TargetConditionals.h> 
e7bed87e50ce iPhone support patch (thanks, Christian!)
Ryan C. Gordon <icculus@icculus.org>
parents: 847
diff changeset
    27
# if (defined(TARGET_IPHONE_SIMULATOR) || (defined TARGET_OS_IPHONE))
e7bed87e50ce iPhone support patch (thanks, Christian!)
Ryan C. Gordon <icculus@icculus.org>
parents: 847
diff changeset
    28
#    define PHYSFS_PLATFORM_UNIX
e7bed87e50ce iPhone support patch (thanks, Christian!)
Ryan C. Gordon <icculus@icculus.org>
parents: 847
diff changeset
    29
#    define PHYSFS_PLATFORM_POSIX
e7bed87e50ce iPhone support patch (thanks, Christian!)
Ryan C. Gordon <icculus@icculus.org>
parents: 847
diff changeset
    30
#    define PHYSFS_NO_CDROM_SUPPORT
e7bed87e50ce iPhone support patch (thanks, Christian!)
Ryan C. Gordon <icculus@icculus.org>
parents: 847
diff changeset
    31
#  else
e7bed87e50ce iPhone support patch (thanks, Christian!)
Ryan C. Gordon <icculus@icculus.org>
parents: 847
diff changeset
    32
#    define PHYSFS_PLATFORM_MACOSX
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
#  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
    35
#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
    36
#  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
    37
#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
    38
#  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
    39
#  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
    40
#else
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    41
#  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
    42
#endif
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    43
e36f23f49042 Now compiles everything whether we need it or not, removing whole files with
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    44
#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
    45