1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
|
#ifdef USE_DL
#include <stdio.h>
#include <dl.h>
#include <gio.h>
#include <prsetup.h>
int have_dl = 1;
#ifdef ANSI_FUNC
void *
DLOpen(char *name)
#else
void *DLOpen(name)
char *name;
#endif
{
void *d;
if( !(d=dlopen(name, RTLD_LAZY)) )
gerror(stderr, "%s\n", dlerror());
return d;
}
#ifdef ANSI_FUNC
void *
DLSym(void *dl, char *name)
#else
void *DLSym(dl, name)
void *dl;
char *name;
#endif
{
void *d;
if( !(d=dlsym(dl, name)) )
gerror(stderr, "%s\n", dlerror());
return d;
}
#ifdef ANSI_FUNC
int
DLClose(void *dl)
#else
int DLClose(dl)
void *dl;
#endif
{
if( dl )
return dlclose(dl);
else
return -1;
}
#else
int have_dl = 0;
#endif
|