blob: b7d9829e0aa3f443a66f7337dcd5081764b448b0 [file] [log] [blame]
#!/usr/bin/python
# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# This is the setup script for pyxinput autotest dependency, which
# will be called at emerge stage.
import logging
import os
import ctypesgencore
from autotest_lib.client.bin import utils
version = 1
def setup(topdir):
class Opt(object):
"""Object to hold ctypesgen parseing options"""
def __init__(self, attrs):
for attr in attrs:
setattr(self, attr, attrs[attr])
def gen(self):
"""Generate outputs"""
desc = ctypesgencore.parser.parse(self.headers, self)
ctypesgencore.processor.process(desc, self)
ctypesgencore.printer.WrapperPrinter(self.output, self, desc)
os.chdir(os.path.join(topdir, 'src'))
# Generate xlib.py
opt = Opt(ctypesgencore.options.default_values)
opt.libraries = ['X11']
opt.headers = ['/usr/include/X11/Xlib.h',
'/usr/include/X11/X.h',
'/usr/include/X11/Xutil.h']
opt.output = 'xlib.py'
opt.other_known_names = ['None']
opt.gen()
# Generate xi2.py
opt = Opt(ctypesgencore.options.default_values)
opt.libraries = ['Xi']
opt.headers = ['/usr/include/X11/extensions/XI2.h',
'/usr/include/X11/extensions/XInput2.h']
opt.output = 'xi2.py'
opt.other_known_names = ['None']
opt.gen()
os.chdir(topdir)
pwd = os.getcwd()
utils.update_version(pwd + '/src', True, version, setup, pwd)