Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 383661 - [PATCH] xcb-util-wm header uses C++ keywords
Summary: [PATCH] xcb-util-wm header uses C++ keywords
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: All Linux
: Normal enhancement
Assignee: Gentoo X packagers
URL:
Whiteboard:
Keywords: PATCH
: 383677 (view as bug list)
Depends on:
Blocks:
 
Reported: 2011-09-19 17:26 UTC by Sean Harmer
Modified: 2012-08-11 17:02 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Patch with upstream fix (0001-Replacing-c-class-keyword-in-interface-header.patch,1.30 KB, patch)
2011-09-19 17:27 UTC, Sean Harmer
Details | Diff
Ebuild to apply patch (xcb-util-wm-0.3.8-r1.ebuild,1.02 KB, text/plain)
2011-09-19 17:27 UTC, Sean Harmer
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Sean Harmer 2011-09-19 17:26:11 UTC
The header xcb_icccm.h in the x11-libs/xcb-util-wm package uses C++ keywrods as variable names. This prevents this lib being used in a C++ application. In my case I am trying to build Qt5 from git.

This is already fixed in the upstream git repo but until the next version is released I have extracted the appropriate commit as a patch and made a simple mod to the ebuild that applies it. The resulting package can now be used in C++ applications.

Reproducible: Always

Steps to Reproduce:
1. emerge x11-libs/xcb-util-wm
2. Try to build qtbase modules ofrm Qt5 git repo
Actual Results:  
cd xcb/ && make -f Makefile 
make[4]: Entering directory `/home/sean_harmer/development/qt5/qtbase/src/plugins/platforms/xcb'
g++ -c -m64 -pipe -g -fvisibility=hidden -fvisibility-inlines-hidden -D_REENTRANT -Wall -W -fPIC -DQT_NO_CORESERVICES -DXCB_USE_XLIB -DXCB_USE_RENDER -DXCB_USE_GLX -DXCB_USE_IBUS -DQ_FONTCONFIGDATABASE -DQT_COMPILES_IN_HARFBUZZ -DQT_PLUGIN -DQT_DBUS_LIB -DQT_GUI_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_HAVE_SSE3 -DQT_HAVE_SSSE3 -DQT_HAVE_SSE4_1 -DQT_HAVE_SSE4_2 -DQT_HAVE_AVX -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_SHARED -I../../../../mkspecs/linux-g++-64 -I. -I../../../../include/QtCore -I../../../../include/QtCore/5.0.0 -I../../../../include/QtCore/5.0.0/QtCore -I../../../../include/QtGui/5.0.0 -I../../../../include/QtGui/5.0.0/QtGui -I../../../../include/QtGui -I../../../../include/QtPlatformSupport/5.0.0 -I../../../../include/QtPlatformSupport/5.0.0/QtPlatformSupport -I../../../../include/QtPlatformSupport -I../../../../include/QtDBus -I../../../../include -I../../../../include/QtXml -I/usr/X11R6/include -I.moc/debug-shared -o .obj/debug-shared/qxcbclipboard.o qxcbclipboard.cpp
In file included from qxcbclipboard.cpp:53:
/usr/include/xcb/xcb_icccm.h:395: error: expected ‘,’ or ‘...’ before ‘class’
/usr/include/xcb/xcb_icccm.h:403: error: expected ‘,’ or ‘...’ before ‘class’

Expected Results:  
Compilation of C++ file using xcb_icccm.h works.

Fixed in upstream git repo (git clone --recursive git://anongit.freedesktop.org/git/xcb/util-wm) in e08332c4a61f9825fc8893025ffa8f89d67a8900
Comment 1 Sean Harmer 2011-09-19 17:27:06 UTC
Created attachment 287023 [details, diff]
Patch with upstream fix
Comment 2 Sean Harmer 2011-09-19 17:27:49 UTC
Created attachment 287025 [details]
Ebuild to apply patch
Comment 3 Matt Turner gentoo-dev 2012-08-11 17:00:14 UTC
*** Bug 383677 has been marked as a duplicate of this bug. ***
Comment 4 Matt Turner gentoo-dev 2012-08-11 17:00:58 UTC
xcb-util-wm-0.3.9 fixes this.