annotate src/SDL_loadso.c @ 1269:905d5b482f2a

Some explanation on why SDL_RWFromFP doesn't always work on Win32
author Sam Lantinga <slouken@libsdl.org>
date Thu, 26 Jan 2006 06:10:34 +0000
parents ed252764287a
children c9b51268668f
rev   line source
294
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
1 /*
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
2 SDL - Simple DirectMedia Layer
769
b8d311d90021 Updated copyright information for 2004 (Happy New Year!)
Sam Lantinga <slouken@libsdl.org>
parents: 708
diff changeset
3 Copyright (C) 1997-2004 Sam Lantinga
294
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
4
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
5 This library is free software; you can redistribute it and/or
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
6 modify it under the terms of the GNU Library General Public
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
7 License as published by the Free Software Foundation; either
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
8 version 2 of the License, or (at your option) any later version.
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
9
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
10 This library is distributed in the hope that it will be useful,
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
13 Library General Public License for more details.
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
14
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
15 You should have received a copy of the GNU Library General Public
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
16 License along with this library; if not, write to the Free
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
18
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
19 Sam Lantinga
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
20 slouken@libsdl.org
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
21 */
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
22
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
23 #ifdef SAVE_RCSID
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
24 static char rcsid =
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
25 "@(#) $Id$";
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
26 #endif
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
27
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
28 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
29 /* System dependent library loading routines */
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
30
1236
ed252764287a Minor bit of debug output added to dynamic X11 code.
Ryan C. Gordon <icculus@icculus.org>
parents: 1190
diff changeset
31 /*
ed252764287a Minor bit of debug output added to dynamic X11 code.
Ryan C. Gordon <icculus@icculus.org>
parents: 1190
diff changeset
32 * Mac OS X >= 10.3 are guaranteed to have dlopen support in a system
ed252764287a Minor bit of debug output added to dynamic X11 code.
Ryan C. Gordon <icculus@icculus.org>
parents: 1190
diff changeset
33 * framework, which means we don't have to roll our own on non-PowerPC
ed252764287a Minor bit of debug output added to dynamic X11 code.
Ryan C. Gordon <icculus@icculus.org>
parents: 1190
diff changeset
34 * systems to guarantee compatibility (x86 Macs started at 10.4). --ryan.
ed252764287a Minor bit of debug output added to dynamic X11 code.
Ryan C. Gordon <icculus@icculus.org>
parents: 1190
diff changeset
35 */
ed252764287a Minor bit of debug output added to dynamic X11 code.
Ryan C. Gordon <icculus@icculus.org>
parents: 1190
diff changeset
36 #if ( (defined(MACOSX)) && (!defined(__POWERPC__)) )
ed252764287a Minor bit of debug output added to dynamic X11 code.
Ryan C. Gordon <icculus@icculus.org>
parents: 1190
diff changeset
37 # define USE_DLOPEN 1
ed252764287a Minor bit of debug output added to dynamic X11 code.
Ryan C. Gordon <icculus@icculus.org>
parents: 1190
diff changeset
38 #endif
ed252764287a Minor bit of debug output added to dynamic X11 code.
Ryan C. Gordon <icculus@icculus.org>
parents: 1190
diff changeset
39
1173
e9cf8c1b4590 Split up src/SDL_loadso.c into platform directories.
Ryan C. Gordon <icculus@icculus.org>
parents: 1152
diff changeset
40 /* !!! FIXME: includes so I don't have to update all the project files... */
e9cf8c1b4590 Split up src/SDL_loadso.c into platform directories.
Ryan C. Gordon <icculus@icculus.org>
parents: 1152
diff changeset
41 #define SDL_INTERNAL_BUILDING_LOADSO 1
e9cf8c1b4590 Split up src/SDL_loadso.c into platform directories.
Ryan C. Gordon <icculus@icculus.org>
parents: 1152
diff changeset
42 #if defined(USE_DUMMY_LOADSO)
e9cf8c1b4590 Split up src/SDL_loadso.c into platform directories.
Ryan C. Gordon <icculus@icculus.org>
parents: 1152
diff changeset
43 # include "loadso/dummy/SDL_loadso.c"
1236
ed252764287a Minor bit of debug output added to dynamic X11 code.
Ryan C. Gordon <icculus@icculus.org>
parents: 1190
diff changeset
44 #elif defined(USE_DLOPEN)
ed252764287a Minor bit of debug output added to dynamic X11 code.
Ryan C. Gordon <icculus@icculus.org>
parents: 1190
diff changeset
45 # include "loadso/dlopen/SDL_loadso.c"
1173
e9cf8c1b4590 Split up src/SDL_loadso.c into platform directories.
Ryan C. Gordon <icculus@icculus.org>
parents: 1152
diff changeset
46 #elif defined(MACOSX)
e9cf8c1b4590 Split up src/SDL_loadso.c into platform directories.
Ryan C. Gordon <icculus@icculus.org>
parents: 1152
diff changeset
47 # include "loadso/macosx/SDL_loadso.c"
294
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
48 #elif defined(macintosh)
1173
e9cf8c1b4590 Split up src/SDL_loadso.c into platform directories.
Ryan C. Gordon <icculus@icculus.org>
parents: 1152
diff changeset
49 # include "loadso/macos/SDL_loadso.c"
e9cf8c1b4590 Split up src/SDL_loadso.c into platform directories.
Ryan C. Gordon <icculus@icculus.org>
parents: 1152
diff changeset
50 #elif defined(WIN32) || defined(_WIN32_WCE)
e9cf8c1b4590 Split up src/SDL_loadso.c into platform directories.
Ryan C. Gordon <icculus@icculus.org>
parents: 1152
diff changeset
51 # include "loadso/windows/SDL_loadso.c"
e9cf8c1b4590 Split up src/SDL_loadso.c into platform directories.
Ryan C. Gordon <icculus@icculus.org>
parents: 1152
diff changeset
52 #elif defined(__BEOS__)
e9cf8c1b4590 Split up src/SDL_loadso.c into platform directories.
Ryan C. Gordon <icculus@icculus.org>
parents: 1152
diff changeset
53 # include "loadso/beos/SDL_loadso.c"
651
35ff0890ac4e pmandin: Added Atari LDG shared object loader
Patrice Mandin <patmandin@gmail.com>
parents: 336
diff changeset
54 #elif defined(__MINT__) && defined(ENABLE_LDG)
1173
e9cf8c1b4590 Split up src/SDL_loadso.c into platform directories.
Ryan C. Gordon <icculus@icculus.org>
parents: 1152
diff changeset
55 # include "loadso/mint/SDL_loadso.c"
1190
173c063d4f55 OS/2 port!
Ryan C. Gordon <icculus@icculus.org>
parents: 1173
diff changeset
56 #elif defined(__OS2__)
173c063d4f55 OS/2 port!
Ryan C. Gordon <icculus@icculus.org>
parents: 1173
diff changeset
57 # include "loadso/os2/SDL_loadso.c"
294
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
58 #else
1173
e9cf8c1b4590 Split up src/SDL_loadso.c into platform directories.
Ryan C. Gordon <icculus@icculus.org>
parents: 1152
diff changeset
59 # include "loadso/dummy/SDL_loadso.c"
294
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
60 #endif /* system type */
d2d48e10f370 Added a new header file: SDL_loadso.h
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
61