[Xcb-commit] src

Julien Danjou jdanjou at kemper.freedesktop.org
Tue Sep 9 06:01:23 PDT 2008


 src/c_client.py |   12 ++++++++++++
 1 file changed, 12 insertions(+)

New commits:
commit 9afadd2aef8af89a4f4ab70baeae0b848904c367
Author: Carsten Meier <cm at trexity.de>
Date:   Tue Sep 9 12:11:37 2008 +0200

    Added generation of extern "C" for compatibility with C++
    
    The auto-generated header files now include an extern "C"
    declaration for compatibility with C++.
    
    Signed-off-by: Julien Danjou <julien at danjou.info>

diff --git a/src/c_client.py b/src/c_client.py
index d634c27..99fe114 100755
--- a/src/c_client.py
+++ b/src/c_client.py
@@ -176,6 +176,12 @@ def c_open(self):
         for (n, h) in self.imports:
             _hc('#include "%s.h"', h)
 
+    _h('')
+    _h('#ifdef __cplusplus')
+    _h('extern "C" {')
+    _h('#endif')
+
+    if _ns.is_ext:
         _h('')
         _h('#define XCB_%s_MAJOR_VERSION %s', _ns.ext_name.upper(), _ns.major_version)
         _h('#define XCB_%s_MINOR_VERSION %s', _ns.ext_name.upper(), _ns.minor_version)
@@ -193,6 +199,12 @@ def c_close(self):
     _h_setlevel(2)
     _c_setlevel(2)
     _hc('')
+
+    _h('')
+    _h('#ifdef __cplusplus')
+    _h('}')
+    _h('#endif')
+
     _h('')
     _h('#endif')
     _h('')


More information about the xcb-commit mailing list