23 #define FS_DSO_EXTENSION ".dll"
25 #define FS_DSO_EXTENSION ".dylib"
27 #define FS_DSO_EXTENSION ".so"
54 static UT_DSOHandle *loadDSO(
55 const char *file_name,
bool available_to_later_loaded_libraries,
68 static void *findSymbol(UT_DSOHandle &handle,
const char *symbol_name);
72 static int closeDSO(UT_DSOHandle &handle);
76 static UT_DSOHandle *getExecutable();
82 static UT_DSOHandle *getLoadedLibrary(
const char *lib_name);
90 static UT_DSOHandle *loadLibraryInPath(
91 const char *shared_object_name,
92 bool available_to_later_loaded_libraries);
97 bool run(
const char *function_name,
void *
data = NULL,
98 bool validate_version =
true);
99 bool run(
const char *
filename,
const char *function_name,
100 void *
data = NULL,
bool validate_version =
true,
108 bool runReverse(
const char *function_name,
void *
data = NULL,
109 bool validate_version =
true);
115 void *findProcedure(
const char *filename,
const char *function_name,
117 bool validate_version =
true,
118 bool err_on_missing_file =
true);
122 static const char *getRunningFile();
125 bool dsoListRun(
exint data_i,
128 bool validate_version,
131 static bool checkDSOVersion(UT_DSOHandle *handle,
132 const char *filename);
134 typedef void (*DSOCallback)(
void *);
135 static DSOCallback loadDSOAndFindFunction(UT_DSOHandle *&handle,
136 const char *file_name,
137 const char *func_name,
138 bool validate_version,
139 bool err_on_missing_func);
140 static UT_DSOHandle *openLibrary(
const char *filename);
142 static const char *theRunningFile;
GT_API const UT_StringHolder filename
GLsizei const GLchar *const * path