Commit 446befbb authored by Alexandre Julliard's avatar Alexandre Julliard

configure: Don't use a default soname if a library is not found, leave it undefined.

parent 5a95cfbd
......@@ -35,22 +35,22 @@ dnl
AC_DEFUN([WINE_GET_SONAME],
[AC_REQUIRE([WINE_PATH_LDD])dnl
AS_VAR_PUSHDEF([ac_Lib],[ac_cv_lib_soname_$1])dnl
AC_CACHE_CHECK([for -l$1 soname], ac_Lib,
AC_MSG_CHECKING([for -l$1 soname])
AC_CACHE_VAL(ac_Lib,
[ac_get_soname_save_LIBS=$LIBS
LIBS="-l$1 $3 $LIBS"
AC_LINK_IFELSE([AC_LANG_CALL([], [$2])],
[case "$LIBEXT" in
dylib) AS_VAR_SET(ac_Lib,[`otool -L conftest$ac_exeext | grep lib$1\\.[[0-9A-Za-z.]]*dylib | sed -e "s/^.*\/\(lib$1\.[[0-9A-Za-z.]]*dylib\).*$/\1/"';2,$d'`]) ;;
so) AS_VAR_SET(ac_Lib,[`$ac_cv_path_LDD conftest$ac_exeext | grep lib$1\\.so | sed -e "s/^.*\(lib$1\.so[[^ ]]*\).*$/\1/"';2,$d'`]) ;;
esac
if test "x$ac_Lib" = "x"
then
AS_VAR_SET(ac_Lib,"lib$1.$LIBEXT")
fi],
[AS_VAR_SET(ac_Lib,"lib$1.$LIBEXT")])
LIBS=$ac_get_soname_save_LIBS])
AS_VAR_SET_IF(ac_Lib,[AC_DEFINE_UNQUOTED(AS_TR_CPP(SONAME_LIB$1),["]AS_VAR_GET(ac_Lib)["],
[Define to the soname of the lib$1 library.])])dnl
dll) ;;
dylib) AS_VAR_SET(ac_Lib,[`otool -L conftest$ac_exeext | grep "lib$1\\.[[0-9A-Za-z.]]*dylib" | sed -e "s/^.*\/\(lib$1\.[[0-9A-Za-z.]]*dylib\).*$/\1/"';2,$d'`]) ;;
*) AS_VAR_SET(ac_Lib,[`$ac_cv_path_LDD conftest$ac_exeext | grep "lib$1\\.$LIBEXT" | sed -e "s/^.*\(lib$1\.$LIBEXT[[^ ]]*\).*$/\1/"';2,$d'`]) ;;
esac])
LIBS=$ac_get_soname_save_LIBS])dnl
AS_IF([test "x]AS_VAR_GET(ac_Lib)[" = "x"],
[AC_MSG_RESULT([not found])],
[AC_MSG_RESULT(AS_VAR_GET(ac_Lib))
AC_DEFINE_UNQUOTED(AS_TR_CPP(SONAME_LIB$1),["]AS_VAR_GET(ac_Lib)["],
[Define to the soname of the lib$1 library.])])dnl
AS_VAR_POPDEF([ac_Lib])])
dnl **** Link C code with an assembly file ****
......@@ -148,3 +148,7 @@ dnl Usage: WINE_CONFIG_EXTRA_DIR(dirname)
dnl
AC_DEFUN([WINE_CONFIG_EXTRA_DIR],
[AC_CONFIG_COMMANDS([$1],[test -d "$1" || (AC_MSG_NOTICE([creating $1]) && mkdir "$1")])])
dnl Local Variables:
dnl compile-command: "autoreconf --warnings=all"
dnl End:
......@@ -1096,30 +1096,27 @@ 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])
WINE_GET_SONAME(Xext,XextCreateExtension,[$X_LIBS -lX11 $X_EXTRA_LIBS])
WINE_GET_SONAME(Xi,XOpenDevice,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])
WINE_GET_SONAME(Xinerama,XineramaQueryScreens,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])
WINE_GET_SONAME(Xrender,XRenderQueryExtension,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])
WINE_GET_SONAME(Xrandr,XRRQueryExtension,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])
WINE_GET_SONAME(Xcursor,XcursorImageLoadCursor,[$X_LIBS -lX11 $X_EXTRA_LIBS])
WINE_GET_SONAME(freetype,FT_Init_FreeType,[$X_LIBS])
WINE_GET_SONAME(GL,glXQueryExtension,[$X_LIBS $X_EXTRA_LIBS])
WINE_GET_SONAME(hal,libhal_ctx_new)
WINE_GET_SONAME(txc_dxtn,fetch_2d_texel_rgba_dxt1)
WINE_GET_SONAME(cups,cupsGetDefault)
WINE_GET_SONAME(jack,jack_client_new)
WINE_GET_SONAME(fontconfig,FcInit)
WINE_GET_SONAME(ssl,SSL_library_init)
WINE_GET_SONAME(crypto,BIO_new_socket)
WINE_GET_SONAME(ncurses,waddch)
WINE_GET_SONAME(curses,waddch)
WINE_GET_SONAME(jpeg,jpeg_start_decompress)
WINE_GET_SONAME(capi20,capi20_isinstalled)
WINE_GET_SONAME(sane,sane_init)
fi
WINE_GET_SONAME(X11,XCreateWindow,[$X_LIBS $X_EXTRA_LIBS])
WINE_GET_SONAME(Xext,XextCreateExtension,[$X_LIBS -lX11 $X_EXTRA_LIBS])
WINE_GET_SONAME(Xi,XOpenDevice,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])
WINE_GET_SONAME(Xinerama,XineramaQueryScreens,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])
WINE_GET_SONAME(Xrender,XRenderQueryExtension,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])
WINE_GET_SONAME(Xrandr,XRRQueryExtension,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])
WINE_GET_SONAME(Xcursor,XcursorImageLoadCursor,[$X_LIBS -lX11 $X_EXTRA_LIBS])
WINE_GET_SONAME(freetype,FT_Init_FreeType,[$X_LIBS])
WINE_GET_SONAME(GL,glXQueryExtension,[$X_LIBS $X_EXTRA_LIBS])
WINE_GET_SONAME(hal,libhal_ctx_new)
WINE_GET_SONAME(txc_dxtn,fetch_2d_texel_rgba_dxt1)
WINE_GET_SONAME(cups,cupsGetDefault)
WINE_GET_SONAME(jack,jack_client_new)
WINE_GET_SONAME(fontconfig,FcInit)
WINE_GET_SONAME(ssl,SSL_library_init)
WINE_GET_SONAME(crypto,BIO_new_socket)
WINE_GET_SONAME(ncurses,waddch)
WINE_GET_SONAME(curses,waddch)
WINE_GET_SONAME(jpeg,jpeg_start_decompress)
WINE_GET_SONAME(capi20,capi20_isinstalled)
WINE_GET_SONAME(sane,sane_init)
dnl **** Check for functions ****
......
......@@ -47,6 +47,10 @@ MAKE_FUNCPTR(jpeg_finish_decompress);
MAKE_FUNCPTR(jpeg_destroy_decompress);
#undef MAKE_FUNCPTR
#ifndef SONAME_LIBJPEG
#define SONAME_LIBJPEG "libjpeg" SONAME_EXT
#endif
static void *load_libjpeg(void)
{
if((libjpeg_handle = wine_dlopen(SONAME_LIBJPEG, RTLD_NOW, NULL, 0)) != NULL) {
......
......@@ -73,6 +73,10 @@ static inline int monitor_to_index( HMONITOR handle )
MAKE_FUNCPTR(XineramaQueryExtension);
MAKE_FUNCPTR(XineramaQueryScreens);
#ifndef SONAME_LIBXINERAMA
#define SONAME_LIBXINERAMA "libXinerama" SONAME_EXT
#endif
static void load_xinerama(void)
{
void *handle;
......
......@@ -75,6 +75,10 @@ DBUS_FUNCS;
HAL_FUNCS;
#undef DO_FUNC
#ifndef SONAME_LIBHAL
#define SONAME_LIBHAL "libhal" SONAME_EXT
#endif
static BOOL load_functions(void)
{
void *hal_handle;
......
......@@ -64,8 +64,14 @@ WINE_DEFAULT_DEBUG_CHANNEL(curses);
#ifdef HAVE_NCURSES_H
# define CURSES_NAME "ncurses"
# ifndef SONAME_LIBNCURSES
# define SONAME_LIBNCURSES "libncurses" SONAME_EXT
# endif
#else
# define CURSES_NAME "curses"
# ifndef SONAME_LIBCURSES
# define SONAME_LIBCURSES "libcurses" SONAME_EXT
# endif
#endif
struct inner_data_curse
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment