#!/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)