Changed directory structure to contain less symlinks so dependencies will get recalculated correctly by make
This commit is contained in:
72
project/jni/sdl-1.3/src/loadso/beos/SDL_sysloadso.c
Normal file
72
project/jni/sdl-1.3/src/loadso/beos/SDL_sysloadso.c
Normal file
@@ -0,0 +1,72 @@
|
||||
/*
|
||||
SDL - Simple DirectMedia Layer
|
||||
Copyright (C) 1997-2010 Sam Lantinga
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Sam Lantinga
|
||||
slouken@libsdl.org
|
||||
*/
|
||||
#include "SDL_config.h"
|
||||
|
||||
#ifdef SDL_LOADSO_BEOS
|
||||
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
/* System dependent library loading routines */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <be/kernel/image.h>
|
||||
|
||||
#include "SDL_loadso.h"
|
||||
|
||||
void *
|
||||
SDL_LoadObject(const char *sofile)
|
||||
{
|
||||
void *handle = NULL;
|
||||
image_id library_id = load_add_on(sofile);
|
||||
if (library_id < 0) {
|
||||
SDL_SetError(strerror((int) library_id));
|
||||
} else {
|
||||
handle = (void *) (library_id);
|
||||
}
|
||||
return (handle);
|
||||
}
|
||||
|
||||
void *
|
||||
SDL_LoadFunction(void *handle, const char *name)
|
||||
{
|
||||
void *sym = NULL;
|
||||
image_id library_id = (image_id) handle;
|
||||
status_t rc =
|
||||
get_image_symbol(library_id, name, B_SYMBOL_TYPE_TEXT, &sym);
|
||||
if (rc != B_NO_ERROR) {
|
||||
SDL_SetError(strerror(rc));
|
||||
}
|
||||
return (sym);
|
||||
}
|
||||
|
||||
void
|
||||
SDL_UnloadObject(void *handle)
|
||||
{
|
||||
image_id library_id;
|
||||
if (handle != NULL) {
|
||||
library_id = (image_id) handle;
|
||||
unload_add_on(library_id);
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* SDL_LOADSO_BEOS */
|
||||
|
||||
/* vi: set ts=4 sw=4 expandtab: */
|
||||
75
project/jni/sdl-1.3/src/loadso/dlopen/SDL_sysloadso.c
Normal file
75
project/jni/sdl-1.3/src/loadso/dlopen/SDL_sysloadso.c
Normal file
@@ -0,0 +1,75 @@
|
||||
/*
|
||||
SDL - Simple DirectMedia Layer
|
||||
Copyright (C) 1997-2010 Sam Lantinga
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Sam Lantinga
|
||||
slouken@libsdl.org
|
||||
*/
|
||||
#include "SDL_config.h"
|
||||
|
||||
#ifdef SDL_LOADSO_DLOPEN
|
||||
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
/* System dependent library loading routines */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <dlfcn.h>
|
||||
|
||||
#include "SDL_loadso.h"
|
||||
|
||||
void *
|
||||
SDL_LoadObject(const char *sofile)
|
||||
{
|
||||
void *handle = dlopen(sofile, RTLD_NOW);
|
||||
const char *loaderror = (char *) dlerror();
|
||||
if (handle == NULL) {
|
||||
SDL_SetError("Failed loading %s: %s", sofile, loaderror);
|
||||
}
|
||||
return (handle);
|
||||
}
|
||||
|
||||
void *
|
||||
SDL_LoadFunction(void *handle, const char *name)
|
||||
{
|
||||
void *symbol = dlsym(handle, name);
|
||||
if (symbol == NULL) {
|
||||
/* append an underscore for platforms that need that. */
|
||||
size_t len = 1 + SDL_strlen(name) + 1;
|
||||
char *_name = SDL_stack_alloc(char, len);
|
||||
_name[0] = '_';
|
||||
SDL_strlcpy(&_name[1], name, len);
|
||||
symbol = dlsym(handle, _name);
|
||||
SDL_stack_free(_name);
|
||||
if (symbol == NULL) {
|
||||
SDL_SetError("Failed loading %s: %s", name,
|
||||
(const char *) dlerror());
|
||||
}
|
||||
}
|
||||
return (symbol);
|
||||
}
|
||||
|
||||
void
|
||||
SDL_UnloadObject(void *handle)
|
||||
{
|
||||
if (handle != NULL) {
|
||||
dlclose(handle);
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* SDL_LOADSO_DLOPEN */
|
||||
|
||||
/* vi: set ts=4 sw=4 expandtab: */
|
||||
55
project/jni/sdl-1.3/src/loadso/dummy/SDL_sysloadso.c
Normal file
55
project/jni/sdl-1.3/src/loadso/dummy/SDL_sysloadso.c
Normal file
@@ -0,0 +1,55 @@
|
||||
/*
|
||||
SDL - Simple DirectMedia Layer
|
||||
Copyright (C) 1997-2010 Sam Lantinga
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Sam Lantinga
|
||||
slouken@libsdl.org
|
||||
*/
|
||||
#include "SDL_config.h"
|
||||
|
||||
#if defined(SDL_LOADSO_DUMMY) || defined(SDL_LOADSO_DISABLED)
|
||||
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
/* System dependent library loading routines */
|
||||
|
||||
#include "SDL_loadso.h"
|
||||
|
||||
void *
|
||||
SDL_LoadObject(const char *sofile)
|
||||
{
|
||||
const char *loaderror = "SDL_LoadObject() not implemented";
|
||||
SDL_SetError("Failed loading %s: %s", sofile, loaderror);
|
||||
return (NULL);
|
||||
}
|
||||
|
||||
void *
|
||||
SDL_LoadFunction(void *handle, const char *name)
|
||||
{
|
||||
const char *loaderror = "SDL_LoadFunction() not implemented";
|
||||
SDL_SetError("Failed loading %s: %s", name, loaderror);
|
||||
return (NULL);
|
||||
}
|
||||
|
||||
void
|
||||
SDL_UnloadObject(void *handle)
|
||||
{
|
||||
/* no-op. */
|
||||
}
|
||||
|
||||
#endif /* SDL_LOADSO_DUMMY || SDL_LOADSO_DISABLED */
|
||||
|
||||
/* vi: set ts=4 sw=4 expandtab: */
|
||||
1391
project/jni/sdl-1.3/src/loadso/macosx/SDL_dlcompat.c
Normal file
1391
project/jni/sdl-1.3/src/loadso/macosx/SDL_dlcompat.c
Normal file
File diff suppressed because it is too large
Load Diff
145
project/jni/sdl-1.3/src/loadso/win32/SDL_sysloadso.c
Normal file
145
project/jni/sdl-1.3/src/loadso/win32/SDL_sysloadso.c
Normal file
@@ -0,0 +1,145 @@
|
||||
/*
|
||||
SDL - Simple DirectMedia Layer
|
||||
Copyright (C) 1997-2010 Sam Lantinga
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Sam Lantinga
|
||||
slouken@libsdl.org
|
||||
*/
|
||||
#include "SDL_config.h"
|
||||
|
||||
#ifdef SDL_LOADSO_WIN32
|
||||
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
/* System dependent library loading routines */
|
||||
|
||||
#define WIN32_LEAN_AND_MEAN
|
||||
#include <windows.h>
|
||||
|
||||
#include "SDL_loadso.h"
|
||||
|
||||
void *
|
||||
SDL_LoadObject(const char *sofile)
|
||||
{
|
||||
void *handle = NULL;
|
||||
const char *loaderror = "Unknown error";
|
||||
|
||||
#if defined(_WIN32_WCE)
|
||||
char errbuf[512];
|
||||
|
||||
wchar_t *errbuf_t = SDL_malloc(512 * sizeof(wchar_t));
|
||||
wchar_t *sofile_t = SDL_malloc((MAX_PATH + 1) * sizeof(wchar_t));
|
||||
|
||||
MultiByteToWideChar(CP_ACP, MB_PRECOMPOSED, sofile, -1, sofile_t,
|
||||
MAX_PATH);
|
||||
handle = (void *) LoadLibrary(sofile_t);
|
||||
|
||||
/* Generate an error message if all loads failed */
|
||||
if (handle == NULL) {
|
||||
FormatMessage((FORMAT_MESSAGE_IGNORE_INSERTS |
|
||||
FORMAT_MESSAGE_FROM_SYSTEM),
|
||||
NULL, GetLastError(),
|
||||
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
|
||||
errbuf_t, SDL_arraysize(errbuf), NULL);
|
||||
WideCharToMultiByte(CP_ACP, 0, errbuf_t, -1, errbuf, 511, NULL, NULL);
|
||||
loaderror = errbuf;
|
||||
}
|
||||
|
||||
SDL_free(sofile_t);
|
||||
SDL_free(errbuf_t);
|
||||
|
||||
#else /*if defined(__WIN32__) */
|
||||
char errbuf[512];
|
||||
|
||||
handle = (void *) LoadLibrary(sofile);
|
||||
|
||||
/* Generate an error message if all loads failed */
|
||||
if (handle == NULL) {
|
||||
FormatMessage((FORMAT_MESSAGE_IGNORE_INSERTS |
|
||||
FORMAT_MESSAGE_FROM_SYSTEM),
|
||||
NULL, GetLastError(),
|
||||
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
|
||||
errbuf, SDL_arraysize(errbuf), NULL);
|
||||
loaderror = errbuf;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (handle == NULL) {
|
||||
SDL_SetError("Failed loading %s: %s", sofile, loaderror);
|
||||
}
|
||||
return (handle);
|
||||
}
|
||||
|
||||
void *
|
||||
SDL_LoadFunction(void *handle, const char *name)
|
||||
{
|
||||
void *symbol = NULL;
|
||||
const char *loaderror = "Unknown error";
|
||||
|
||||
#if defined(_WIN32_WCE)
|
||||
char errbuf[512];
|
||||
int length = SDL_strlen(name);
|
||||
|
||||
wchar_t *name_t = SDL_malloc((length + 1) * sizeof(wchar_t));
|
||||
wchar_t *errbuf_t = SDL_malloc(512 * sizeof(wchar_t));
|
||||
|
||||
MultiByteToWideChar(CP_ACP, MB_PRECOMPOSED, name, -1, name_t, length + 1);
|
||||
|
||||
symbol = (void *) GetProcAddress((HMODULE) handle, name_t);
|
||||
if (symbol == NULL) {
|
||||
FormatMessage((FORMAT_MESSAGE_IGNORE_INSERTS |
|
||||
FORMAT_MESSAGE_FROM_SYSTEM),
|
||||
NULL, GetLastError(),
|
||||
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
|
||||
errbuf_t, SDL_arraysize(errbuf), NULL);
|
||||
WideCharToMultiByte(CP_ACP, 0, errbuf_t, -1, errbuf, 511, NULL, NULL);
|
||||
loaderror = errbuf;
|
||||
}
|
||||
|
||||
SDL_free(name_t);
|
||||
SDL_free(errbuf_t);
|
||||
|
||||
#else /*if defined(WIN32) */
|
||||
char errbuf[512];
|
||||
|
||||
symbol = (void *) GetProcAddress((HMODULE) handle, name);
|
||||
if (symbol == NULL) {
|
||||
FormatMessage((FORMAT_MESSAGE_IGNORE_INSERTS |
|
||||
FORMAT_MESSAGE_FROM_SYSTEM),
|
||||
NULL, GetLastError(),
|
||||
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
|
||||
errbuf, SDL_arraysize(errbuf), NULL);
|
||||
loaderror = errbuf;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (symbol == NULL) {
|
||||
SDL_SetError("Failed loading %s: %s", name, loaderror);
|
||||
}
|
||||
return (symbol);
|
||||
}
|
||||
|
||||
void
|
||||
SDL_UnloadObject(void *handle)
|
||||
{
|
||||
if (handle != NULL) {
|
||||
FreeLibrary((HMODULE) handle);
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* SDL_LOADSO_WIN32 */
|
||||
|
||||
/* vi: set ts=4 sw=4 expandtab: */
|
||||
Reference in New Issue
Block a user