aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libxcb/src/c_client.py1
-rw-r--r--libxcb/src/makefile171
2 files changed, 106 insertions, 66 deletions
diff --git a/libxcb/src/c_client.py b/libxcb/src/c_client.py
index d86d05e24..c3fa2eff1 100644
--- a/libxcb/src/c_client.py
+++ b/libxcb/src/c_client.py
@@ -162,6 +162,7 @@ def c_open(self):
_c('#include <assert.h>')
_c('#include "xcbext.h"')
_c('#include "%s.h"', _ns.header)
+ _c('#include <X11/Xtrans/Xtrans.h>')
if _ns.is_ext:
for (n, h) in self.imports:
diff --git a/libxcb/src/makefile b/libxcb/src/makefile
index 3716a1356..fe7b3410e 100644
--- a/libxcb/src/makefile
+++ b/libxcb/src/makefile
@@ -1,75 +1,114 @@
-CSRCS = xproto.c \
- bigreq.c \
- composite.c \
- damage.c \
- dpms.c \
- glx.c \
- randr.c \
- record.c \
- render.c \
- res.c \
- screensaver.c \
- shape.c \
- shm.c \
- sync.c \
- xc_misc.c \
- xevie.c \
- xf86dri.c \
- xfixes.c \
- xinerama.c \
- xprint.c \
- xtest.c \
- xv.c \
- xvmc.c
-
-EXTENSION_XML = xproto.xml \
- bigreq.xml \
- composite.xml \
- damage.xml \
- dpms.xml \
- glx.xml \
- randr.xml \
- record.xml \
- render.xml \
- res.xml \
- screensaver.xml \
- shape.xml \
- shm.xml \
- sync.xml \
- xc_misc.xml \
- xevie.xml \
- xf86dri.xml \
- xfixes.xml \
- xinerama.xml \
- xprint.xml \
- xtest.xml \
- xvmc.xml \
- xv.xml
+XCBPROTO_XCBPYTHONDIR = ..\xcb-proto
+XCBPROTO_XCBINCLUDEDIR = ..\xcb-proto\src
LIBRARY=libxcb
CSRCS = \
xcb_conn.c xcb_out.c xcb_in.c xcb_ext.c xcb_xid.c \
- xcb_list.c xcb_util.c xcb_auth.c xcb_xlib.c \
+ xcb_list.c xcb_util.c xcb_auth.c \
xproto.c bigreq.c xc_misc.c
-# c-client.xsl \
-#CSRCS = xproto.c
+
+# FIXME: find a way to autogenerate this from the XML files.
+
+EXTHEADERS += composite.h
+EXTSOURCES += composite.c
+EXTENSION_XML += composite.xml
+
+EXTHEADERS += damage.h
+EXTSOURCES += damage.c
+EXTENSION_XML += damage.xml
+
+EXTHEADERS += dpms.h
+EXTSOURCES += dpms.c
+EXTENSION_XML += dpms.xml
+
+EXTHEADERS += glx.h
+EXTSOURCES += glx.c
+EXTENSION_XML += glx.xml
+
+EXTHEADERS += randr.h
+EXTSOURCES += randr.c
+EXTENSION_XML += randr.xml
+
+EXTHEADERS += record.h
+EXTSOURCES += record.c
+EXTENSION_XML += record.xml
+
+EXTHEADERS += render.h
+EXTSOURCES += render.c
+EXTENSION_XML += render.xml
+
+EXTHEADERS += res.h
+EXTSOURCES += res.c
+EXTENSION_XML += res.xml
+
+EXTHEADERS += screensaver.h
+EXTSOURCES += screensaver.c
+EXTENSION_XML += screensaver.xml
+
+EXTHEADERS += shape.h
+EXTSOURCES += shape.c
+EXTENSION_XML += shape.xml
+
+EXTHEADERS += shm.h
+EXTSOURCES += shm.c
+EXTENSION_XML += shm.xml
+
+EXTHEADERS += sync.h
+EXTSOURCES += sync.c
+EXTENSION_XML += sync.xml
+
+EXTHEADERS += xevie.h
+EXTSOURCES += xevie.c
+EXTENSION_XML += xevie.xml
+
+EXTHEADERS += xf86dri.h
+EXTSOURCES += xf86dri.c
+EXTENSION_XML += xf86dri.xml
+
+EXTHEADERS += xfixes.h
+EXTSOURCES += xfixes.c
+EXTENSION_XML += xfixes.xml
+
+EXTHEADERS += xinerama.h
+EXTSOURCES += xinerama.c
+EXTENSION_XML += xinerama.xml
+
+EXTHEADERS += xinput.h
+EXTSOURCES += xinput.c
+EXTENSION_XML += xinput.xml
+
+EXTHEADERS += xprint.h
+EXTSOURCES += xprint.c
+EXTENSION_XML += xprint.xml
+
+EXTHEADERS += xselinux.h
+EXTSOURCES += xselinux.c
+EXTENSION_XML += xselinux.xml
+
+EXTHEADERS += xtest.h
+EXTSOURCES += xtest.c
+EXTENSION_XML += xtest.xml
+
+EXTHEADERS += xv.h
+EXTSOURCES += xv.c
+EXTENSION_XML += xv.xml
+
+EXTHEADERS += xvmc.h
+EXTSOURCES += xvmc.c
+EXTENSION_XML += xvmc.xml
DEFINES += PTW32_STATIC_LIB
-#.xml.h:
-# @n=`dirname $*`; test -d $$n || (echo mkdir $$n; mkdir $$n)
-# $(XSLTPROC) --stringparam mode header \
-# --stringparam base-path $(XCBPROTO_XCBINCLUDEDIR)/ \
-# --stringparam extension-path $(XCBPROTO_XCBINCLUDEDIR)/ \
-# -o $@ $(srcdir)/c-client.xsl $<
-
-#.xml.c:
-# @n=`dirname $*`; test -d $$n || (echo mkdir $$n; mkdir $$n)
-# $(XSLTPROC) --stringparam mode source \
-# --stringparam base-path $(XCBPROTO_XCBINCLUDEDIR)/ \
-# --stringparam extension-path $(XCBPROTO_XCBINCLUDEDIR)/ \
-# -o $@ $(srcdir)/c-client.xsl $<
-
-#$(EXTENSION_XML):
-# $(LN_S) -f $(XCBPROTO_XCBINCLUDEDIR)/$@ $@
+
+BUILT_SOURCES = $(EXTSOURCES) $(EXTHEADERS)
+
+CSRCS += $(EXTSOURCES)
+
+$(EXTHEADERS) $(EXTSOURCES): c_client.py
+
+%.h: $(XCBPROTO_XCBINCLUDEDIR)\%.xml
+ python c_client.py -p $(XCBPROTO_XCBPYTHONDIR) $<
+
+%.c: $(XCBPROTO_XCBINCLUDEDIR)\%.xml
+ python c_client.py -p $(XCBPROTO_XCBPYTHONDIR) $<