diff --git a/configure b/configure index 072565d58fb..f8f31a5bcef 100755 --- a/configure +++ b/configure @@ -14124,6 +14124,12 @@ MAIN_BINARY="wine-pthread" esac + +cat >>confdefs.h <<_ACEOF +#define SONAME_EXT ".$LIBEXT" +_ACEOF + + if test "$LIBEXT" = "so" -o "$LIBEXT" = "dylib" then # Extract the first word of "ldd", so it can be a program name with args. diff --git a/configure.ac b/configure.ac index 349de5862f3..6f1fcc395c6 100644 --- a/configure.ac +++ b/configure.ac @@ -1094,6 +1094,8 @@ esac dnl **** Get the soname for libraries that we load dynamically **** +AC_DEFINE_UNQUOTED(SONAME_EXT,[".$LIBEXT"],[Define to the file extension of shared libraries.]) + if test "$LIBEXT" = "so" -o "$LIBEXT" = "dylib" then WINE_GET_SONAME(X11,XCreateWindow,[$X_LIBS $X_EXTRA_LIBS]) diff --git a/dlls/capi2032/cap20wxx.c b/dlls/capi2032/cap20wxx.c index 4f2352f7c08..482c37bbaeb 100644 --- a/dlls/capi2032/cap20wxx.c +++ b/dlls/capi2032/cap20wxx.c @@ -46,7 +46,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(capi); #ifdef HAVE_CAPI4LINUX #ifndef SONAME_LIBCAPI20 -#define SONAME_LIBCAPI20 "libcapi20.so" +#define SONAME_LIBCAPI20 "libcapi20" SONAME_EXT #endif static unsigned (*pcapi20_register)(unsigned, unsigned, unsigned, unsigned *) = NULL; diff --git a/dlls/gdi32/freetype.c b/dlls/gdi32/freetype.c index 9842de912fc..e1a825b22ea 100644 --- a/dlls/gdi32/freetype.c +++ b/dlls/gdi32/freetype.c @@ -129,7 +129,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(font); #endif #ifndef SONAME_LIBFREETYPE -#define SONAME_LIBFREETYPE "libfreetype.so" +#define SONAME_LIBFREETYPE "libfreetype" SONAME_EXT #endif #ifndef HAVE_FT_TRUETYPEENGINETYPE @@ -196,7 +196,7 @@ MAKE_FUNCPTR(FcPatternDestroy); MAKE_FUNCPTR(FcPatternGetBool); MAKE_FUNCPTR(FcPatternGetString); #ifndef SONAME_LIBFONTCONFIG -#define SONAME_LIBFONTCONFIG "libfontconfig.so" +#define SONAME_LIBFONTCONFIG "libfontconfig" SONAME_EXT #endif #endif diff --git a/dlls/gphoto2.ds/gphoto2_i.h b/dlls/gphoto2.ds/gphoto2_i.h index bb2b6e35b13..7167171a3db 100644 --- a/dlls/gphoto2.ds/gphoto2_i.h +++ b/dlls/gphoto2.ds/gphoto2_i.h @@ -47,7 +47,7 @@ # include # undef UINT16 # ifndef SONAME_LIBJPEG -# define SONAME_LIBJPEG "libjpeg.so" +# define SONAME_LIBJPEG "libjpeg" SONAME_EXT # endif #endif diff --git a/dlls/oleaut32/olepicture.c b/dlls/oleaut32/olepicture.c index 5d3a9f0d1e2..c2f32e4ea90 100644 --- a/dlls/oleaut32/olepicture.c +++ b/dlls/oleaut32/olepicture.c @@ -78,7 +78,7 @@ #undef jpeg_boolean #undef UINT16 #ifndef SONAME_LIBJPEG -#define SONAME_LIBJPEG "libjpeg.so" +#define SONAME_LIBJPEG "libjpeg" SONAME_EXT #endif #endif diff --git a/dlls/opengl32/wgl.c b/dlls/opengl32/wgl.c index ca6702f179d..5ab33d8ca55 100644 --- a/dlls/opengl32/wgl.c +++ b/dlls/opengl32/wgl.c @@ -676,13 +676,6 @@ void WINAPI wine_glGetIntegerv( GLenum pname, GLint* params ) } -/* No need to load any other libraries as according to the ABI, libGL should be self-sufficient and - include all dependencies -*/ -#ifndef SONAME_LIBGL -#define SONAME_LIBGL "libGL.so" -#endif - /* This is for brain-dead applications that use OpenGL functions before even creating a rendering context.... */ static BOOL process_attach(void) diff --git a/dlls/sane.ds/sane_main.c b/dlls/sane.ds/sane_main.c index d08a96882df..645dbf381e7 100644 --- a/dlls/sane.ds/sane_main.c +++ b/dlls/sane.ds/sane_main.c @@ -37,7 +37,7 @@ HINSTANCE SANE_instance; #ifdef HAVE_SANE #ifndef SONAME_LIBSANE -#define SONAME_LIBSANE "libsane.so" +#define SONAME_LIBSANE "libsane" SONAME_EXT #endif static void *libsane_handle; diff --git a/dlls/winejack.drv/jack.c b/dlls/winejack.drv/jack.c index 65a193454d9..fa891150a81 100644 --- a/dlls/winejack.drv/jack.c +++ b/dlls/winejack.drv/jack.c @@ -40,7 +40,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(jack); #ifdef HAVE_JACK_JACK_H #ifndef SONAME_LIBJACK -#define SONAME_LIBJACK "libjack.so" +#define SONAME_LIBJACK "libjack" SONAME_EXT #endif void *jackhandle = NULL; diff --git a/dlls/wineps.drv/init.c b/dlls/wineps.drv/init.c index 3ff0def1ffd..cf3b8a51e5e 100644 --- a/dlls/wineps.drv/init.c +++ b/dlls/wineps.drv/init.c @@ -46,7 +46,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(psdrv); #ifndef SONAME_LIBCUPS -#define SONAME_LIBCUPS "libcups.so" +#define SONAME_LIBCUPS "libcups" SONAME_EXT #endif #ifdef HAVE_CUPS_CUPS_H diff --git a/dlls/wineps.drv/truetype.c b/dlls/wineps.drv/truetype.c index 913bf21c6ab..a748ce15364 100644 --- a/dlls/wineps.drv/truetype.c +++ b/dlls/wineps.drv/truetype.c @@ -84,7 +84,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(psdrv); FT_LOAD_LINEAR_DESIGN ) #ifndef SONAME_LIBFREETYPE -#define SONAME_LIBFREETYPE "libfreetype.so" +#define SONAME_LIBFREETYPE "libfreetype" SONAME_EXT #endif static void *ft_handle = NULL; diff --git a/dlls/winex11.drv/mouse.c b/dlls/winex11.drv/mouse.c index 50c633777dd..b3e43d63519 100644 --- a/dlls/winex11.drv/mouse.c +++ b/dlls/winex11.drv/mouse.c @@ -28,7 +28,7 @@ #ifdef HAVE_X11_XCURSOR_XCURSOR_H # include # ifndef SONAME_LIBXCURSOR -# define SONAME_LIBXCURSOR "libXcursor.so" +# define SONAME_LIBXCURSOR "libXcursor" SONAME_EXT # endif static void *xcursor_handle; # define MAKE_FUNCPTR(f) static typeof(f) * p##f diff --git a/dlls/winex11.drv/opengl.c b/dlls/winex11.drv/opengl.c index 98405c17265..84c50928a56 100644 --- a/dlls/winex11.drv/opengl.c +++ b/dlls/winex11.drv/opengl.c @@ -202,7 +202,7 @@ static void dump_PIXELFORMATDESCRIPTOR(const PIXELFORMATDESCRIPTOR *ppfd) { include all dependencies */ #ifndef SONAME_LIBGL -#define SONAME_LIBGL "libGL.so" +#define SONAME_LIBGL "libGL" SONAME_EXT #endif #define PUSH1(attribs,att) do { attribs[nAttribs++] = (att); } while (0) diff --git a/dlls/winex11.drv/wintab.c b/dlls/winex11.drv/wintab.c index d96ee0575df..842945c67a4 100644 --- a/dlls/winex11.drv/wintab.c +++ b/dlls/winex11.drv/wintab.c @@ -240,7 +240,7 @@ static INT gNumCursors; #ifndef SONAME_LIBXI -#define SONAME_LIBXI "libXi.so" +#define SONAME_LIBXI "libXi" SONAME_EXT #endif /* XInput stuff */ diff --git a/dlls/winex11.drv/xrandr.c b/dlls/winex11.drv/xrandr.c index be262dc9f88..df7368ed8c3 100644 --- a/dlls/winex11.drv/xrandr.c +++ b/dlls/winex11.drv/xrandr.c @@ -44,16 +44,16 @@ static void *xrandr_handle; /* some default values just in case */ #ifndef SONAME_LIBX11 -#define SONAME_LIBX11 "libX11.so" +#define SONAME_LIBX11 "libX11" SONAME_EXT #endif #ifndef SONAME_LIBXEXT -#define SONAME_LIBXEXT "libXext.so" +#define SONAME_LIBXEXT "libXext" SONAME_EXT #endif #ifndef SONAME_LIBXRENDER -#define SONAME_LIBXRENDER "libXrender.so" +#define SONAME_LIBXRENDER "libXrender" SONAME_EXT #endif #ifndef SONAME_LIBXRANDR -#define SONAME_LIBXRANDR "libXrandr.so" +#define SONAME_LIBXRANDR "libXrandr" SONAME_EXT #endif #define MAKE_FUNCPTR(f) static typeof(f) * p##f; diff --git a/dlls/winex11.drv/xrender.c b/dlls/winex11.drv/xrender.c index 1e196a737a8..eafe0e769e4 100644 --- a/dlls/winex11.drv/xrender.c +++ b/dlls/winex11.drv/xrender.c @@ -100,13 +100,13 @@ static int antialias = 1; /* some default values just in case */ #ifndef SONAME_LIBX11 -#define SONAME_LIBX11 "libX11.so" +#define SONAME_LIBX11 "libX11" SONAME_EXT #endif #ifndef SONAME_LIBXEXT -#define SONAME_LIBXEXT "libXext.so" +#define SONAME_LIBXEXT "libXext" SONAME_EXT #endif #ifndef SONAME_LIBXRENDER -#define SONAME_LIBXRENDER "libXrender.so" +#define SONAME_LIBXRENDER "libXrender" SONAME_EXT #endif static void *xrender_handle; diff --git a/dlls/wininet/netconnection.c b/dlls/wininet/netconnection.c index 0a9f7ba3328..1d080803acb 100644 --- a/dlls/wininet/netconnection.c +++ b/dlls/wininet/netconnection.c @@ -73,10 +73,10 @@ WINE_DEFAULT_DEBUG_CHANNEL(wininet); #include #ifndef SONAME_LIBSSL -#define SONAME_LIBSSL "libssl.so" +#define SONAME_LIBSSL "libssl" SONAME_EXT #endif #ifndef SONAME_LIBCRYPTO -#define SONAME_LIBCRYPTO "libcrypto.so" +#define SONAME_LIBCRYPTO "libcrypto" SONAME_EXT #endif static void *OpenSSL_ssl_handle; diff --git a/dlls/winspool.drv/info.c b/dlls/winspool.drv/info.c index 822fde4902c..d379df6bddc 100644 --- a/dlls/winspool.drv/info.c +++ b/dlls/winspool.drv/info.c @@ -39,7 +39,7 @@ #ifdef HAVE_CUPS_CUPS_H # include # ifndef SONAME_LIBCUPS -# define SONAME_LIBCUPS "libcups.so" +# define SONAME_LIBCUPS "libcups" SONAME_EXT # endif #endif diff --git a/include/config.h.in b/include/config.h.in index 09d133c9d4e..dc8b6137954 100644 --- a/include/config.h.in +++ b/include/config.h.in @@ -969,6 +969,9 @@ /* Define to the version of this package. */ #undef PACKAGE_VERSION +/* Define to the file extension of shared libraries. */ +#undef SONAME_EXT + /* Define to the soname of the libcapi20 library. */ #undef SONAME_LIBCAPI20