56 lines
1.6 KiB
Python
56 lines
1.6 KiB
Python
#!/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)
|