Alexandre Julliard : configure:
Merge the libXinerama existence check with the soname check.
Alexandre Julliard
julliard at wine.codeweavers.com
Wed Jul 4 06:56:58 CDT 2007
Module: wine
Branch: master
Commit: 35d2fd7a255b5c10de9e24b0f25477176b25c4ce
URL: http://source.winehq.org/git/wine.git/?a=commit;h=35d2fd7a255b5c10de9e24b0f25477176b25c4ce
Author: Alexandre Julliard <julliard at winehq.org>
Date: Wed Jul 4 12:48:50 2007 +0200
configure: Merge the libXinerama existence check with the soname check.
---
configure | 155 +++++++++++++++++++++----------------------
configure.ac | 3 +-
dlls/winex11.drv/xinerama.c | 10 +--
include/config.h.in | 3 -
4 files changed, 79 insertions(+), 92 deletions(-)
diff --git a/configure b/configure
index a1e264f..2216e59 100755
--- a/configure
+++ b/configure
@@ -9633,11 +9633,84 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
+ { echo "$as_me:$LINENO: checking for -lXinerama" >&5
+echo $ECHO_N "checking for -lXinerama... $ECHO_C" >&6; }
+if test "${ac_cv_lib_soname_Xinerama+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_soname_save_LIBS=$LIBS
+LIBS="-lXinerama $X_LIBS -lXext -lX11 $X_EXTRA_LIBS $LIBS"
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_LIBXINERAMA 1
+/* 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 XineramaQueryScreens ();
+int
+main ()
+{
+return XineramaQueryScreens ();
+ ;
+ 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); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ case "$LIBEXT" in
+ dll) ;;
+ dylib) ac_cv_lib_soname_Xinerama=`otool -L conftest$ac_exeext | grep "libXinerama\\.[0-9A-Za-z.]*dylib" | sed -e "s/^.*\/\(libXinerama\.[0-9A-Za-z.]*dylib\).*$/\1/"';2,$d'` ;;
+ *) ac_cv_lib_soname_Xinerama=`$ac_cv_path_LDD conftest$ac_exeext | grep "libXinerama\\.$LIBEXT" | sed -e "s/^.*\(libXinerama\.$LIBEXT[^ ]*\).*$/\1/"';2,$d'` ;;
+ esac
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ LIBS=$ac_check_soname_save_LIBS
+fi
+if test "x$ac_cv_lib_soname_Xinerama" = "x"; then
+ { echo "$as_me:$LINENO: result: not found" >&5
+echo "${ECHO_T}not found" >&6; }
+
+else
+ { echo "$as_me:$LINENO: result: $ac_cv_lib_soname_Xinerama" >&5
+echo "${ECHO_T}$ac_cv_lib_soname_Xinerama" >&6; }
+
+cat >>confdefs.h <<_ACEOF
+#define SONAME_LIBXINERAMA "$ac_cv_lib_soname_Xinerama"
_ACEOF
+
+fi
+
else
echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
@@ -15262,84 +15335,6 @@ _ACEOF
fi
-{ echo "$as_me:$LINENO: checking for -lXinerama" >&5
-echo $ECHO_N "checking for -lXinerama... $ECHO_C" >&6; }
-if test "${ac_cv_lib_soname_Xinerama+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_check_soname_save_LIBS=$LIBS
-LIBS="-lXinerama $X_LIBS -lXext -lX11 $X_EXTRA_LIBS $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 XineramaQueryScreens ();
-int
-main ()
-{
-return XineramaQueryScreens ();
- ;
- 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); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
- case "$LIBEXT" in
- dll) ;;
- dylib) ac_cv_lib_soname_Xinerama=`otool -L conftest$ac_exeext | grep "libXinerama\\.[0-9A-Za-z.]*dylib" | sed -e "s/^.*\/\(libXinerama\.[0-9A-Za-z.]*dylib\).*$/\1/"';2,$d'` ;;
- *) ac_cv_lib_soname_Xinerama=`$ac_cv_path_LDD conftest$ac_exeext | grep "libXinerama\\.$LIBEXT" | sed -e "s/^.*\(libXinerama\.$LIBEXT[^ ]*\).*$/\1/"';2,$d'` ;;
- esac
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_soname_save_LIBS
-fi
-if test "x$ac_cv_lib_soname_Xinerama" = "x"; then
- { echo "$as_me:$LINENO: result: not found" >&5
-echo "${ECHO_T}not found" >&6; }
-
-else
- { echo "$as_me:$LINENO: result: $ac_cv_lib_soname_Xinerama" >&5
-echo "${ECHO_T}$ac_cv_lib_soname_Xinerama" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define SONAME_LIBXINERAMA "$ac_cv_lib_soname_Xinerama"
-_ACEOF
-
-
-fi
-
{ echo "$as_me:$LINENO: checking for -lXcursor" >&5
echo $ECHO_N "checking for -lXcursor... $ECHO_C" >&6; }
if test "${ac_cv_lib_soname_Xcursor+set}" = set; then
diff --git a/configure.ac b/configure.ac
index 3e7c97b..7e0b73e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -558,7 +558,7 @@ then
then
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <X11/Xlib.h>
#include <X11/extensions/Xinerama.h>]], [[static typeof(XineramaQueryScreens) * func;]])],
- [AC_DEFINE(HAVE_LIBXINERAMA, 1, [Define if you have the Xinerama library])],[])
+ [WINE_CHECK_SONAME(Xinerama,XineramaQueryScreens,,,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])])
fi
dnl *** End of X11/Xlib.h check
@@ -1148,7 +1148,6 @@ AC_DEFINE_UNQUOTED(SONAME_EXT,[".$LIBEXT"],[Define to the file extension of shar
WINE_CHECK_SONAME(X11,XCreateWindow,,,[$X_LIBS $X_EXTRA_LIBS])
WINE_CHECK_SONAME(Xext,XextCreateExtension,,,[$X_LIBS -lX11 $X_EXTRA_LIBS])
WINE_CHECK_SONAME(Xi,XOpenDevice,,,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])
-WINE_CHECK_SONAME(Xinerama,XineramaQueryScreens,,,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])
WINE_CHECK_SONAME(Xcursor,XcursorImageLoadCursor,,,[$X_LIBS -lX11 $X_EXTRA_LIBS])
WINE_CHECK_SONAME(freetype,FT_Init_FreeType,,,[$X_LIBS])
WINE_CHECK_SONAME(txc_dxtn,fetch_2d_texel_rgba_dxt1)
diff --git a/dlls/winex11.drv/xinerama.c b/dlls/winex11.drv/xinerama.c
index be04c21..75b905a 100644
--- a/dlls/winex11.drv/xinerama.c
+++ b/dlls/winex11.drv/xinerama.c
@@ -66,17 +66,13 @@ static inline int monitor_to_index( HMONITOR handle )
}
-#ifdef HAVE_LIBXINERAMA
+#ifdef SONAME_LIBXINERAMA
#define MAKE_FUNCPTR(f) static typeof(f) * p##f
MAKE_FUNCPTR(XineramaQueryExtension);
MAKE_FUNCPTR(XineramaQueryScreens);
-#ifndef SONAME_LIBXINERAMA
-#define SONAME_LIBXINERAMA "libXinerama" SONAME_EXT
-#endif
-
static void load_xinerama(void)
{
void *handle;
@@ -129,14 +125,14 @@ static int query_screens(void)
return count;
}
-#else /* HAVE_LIBXINERAMA */
+#else /* SONAME_LIBXINERAMA */
static inline int query_screens(void)
{
return 0;
}
-#endif /* HAVE_LIBXINERAMA */
+#endif /* SONAME_LIBXINERAMA */
void xinerama_init(void)
{
diff --git a/include/config.h.in b/include/config.h.in
index 18c17a0..0aed6ea 100644
--- a/include/config.h.in
+++ b/include/config.h.in
@@ -300,9 +300,6 @@
/* Define to 1 if you have the `ossaudio' library (-lossaudio). */
#undef HAVE_LIBOSSAUDIO
-/* Define if you have the Xinerama library */
-#undef HAVE_LIBXINERAMA
-
/* Define if you have the libxml2 library */
#undef HAVE_LIBXML2
More information about the wine-cvs
mailing list