winex11.drv: Fix Solaris build error.

Solaris doesn't define XICCallback.
This commit is contained in:
Kusanagi Kouichi 2008-04-16 00:34:54 +09:00 committed by Alexandre Julliard
parent 6165d87fc5
commit 75e40229d2
4 changed files with 129 additions and 9 deletions

109
configure vendored
View File

@ -10686,6 +10686,115 @@ esac
fi
{ echo "$as_me:$LINENO: checking for XICCallback.callback" >&5
echo $ECHO_N "checking for XICCallback.callback... $ECHO_C" >&6; }
if test "${ac_cv_member_XICCallback_callback+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
#ifdef HAVE_X11_XLIB_H
#include <X11/Xlib.h>
#endif
int
main ()
{
static XICCallback ac_aggr;
if (ac_aggr.callback)
return 0;
;
return 0;
}
_ACEOF
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_compile") 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_objext; then
ac_cv_member_XICCallback_callback=yes
else
echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
#ifdef HAVE_X11_XLIB_H
#include <X11/Xlib.h>
#endif
int
main ()
{
static XICCallback ac_aggr;
if (sizeof ac_aggr.callback)
return 0;
;
return 0;
}
_ACEOF
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_compile") 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_objext; then
ac_cv_member_XICCallback_callback=yes
else
echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_member_XICCallback_callback=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
{ echo "$as_me:$LINENO: result: $ac_cv_member_XICCallback_callback" >&5
echo "${ECHO_T}$ac_cv_member_XICCallback_callback" >&6; }
if test $ac_cv_member_XICCallback_callback = yes; then
cat >>confdefs.h <<_ACEOF
#define HAVE_XICCALLBACK_CALLBACK 1
_ACEOF
fi
opengl_msg=""
if test "x$with_opengl" != "xno"

View File

@ -698,6 +698,12 @@ then
WINE_NOTICE_WITH(xcomposite,[test "x$ac_cv_lib_soname_Xcomposite" = "x"],
[libxcomposite development files not found, Xcomposite won't be supported.])
dnl *** Check for XICCallback struct
AC_CHECK_MEMBERS([XICCallback.callback],,,
[#ifdef HAVE_X11_XLIB_H
#include <X11/Xlib.h>
#endif])
dnl *** End of X11/Xlib.h check
dnl Check for the presence of OpenGL

View File

@ -35,6 +35,11 @@
WINE_DEFAULT_DEBUG_CHANNEL(x11drv);
#ifndef HAVE_XICCALLBACK_CALLBACK
#define XICCallback XIMCallback
#define XICProc XIMProc
#endif
BOOL ximInComposeMode=FALSE;
/* moved here from imm32 for dll separation */
@ -501,11 +506,8 @@ XIC X11DRV_CreateIC(XIM xim, struct x11drv_win_data *data)
XVaNestedList preedit = NULL;
XVaNestedList status = NULL;
XIC xic;
XICCallback destroy = {(XPointer)data, X11DRV_DestroyIC};
XIMCallback P_StartCB;
XIMCallback P_DoneCB;
XIMCallback P_DrawCB;
XIMCallback P_CaretCB;
XICCallback destroy = {(XPointer)data, (XICProc)X11DRV_DestroyIC};
XICCallback P_StartCB, P_DoneCB, P_DrawCB, P_CaretCB;
LANGID langid = PRIMARYLANGID(LANGIDFROMLCID(GetThreadLocale()));
Window win = data->whole_window;
@ -531,13 +533,13 @@ XIC X11DRV_CreateIC(XIM xim, struct x11drv_win_data *data)
/* create callbacks */
P_StartCB.client_data = NULL;
P_StartCB.callback = (XIMProc)XIMPreEditStartCallback;
P_DoneCB.client_data = NULL;
P_DoneCB.callback = (XIMProc)XIMPreEditDoneCallback;
P_DrawCB.client_data = NULL;
P_DrawCB.callback = (XIMProc)XIMPreEditDrawCallback;
P_CaretCB.client_data = NULL;
P_CaretCB.callback = (XIMProc)XIMPreEditCaretCallback;
P_StartCB.callback = (XICProc)XIMPreEditStartCallback;
P_DoneCB.callback = (XICProc)XIMPreEditDoneCallback;
P_DrawCB.callback = (XICProc)XIMPreEditDrawCallback;
P_CaretCB.callback = (XICProc)XIMPreEditCaretCallback;
if ((ximStyle & (XIMPreeditNothing | XIMPreeditNone)) == 0)
{

View File

@ -945,6 +945,9 @@
/* Define to 1 if you have the <X11/Xutil.h> header file. */
#undef HAVE_X11_XUTIL_H
/* Define to 1 if `callback' is member of `XICCallback'. */
#undef HAVE_XICCALLBACK_CALLBACK
/* Define if you have the XKB extension */
#undef HAVE_XKB