Skip to content
This repository has been archived by the owner on Feb 11, 2021. It is now read-only.

Commit

Permalink
Browse files Browse the repository at this point in the history
Updated the generic event check to try to compile instead of just loo…
…k for library runtime function (fixes compiling on older Mac OS X SDKs)
  • Loading branch information
slouken committed Jul 18, 2012
1 parent 865f3cc commit 177e0cd
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 37 deletions.
66 changes: 30 additions & 36 deletions configure
Expand Up @@ -22226,43 +22226,41 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
{ echo "$as_me:$LINENO: result: $have_const_param_XextAddDisplay" >&5
echo "${ECHO_T}$have_const_param_XextAddDisplay" >&6; }

{ echo "$as_me:$LINENO: checking for XGetEventData in -lX11" >&5
echo $ECHO_N "checking for XGetEventData in -lX11... $ECHO_C" >&6; }
if test "${ac_cv_lib_X11_XGetEventData+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lX11 $LIBS"
cat >conftest.$ac_ext <<_ACEOF
{ echo "$as_me:$LINENO: checking for XGenericEvent" >&5
echo $ECHO_N "checking for XGenericEvent... $ECHO_C" >&6; }
have_XGenericEvent=no
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 XGetEventData ();
#include <X11/Xlib.h>

int
main ()
{
return XGetEventData ();

Display *display;
XEvent event;
XGenericEventCookie *cookie = &event.xcookie;
XNextEvent(display, &event);
XGetEventData(display, cookie);
XFreeEventData(display, cookie);

;
return 0;
}
_ACEOF
rm -f conftest.$ac_objext conftest$ac_exeext
if { (ac_try="$ac_link"
rm -f conftest.$ac_objext
if { (ac_try="$ac_compile"
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
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
Expand All @@ -22271,29 +22269,24 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&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
ac_cv_lib_X11_XGetEventData=yes
} && test -s conftest.$ac_objext; then

have_XGenericEvent=yes
cat >>confdefs.h <<\_ACEOF
#define SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS 1
_ACEOF


else
echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5

ac_cv_lib_X11_XGetEventData=no
fi

rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ echo "$as_me:$LINENO: result: $ac_cv_lib_X11_XGetEventData" >&5
echo "${ECHO_T}$ac_cv_lib_X11_XGetEventData" >&6; }
if test $ac_cv_lib_X11_XGetEventData = yes; then

cat >>confdefs.h <<\_ACEOF
#define SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS 1
_ACEOF

fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
{ echo "$as_me:$LINENO: result: $have_XGenericEvent" >&5
echo "${ECHO_T}$have_XGenericEvent" >&6; }

{ echo "$as_me:$LINENO: checking for XkbKeycodeToKeysym in -lX11" >&5
echo $ECHO_N "checking for XkbKeycodeToKeysym in -lX11... $ECHO_C" >&6; }
Expand Down Expand Up @@ -22831,6 +22824,7 @@ cat >>conftest.$ac_ext <<_ACEOF
int
main ()
{

int event_type = XI_TouchBegin;
XITouchClassInfo *t;
Status
Expand Down Expand Up @@ -29773,7 +29767,7 @@ do
cat >>$CONFIG_STATUS <<_ACEOF
# First, check the format of the line:
cat >"\$tmp/defines.sed" <<\\CEOF
/^[ ]*#[ ]*undef[ ][ ]*$ac_word_re[ ]*/b def
/^[ ]*#[ ]*undef[ ][ ]*$ac_word_re[ ]*\$/b def
/^[ ]*#[ ]*define[ ][ ]*$ac_word_re[( ]/b def
b
:def
Expand Down
19 changes: 18 additions & 1 deletion configure.in
Expand Up @@ -1106,7 +1106,24 @@ AC_HELP_STRING([--enable-x11-shared], [dynamically load X11 support [[default=ma
])
AC_MSG_RESULT($have_const_param_XextAddDisplay)

AC_CHECK_LIB(X11, XGetEventData, AC_DEFINE(SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS, 1, [Have XGenericEvent]))
dnl AC_CHECK_LIB(X11, XGetEventData, AC_DEFINE(SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS, 1, [Have XGenericEvent]))
AC_MSG_CHECKING([for XGenericEvent])
have_XGenericEvent=no
AC_TRY_COMPILE([
#include <X11/Xlib.h>
],[
Display *display;
XEvent event;
XGenericEventCookie *cookie = &event.xcookie;
XNextEvent(display, &event);
XGetEventData(display, cookie);
XFreeEventData(display, cookie);
],[
have_XGenericEvent=yes
AC_DEFINE(SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS)
])
AC_MSG_RESULT($have_XGenericEvent)

AC_CHECK_LIB(X11, XkbKeycodeToKeysym, AC_DEFINE(SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM, 1, [Have XkbKeycodeToKeysym]))

AC_ARG_ENABLE(video-x11-xcursor,
Expand Down

0 comments on commit 177e0cd

Please sign in to comment.