1ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner/* Copyright (c) 2010 The Android Open Source Project 2ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * 3ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * Permission is hereby granted, free of charge, to any person obtaining a copy 4ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * of this software and associated documentation files (the "Software"), to deal 5ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * in the Software without restriction, including without limitation the rights 6ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * copies of the Software, and to permit persons to whom the Software is 8ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * furnished to do so, subject to the following conditions: 9ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * 10ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * The above copyright notice and this permission notice shall be included in 11ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * all copies or substantial portions of the Software. 12ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * 13ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 16ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner * THE SOFTWARE. 20ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner */ 21ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner 22ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner/* dummy dlopen()/dlclose()/dlsym() implementations to be used in static builds */ 23ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner#include <stddef.h> 24ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner 25ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turnervoid* dlopen(void) 26ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner{ 27ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner /* Do not return NULL to route around a bug in our SDL configure script */ 28ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner /* mimick succesful load, then all calls to dlsym/dlvsym will fail */ 29ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner return (void*)"XXX"; 30ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner} 31ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner 32ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turnervoid dlclose(void) 33ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner{ 34ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner} 35ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner 36ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turnervoid* dlsym(void) 37ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner{ 38ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner return NULL; 39ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner} 40ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner 41ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turnervoid* dlvsym(void) 42ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner{ 43ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner return NULL; 44ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner} 45ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner 46ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turnerconst char* dlerror(void) 47ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner{ 48ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner return "Dynamic linking not enabled !"; 49ab873b750621bca7eef41869c685dec8c363333aDavid 'Digit' Turner} 50