Use the python install path from xcb-xproto.pc to locate the xcbgen package.
This commit is contained in:
parent
b3832bcc46
commit
40566c36d5
|
@ -60,6 +60,12 @@ XCBPROTO_XCBINCLUDEDIR=`$PKG_CONFIG --variable=xcbincludedir xcb-proto`
|
||||||
AC_MSG_RESULT($XCBPROTO_XCBINCLUDEDIR)
|
AC_MSG_RESULT($XCBPROTO_XCBINCLUDEDIR)
|
||||||
AC_SUBST(XCBPROTO_XCBINCLUDEDIR)
|
AC_SUBST(XCBPROTO_XCBINCLUDEDIR)
|
||||||
|
|
||||||
|
# Find the xcbgen Python package
|
||||||
|
AC_MSG_CHECKING(XCBPROTO_XCBPYTHONDIR)
|
||||||
|
XCBPROTO_XCBPYTHONDIR=`$PKG_CONFIG --variable=pythondir xcb-proto`
|
||||||
|
AC_MSG_RESULT($XCBPROTO_XCBPYTHONDIR)
|
||||||
|
AC_SUBST(XCBPROTO_XCBPYTHONDIR)
|
||||||
|
|
||||||
AC_HEADER_STDC
|
AC_HEADER_STDC
|
||||||
AC_SEARCH_LIBS(getaddrinfo, socket)
|
AC_SEARCH_LIBS(getaddrinfo, socket)
|
||||||
AC_SEARCH_LIBS(connect, socket)
|
AC_SEARCH_LIBS(connect, socket)
|
||||||
|
|
|
@ -268,10 +268,10 @@ $(EXTHEADERS) $(EXTSOURCES): c_client.py
|
||||||
SUFFIXES = .xml
|
SUFFIXES = .xml
|
||||||
|
|
||||||
.xml.h:
|
.xml.h:
|
||||||
$(PYTHON) c_client.py $(XCBPROTO_XCBINCLUDEDIR)/$<
|
$(PYTHON) c_client.py -p $(XCBPROTO_XCBPYTHONDIR) $(XCBPROTO_XCBINCLUDEDIR)/$<
|
||||||
|
|
||||||
.xml.c:
|
.xml.c:
|
||||||
$(PYTHON) c_client.py $(XCBPROTO_XCBINCLUDEDIR)/$<
|
$(PYTHON) c_client.py -p $(XCBPROTO_XCBPYTHONDIR) $(XCBPROTO_XCBINCLUDEDIR)/$<
|
||||||
|
|
||||||
$(EXTENSION_XML):
|
$(EXTENSION_XML):
|
||||||
$(LN_S) -f $(XCBPROTO_XCBINCLUDEDIR)/$@ $@
|
$(LN_S) -f $(XCBPROTO_XCBINCLUDEDIR)/$@ $@
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
#!/usr/bin/env python
|
#!/usr/bin/env python
|
||||||
from xml.etree.cElementTree import *
|
from xml.etree.cElementTree import *
|
||||||
from sys import argv
|
|
||||||
from os.path import basename
|
from os.path import basename
|
||||||
|
import getopt
|
||||||
|
import sys
|
||||||
import re
|
import re
|
||||||
|
|
||||||
# Jump to the bottom of this file for the main routine
|
# Jump to the bottom of this file for the main routine
|
||||||
|
@ -982,6 +983,18 @@ output = {'open' : c_open,
|
||||||
|
|
||||||
# Boilerplate below this point
|
# Boilerplate below this point
|
||||||
|
|
||||||
|
# Check for the argument that specifies path to the xcbgen python package.
|
||||||
|
try:
|
||||||
|
opts, args = getopt.getopt(sys.argv[1:], 'p:')
|
||||||
|
except getopt.GetoptError, err:
|
||||||
|
print str(err)
|
||||||
|
print 'Usage: c_client.py [-p path] file.xml'
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
for (opt, arg) in opts:
|
||||||
|
if opt == '-p':
|
||||||
|
sys.path.append(arg)
|
||||||
|
|
||||||
# Import the module class
|
# Import the module class
|
||||||
try:
|
try:
|
||||||
from xcbgen.state import Module
|
from xcbgen.state import Module
|
||||||
|
@ -996,7 +1009,7 @@ except ImportError:
|
||||||
raise
|
raise
|
||||||
|
|
||||||
# Parse the xml header
|
# Parse the xml header
|
||||||
module = Module(argv[1], output)
|
module = Module(args[0], output)
|
||||||
|
|
||||||
# Build type-registry and resolve type dependencies
|
# Build type-registry and resolve type dependencies
|
||||||
module.register()
|
module.register()
|
||||||
|
|
Loading…
Reference in New Issue