Create a wrapper file for X11/XKBlib.h header.

We need some hacks for the older systems before including this header, extract
them from src/x11/utilsx.cpp into a new private header to be able to reuse it
from wxGTK in the next commit.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71372 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 2012-05-07 13:12:20 +00:00
parent 319ff5745e
commit 814028444d
4 changed files with 34 additions and 11 deletions

View File

@ -37221,6 +37221,8 @@ GTK_DIST: UNIV_DIST
X11_DIST: UNIV_DIST
$(CP_P) $(WXDIR)/wxX11.spec $(DISTDIR)
$(CP_P) $(INCDIR)/wx/x11/*.h $(DISTDIR)/include/wx/x11
mkdir $(DISTDIR)/include/wx/x11/private
$(CP_P) $(INCDIR)/wx/x11/private/*.h $(DISTDIR)/include/wx/x11/private
mkdir $(DISTDIR)/include/wx/gtk/private
$(CP_P) $(INCDIR)/wx/gtk/private/string.h $(DISTDIR)/include/wx/gtk/private
$(CP_P) $(X11DIR)/*.cpp $(DISTDIR)/src/x11
@ -37250,6 +37252,8 @@ MOTIF_DIST: ALL_GUI_DIST
$(CP_P) $(X11INC)/pen.h $(X11INC)/brush.h $(X11INC)/privx.h \
$(X11INC)/bitmap.h $(X11INC)/glcanvas.h $(X11INC)/private.h $(X11INC)/region.h \
$(DISTDIR)/include/wx/x11
mkdir $(DISTDIR)/include/wx/x11/private
$(CP_P) $(INCDIR)/wx/x11/private/*.h $(DISTDIR)/include/wx/x11/private
OSX_CARBON_DIST: ALL_GUI_DIST
$(CP_P) $(INCDIR)/*.* $(DISTDIR)/include

View File

@ -371,6 +371,8 @@ GTK_DIST: UNIV_DIST
X11_DIST: UNIV_DIST
$(CP_P) $(WXDIR)/wxX11.spec $(DISTDIR)
$(CP_P) $(INCDIR)/wx/x11/*.h $(DISTDIR)/include/wx/x11
mkdir $(DISTDIR)/include/wx/x11/private
$(CP_P) $(INCDIR)/wx/x11/private/*.h $(DISTDIR)/include/wx/x11/private
mkdir $(DISTDIR)/include/wx/gtk/private
$(CP_P) $(INCDIR)/wx/gtk/private/string.h $(DISTDIR)/include/wx/gtk/private
$(CP_P) $(X11DIR)/*.cpp $(DISTDIR)/src/x11
@ -400,6 +402,8 @@ MOTIF_DIST: ALL_GUI_DIST
$(CP_P) $(X11INC)/pen.h $(X11INC)/brush.h $(X11INC)/privx.h \
$(X11INC)/bitmap.h $(X11INC)/glcanvas.h $(X11INC)/private.h $(X11INC)/region.h \
$(DISTDIR)/include/wx/x11
mkdir $(DISTDIR)/include/wx/x11/private
$(CP_P) $(INCDIR)/wx/x11/private/*.h $(DISTDIR)/include/wx/x11/private
OSX_CARBON_DIST: ALL_GUI_DIST
$(CP_P) $(INCDIR)/*.* $(DISTDIR)/include

View File

@ -0,0 +1,25 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/x11/private/wrapxkb.h
// Purpose: Private header wrapping X11/XKBlib.h inclusion.
// Author: Vadim Zeitlin
// Created: 2012-05-07
// RCS-ID: $Id: wxhead.h,v 1.12 2010-04-22 12:44:51 zeitlin Exp $
// Copyright: (c) 2012 Vadim Zeitlin <vadim@wxwidgets.org>
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _X11_PRIVATE_WRAPXKB_H_
#define _X11_PRIVATE_WRAPXKB_H_
#ifdef HAVE_X11_XKBLIB_H
/* under HP-UX and Solaris 2.6, at least, XKBlib.h defines structures with
* field named "explicit" - which is, of course, an error for a C++
* compiler. To be on the safe side, just redefine it everywhere. */
#define explicit __wx_explicit
#include <X11/XKBlib.h>
#undef explicit
#endif // HAVE_X11_XKBLIB_H
#endif // _X11_PRIVATE_WRAPXKB_H_

View File

@ -35,17 +35,7 @@
#include "wx/dcmemory.h"
#endif
#ifdef HAVE_X11_XKBLIB_H
/* under HP-UX and Solaris 2.6, at least, XKBlib.h defines structures with
* field named "explicit" - which is, of course, an error for a C++
* compiler. To be on the safe side, just redefine it everywhere. */
#define explicit __wx_explicit
#include "X11/XKBlib.h"
#undef explicit
#endif // HAVE_X11_XKBLIB_H
#include "wx/x11/private/wrapxkb.h"
// ----------------------------------------------------------------------------
// XShape code