aboutsummaryrefslogtreecommitdiff
path: root/jim-load.c
diff options
context:
space:
mode:
authorSteve Bennett <steveb@workware.net.au>2010-08-12 12:27:33 +1000
committerSteve Bennett <steveb@workware.net.au>2010-10-15 11:02:50 +1000
commit4374aaf2b8c59544f9c39ededfdfe659eae9c9c0 (patch)
treed2df29aa83e80b0b2f82ed713a7aaf78f30813e6 /jim-load.c
parent0f4cb39eb1ebaf3cc931b450b517a177beb8c05e (diff)
downloadjimtcl-4374aaf2b8c59544f9c39ededfdfe659eae9c9c0.zip
jimtcl-4374aaf2b8c59544f9c39ededfdfe659eae9c9c0.tar.gz
jimtcl-4374aaf2b8c59544f9c39ededfdfe659eae9c9c0.tar.bz2
Improvements to jim configure
Create and use config.h Check for backtrace, fork, vfork, syslog, regcomp and others Disable extensions which require missing functions/features Check for one arg vs. two arg mkdir() Distinguish between mingw and native windows The aio extension has reduced functionality for ANSI C only Signed-off-by: Steve Bennett <steveb@workware.net.au>
Diffstat (limited to 'jim-load.c')
-rw-r--r--jim-load.c28
1 files changed, 3 insertions, 25 deletions
diff --git a/jim-load.c b/jim-load.c
index 672b536..84a7d43 100644
--- a/jim-load.c
+++ b/jim-load.c
@@ -1,35 +1,13 @@
#include <jim.h>
+#include <string.h>
/* -----------------------------------------------------------------------------
* Dynamic libraries support (WIN32 not supported)
* ---------------------------------------------------------------------------*/
#ifdef JIM_DYNLIB
-#ifdef WIN32
-#define RTLD_LAZY 0
-void * dlopen(const char *path, int mode)
-{
- JIM_NOTUSED(mode);
- return (void *)LoadLibraryA(path);
-}
-int dlclose(void *handle)
-{
- FreeLibrary((HANDLE)handle);
- return 0;
-}
-void *dlsym(void *handle, const char *symbol)
-{
- return GetProcAddress((HMODULE)handle, symbol);
-}
-static char win32_dlerror_string[121];
-const char *dlerror(void)
-{
- FormatMessageA(FORMAT_MESSAGE_FROM_SYSTEM, NULL, GetLastError(),
- LANG_NEUTRAL, win32_dlerror_string, 120, NULL);
- return win32_dlerror_string;
-}
-#endif /* WIN32 */
+#include <dlfcn.h>
int Jim_LoadLibrary(Jim_Interp *interp, const char *pathName)
{
@@ -44,7 +22,7 @@ int Jim_LoadLibrary(Jim_Interp *interp, const char *pathName)
libPathObjPtr = NULL;
} else {
Jim_IncrRefCount(libPathObjPtr);
- Jim_ListLength(interp, libPathObjPtr, &prefixc);
+ prefixc = Jim_ListLength(interp, libPathObjPtr);
}
for (i = -1; i < prefixc; i++) {