63 char *env, *init_p, *
p;
66 env =
getenv (
"ABC_LIB_PATH");
69 init_p =
ABC_ALLOC(
char, (2*
sizeof(
char)) );
70 init_p[0]=
'.'; init_p[1] = 0;
84 if (endp != NULL) *endp = 0;
92 while ((dp = readdir(dirp)) != NULL) {
93 if ((
strncmp(
"libabc_", dp->d_name, 7) == 0) &&
94 (
strcmp(
".so", dp->d_name +
strlen(dp->d_name) - 3) == 0)) {
98 printf(
"Warning: maximum number of ABC libraries (%d) exceeded. Not loading %s.\n",
108 strcat(szPrefixed, dp->d_name);
109 libHandles[curr_lib] = dlopen(szPrefixed, RTLD_NOW | RTLD_LOCAL);
112 if (libHandles[curr_lib] != 0) {
113 printf(
"Loaded ABC library: %s (Abc library extension #%d)\n", szPrefixed, curr_lib);
116 printf(
"Warning: failed to load ABC library %s:\n\t%s\n", szPrefixed, dlerror());
136 libHandles[curr_lib] = 0;