mirror of
https://github.com/reactos/wine.git
synced 2024-11-25 12:49:45 +00:00
explorer: Work around the latest HAL binary compatibility breakage.
This commit is contained in:
parent
3863939168
commit
9ae4e8d98e
92
configure
vendored
92
configure
vendored
@ -17051,98 +17051,6 @@ cat >>confdefs.h <<_ACEOF
|
||||
#define SONAME_LIBGL "$ac_cv_lib_soname_GL"
|
||||
_ACEOF
|
||||
|
||||
fi
|
||||
|
||||
{ echo "$as_me:$LINENO: checking for -ldbus-1 soname" >&5
|
||||
echo $ECHO_N "checking for -ldbus-1 soname... $ECHO_C" >&6; }
|
||||
if test "${ac_cv_lib_soname_dbus_1+set}" = set; then
|
||||
echo $ECHO_N "(cached) $ECHO_C" >&6
|
||||
else
|
||||
ac_get_soname_save_LIBS=$LIBS
|
||||
LIBS="-ldbus-1 $LIBS"
|
||||
cat >conftest.$ac_ext <<_ACEOF
|
||||
/* confdefs.h. */
|
||||
_ACEOF
|
||||
cat confdefs.h >>conftest.$ac_ext
|
||||
cat >>conftest.$ac_ext <<_ACEOF
|
||||
/* end confdefs.h. */
|
||||
|
||||
/* Override any GCC internal prototype to avoid an error.
|
||||
Use char because int might match the return type of a GCC
|
||||
builtin and then its argument prototype would still apply. */
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
#endif
|
||||
char dbus_error_init ();
|
||||
int
|
||||
main ()
|
||||
{
|
||||
return dbus_error_init ();
|
||||
;
|
||||
return 0;
|
||||
}
|
||||
_ACEOF
|
||||
rm -f conftest.$ac_objext conftest$ac_exeext
|
||||
if { (ac_try="$ac_link"
|
||||
case "(($ac_try" in
|
||||
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
|
||||
*) ac_try_echo=$ac_try;;
|
||||
esac
|
||||
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
|
||||
(eval "$ac_link") 2>conftest.er1
|
||||
ac_status=$?
|
||||
grep -v '^ *+' conftest.er1 >conftest.err
|
||||
rm -f conftest.er1
|
||||
cat conftest.err >&5
|
||||
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); } &&
|
||||
{ ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
|
||||
{ (case "(($ac_try" in
|
||||
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
|
||||
*) ac_try_echo=$ac_try;;
|
||||
esac
|
||||
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
|
||||
(eval "$ac_try") 2>&5
|
||||
ac_status=$?
|
||||
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); }; } &&
|
||||
{ ac_try='test -s conftest$ac_exeext'
|
||||
{ (case "(($ac_try" in
|
||||
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
|
||||
*) ac_try_echo=$ac_try;;
|
||||
esac
|
||||
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
|
||||
(eval "$ac_try") 2>&5
|
||||
ac_status=$?
|
||||
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); }; }; then
|
||||
case "$LIBEXT" in
|
||||
dylib) ac_cv_lib_soname_dbus_1=`otool -L conftest$ac_exeext | grep libdbus-1\\.[0-9A-Za-z.]*dylib | sed -e "s/^.*\/\(libdbus-1\.[0-9A-Za-z.]*dylib\).*$/\1/"';2,$d'` ;;
|
||||
so) ac_cv_lib_soname_dbus_1=`$ac_cv_path_LDD conftest$ac_exeext | grep libdbus-1\\.so | sed -e "s/^.*\(libdbus-1\.so[^ ]*\).*$/\1/"';2,$d'` ;;
|
||||
esac
|
||||
if test "x$ac_cv_lib_soname_dbus_1" = "x"
|
||||
then
|
||||
ac_cv_lib_soname_dbus_1="libdbus-1.$LIBEXT"
|
||||
fi
|
||||
else
|
||||
echo "$as_me: failed program was:" >&5
|
||||
sed 's/^/| /' conftest.$ac_ext >&5
|
||||
|
||||
ac_cv_lib_soname_dbus_1="libdbus-1.$LIBEXT"
|
||||
fi
|
||||
|
||||
rm -f core conftest.err conftest.$ac_objext \
|
||||
conftest$ac_exeext conftest.$ac_ext
|
||||
LIBS=$ac_get_soname_save_LIBS
|
||||
fi
|
||||
{ echo "$as_me:$LINENO: result: $ac_cv_lib_soname_dbus_1" >&5
|
||||
echo "${ECHO_T}$ac_cv_lib_soname_dbus_1" >&6; }
|
||||
if test "${ac_cv_lib_soname_dbus_1+set}" = set; then
|
||||
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
#define SONAME_LIBDBUS_1 "$ac_cv_lib_soname_dbus_1"
|
||||
_ACEOF
|
||||
|
||||
fi
|
||||
|
||||
{ echo "$as_me:$LINENO: checking for -lhal soname" >&5
|
||||
|
@ -1137,7 +1137,6 @@ then
|
||||
WINE_GET_SONAME(Xrandr,XRRQueryExtension,[$X_LIBS -lXext -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(dbus-1,dbus_error_init)
|
||||
WINE_GET_SONAME(hal,libhal_ctx_new)
|
||||
WINE_GET_SONAME(txc_dxtn,fetch_2d_texel_rgba_dxt1)
|
||||
WINE_GET_SONAME(cups,cupsGetDefault)
|
||||
|
@ -977,9 +977,6 @@
|
||||
/* Define to the soname of the libcurses library. */
|
||||
#undef SONAME_LIBCURSES
|
||||
|
||||
/* Define to the soname of the libdbus-1 library. */
|
||||
#undef SONAME_LIBDBUS_1
|
||||
|
||||
/* Define to the soname of the libfontconfig library. */
|
||||
#undef SONAME_LIBFONTCONFIG
|
||||
|
||||
|
@ -88,13 +88,17 @@ HAL_FUNCS;
|
||||
|
||||
static BOOL load_functions(void)
|
||||
{
|
||||
void *dbus_handle, *hal_handle;
|
||||
void *hal_handle;
|
||||
char error[128];
|
||||
|
||||
if (!(dbus_handle = wine_dlopen(SONAME_LIBDBUS_1, RTLD_NOW, error, sizeof(error)))) goto failed;
|
||||
if (!(hal_handle = wine_dlopen(SONAME_LIBHAL, RTLD_NOW, error, sizeof(error)))) goto failed;
|
||||
/* Load libhal with RTLD_GLOBAL so that the dbus symbols are available.
|
||||
* We can't load libdbus directly since libhal may have been built against a
|
||||
* different version but with the same soname. Binary compatibility is for wimps. */
|
||||
|
||||
#define DO_FUNC(f) if (!(p_##f = wine_dlsym( dbus_handle, #f, error, sizeof(error) ))) goto failed
|
||||
if (!(hal_handle = wine_dlopen(SONAME_LIBHAL, RTLD_NOW|RTLD_GLOBAL, error, sizeof(error))))
|
||||
goto failed;
|
||||
|
||||
#define DO_FUNC(f) if (!(p_##f = wine_dlsym( RTLD_DEFAULT, #f, error, sizeof(error) ))) goto failed
|
||||
DBUS_FUNCS;
|
||||
#undef DO_FUNC
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user