shared_object routines support: SWI compatibility and more flexibility.

This commit is contained in:
Vítor Santos Costa
2010-06-17 00:29:01 +01:00
parent c7b5cc235e
commit 6e67a84ab0
11 changed files with 332 additions and 2 deletions

View File

@@ -109,6 +109,29 @@ mydlclose(void *handle)
return TRUE;
}
void *
Yap_LoadForeignFile(char *file, int flags)
{
return (void *)mydlopen(file);
}
int
Yap_CallForeignFile(void *handle, char *f)
{
YapInitProc proc = (YapInitProc) mydlsym(f);
if (!proc)
return FALSE;
(*proc)();
return TRUE;
}
int
Yap_CloseForeignFile(void *handle)
{
return mydlclose(handle);
}
/*
* LoadForeign(ofiles,libs,proc_name,init_proc) dynamically loads foreign
* code files and libraries and locates an initialization routine