changeset 10093:ad83de1c0038

cygwin/mingw32 support by Sascha Sommer
author alex
date Sun, 11 May 2003 17:58:03 +0000
parents d77ebd5d8990
children 5730f6098f98
files libmpcodecs/ad_realaud.c libmpcodecs/vd_realvid.c
diffstat 2 files changed, 25 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/libmpcodecs/ad_realaud.c	Sun May 11 16:39:16 2003 +0000
+++ b/libmpcodecs/ad_realaud.c	Sun May 11 17:58:03 2003 +0000
@@ -8,7 +8,9 @@
 #ifdef USE_REALCODECS
 
 //#include <stddef.h>
+#ifdef HAVE_LIBDL
 #include <dlfcn.h>
+#endif
 #include "help_mp.h"
 
 #include "ad_internal.h"
@@ -112,6 +114,7 @@
 } wra_init_t;
 #endif
 
+#ifdef HAVE_LIBDL
 static int load_syms_linux(char *path)
 {
     void *handle;
@@ -147,11 +150,14 @@
     mp_msg(MSGT_DECAUDIO,MSGL_WARN,"Cannot resolve symbols - incompatible dll: %s\n",path);
     dlclose(handle);
     return 0;
-}    
+}
+#endif    
 
 #ifdef USE_WIN32DLL
 
+#ifdef WIN32_LOADER
 #include "../loader/ldt_keeper.h"
+#endif
 void* WINAPI LoadLibraryA(char* name);
 void* WINAPI GetProcAddress(void* handle,char *func);
 int WINAPI FreeLibrary(void *handle);
@@ -161,7 +167,9 @@
     void *handle;
     
     mp_msg(MSGT_DECVIDEO, MSGL_INFO, "opening win32 dll '%s'\n", path);
+#ifdef WIN32_LOADER
     Setup_LDT_Keeper();
+#endif
     handle = LoadLibraryA(path);
     if (!handle)
     {
@@ -209,7 +217,9 @@
 
     /* first try to load linux dlls, if failed and we're supporting win32 dlls,
        then try to load the windows ones */
-    if (!load_syms_linux(path))
+#ifdef HAVE_LIBDL       
+    if (strstr(sh->codec->dll,".dll") || !load_syms_linux(path))
+#endif
 #ifdef USE_WIN32DLL
 	if (!load_sysm_windows(path))
 #endif
--- a/libmpcodecs/vd_realvid.c	Sun May 11 16:39:16 2003 +0000
+++ b/libmpcodecs/vd_realvid.c	Sun May 11 17:58:03 2003 +0000
@@ -4,7 +4,9 @@
 #include "config.h"
 #ifdef USE_REALCODECS
 
+#ifdef HAVE_LIBDL
 #include <dlfcn.h>
+#endif
 
 #include "mp_msg.h"
 #include "help_mp.h"
@@ -96,6 +98,7 @@
 }
 
 /* exits program when failure */
+#ifdef HAVE_LIBDL
 static int load_syms_linux(char *path) {
 		void *handle;
 
@@ -126,10 +129,13 @@
     dlclose(handle);
     return 0;
 }
+#endif
 
 #ifdef USE_WIN32DLL
 
+#ifdef WIN32_LOADER
 #include "../loader/ldt_keeper.h"
+#endif
 void* WINAPI LoadLibraryA(char* name);
 void* WINAPI GetProcAddress(void* handle,char* func);
 int WINAPI FreeLibrary(void *handle);
@@ -138,7 +144,9 @@
     void *handle;
 
     mp_msg(MSGT_DECVIDEO,MSGL_INFO, "opening win32 dll '%s'\n", path);
+#ifdef WIN32_LOADER
     Setup_LDT_Keeper();
+#endif
     handle = LoadLibraryA(path);
     mp_msg(MSGT_DECVIDEO,MSGL_V,"win32 real codec handle=%p  \n",handle);
     if (!handle) {
@@ -197,7 +205,9 @@
 
 	/* first try to load linux dlls, if failed and we're supporting win32 dlls,
 	   then try to load the windows ones */
-	if(!load_syms_linux(path))
+#ifdef HAVE_LIBDL       
+	if(strstr(sh->codec->dll,".dll") || !load_syms_linux(path))
+#endif
 #ifdef USE_WIN32DLL
 	    if (!load_syms_windows(path))
 #endif
@@ -253,7 +263,9 @@
 	    if (rv_handle) FreeLibrary(rv_handle);
 	} else
 #endif
+#ifdef HAVE_LIBDL
 	if(rv_handle) dlclose(rv_handle);
+#endif
 	rv_handle=NULL;
 }