xenial (1) h2xml.1.gz

Provided by: python-ctypeslib_0.0.0+svn20100125-5_all bug

NAME

       h2xml - convert header files to XML intermediates
       xml2py - convert XML intermediates to Python ctypes interface

SYNOPSIS

       h2xml includefile ... [options] -o outputxmlfile
       xml2py xmlfile ... [options] -o outputpyfile

DESCRIPTION

       ctypeslib  is a Python code generator capable of converting C header files into xml files (using gccxml),
       and then converting the xmlfiles into Python modules which define a ctypes interface to the corresponding
       C library.

       Ctypeslib  is  not  ctypes.  Ctypes is included in Python 2.5+ and as an add-on for lower versions, while
       ctypeslib is a lesser known add-on written by the ctypes author.  If you use ctypes a lot and  are  tired
       of  setting  argtypes and restype of the called functions, you should look into ctypeslib.  Ctypeslib can
       also set up data types and structures from C header files automatically.

       h2xml and xml2py are the user interface scripts to ctypeslib.  h2xml converts C  header  files  into  xml
       intermediates  (using  gccxml)  and xml2py converts these intermediates to Python files.  At the minimum,
       you can get automatic construction of the C types (structures, etc) in ctypes  definitions.   With  extra
       options,  macro definitions can be expanded and the output Python file can be automatically linked (using
       ctypes) to the corresponding C library.

       The briefest example is:

              h2xml header.h -o out_c.xml
              xml2py out_c.xml -o out_c.py

       To obtain preprocessor symbols, you must use the -c flag to h2xml.  To automatically link to C  libraries
       via ctypes, you muss pass the relevant libraries to xml2py with -l library.so.

OPTIONS

       h2xml options:

              -h, --help
                     show brief help message

              -q, --quiet

              -D NAME[=VALUE]
                     macros to define

              -U NAME
                     macros to undefine

              -I DIRECTORY
                     additional include directories

              -o XMLFILE
                     XML output filename

              -c, --cpp-symbols
                     try to find #define symbols - this may give compiler errors, so it's off by default.

              -k     don't delete the temporary files created (useful for finding problems)

       xml2py options:

              -h, --help
                     show this help message and exit

              -c     include source file location in comments

              -d     include docstrings containing C prototype and source file location

              -k TYPEKIND
                     kind  of  type  descriptions to include: d = #defines, e = enumerations, f = functions, s =
                     structures, t = typedefs

              -l DLLS
                     libraries to search for exported functions

              -o OUTPUT
                     output filename (if not specified, standard output will be used)

              -r EXPRESSION
                     regular expression  for  symbols  to  include  (if  neither  symbols  nor  expressions  are
                     specified,everything will be included)

              -s SYMBOL
                     symbol  to  include  (if  neither  symbols nor expressions are specified,everything will be
                     included)

              -v     verbose output

              -w     add all standard windows dlls to the searched dlls list

              -m module
                     Python module(s) containing symbols which will be imported instead of generated

              --preload=DLL
                     dlls to be loaded before all others (to resolve symbols)

EXAMPLES

       Please see /usr/share/doc/python-ctypeslib/examples.Debian for examples and explanation.

SEE ALSO

       /usr/share/doc/python-ctypeslib/examples.Debian contains a brief tutorial on some key features

       Python docstrings (pydoc ctypeslib)

       Ctypeslib upstream is http://python.net/crew/theller/ctypes/ (see "Related Projects").

       For ctypes information, see http://docs.python.org/library/ctypes.html

AUTHOR

       ctypeslib was written by Thomas Heller <theller@ctypes.org>.

       This manual page was written by Richard Darst <rkd@zgib.net>, for the Debian project (and may be used  by
       others).