g-ir-scanner(1)g-ir-scanner(1)NAMEg-ir-scanner - extracting C metadata from sources and headers
SYNOPSISg-ir-scanner [OPTION...] FILES...
DESCRIPTIONg-ir-scanner is a tool which generates GIR XML files by parsing headers
and introspecting GObject based libraries. It is usually invoked dur‐
ing the normal build step for a project and the information is saved to
disk and later installed, so that language bindings and other applica‐
tions can use it. Header files and source files are passed in as argu‐
ments on the command line. The suffix determines whether a file be
treated as a source file (.c) or a header file (.h). Currently only C
based libraries are supported by the scanner.
OPTIONS--help Show help options
--quiet
If passed, do not print details of normal operation.
--warn-all
Display warnings for public API which is not introspectable.
--warn-error
Make warnings be fatal errors.
--format=FORMAT
This parameters decides which the resulting format will be used.
The default value is gir.
--include=NAME
Add the specified introspection dependency to the scanned names‐
pace. NAME is of the form NAMESPACE-VERSION, like Gtk-3.0.
--include-uninstalled=PATH
Add the specified introspection dependency to the scanned names‐
pace. This differs from --include in that it takes a file path,
and does not process the pkg-config dependencies (since they may
not be installed yet).
--add-include-path=PATH
Add a directory to the path which the scanner uses to find GIR
files. Can be used multiple times to specify multiple directo‐
ries
-i, --library=LIBRARY
Specifies a library that will be introspected. This means that
the *_get_type() functions in it will be called for GObject data
types. The name of the library should not contain the leading
lib prefix nor the ending shared library suffix.
-L, --library-path=PATH
Include this directory when searching for a library. This
option can be specified multiple times to include more than one
directory to look for libraries in.
-Idirectory
Include this directory in the list of directories to be searched
for header files. You need to pass to the scanner all the
directories you'd normally pass to the compiler when using the
specified source files.
-n, --namespace=NAME
The namespace name. This name should be capitalized, eg the
first letter should be upper case. Examples: Gtk, Clutter,
WebKit.
--no-libtool
Disable usage of libtool for compiling stub introspection
binary. Use this if your build system does not require libtool.
--libtool
Full path to libtool executable. Typically used for Automake
systems.
--nsversion=VERSION
The namespace version. For instance 1.0. This is usually the
platform version, eg 2.0 for Gtk+, not 2.12.7.
-p, --program=PROGRAM
Specifies a binary that will be introspected. This means that
the *_get_type() functions in it will be called for GObject data
types. The binary must be modified to take a --introspect-dump=
option, and to pass the argument to this function to g_ireposi‐
tory_dump.
--program-arg=ARG
Additional argument to pass to program for introspection.
--identifier-prefix=PREFIX
This option may be specified multiple times. Each one gives a
prefix that will be stripped from all C identifiers. If none
specified, the namespace will be used. Eg, an identifier prefix
of Foo will export the identifier typdef struct _FooBar FooBar;
as Foo.Bar.
--symbol-prefix=PREFIX
This option may be specified multiple times. Each one gives a
prefix that will be stripped from all C symbols. Eg, an symbol
prefix of foo will export the symbol foo_bar_do_something as
Foo.Bar.do_something.
--accept-unprefixed
If specified, the scanner will accept identifiers and symbols
which do not match the namespace prefix. Try to avoid using
this if possible.
--output=FILENAME
Name of the file to output. Normally namespace + format exten‐
sion. Eg, GLib-2.0.gir.
--pkg=PACKAGE
List of pkg-config packages to get compiler and linker flags
from. This option can be specified multiple times to include
flags from several pkg-config packages.
--pkg-export=PACKAGE
List of pkg-config packages that are provided by the generated
gir. This option can be specified multiple times if the gir
provides more packages. If not specified, the packages speci‐
fied with --pkg= will be used.
--verbose
Be verbose, include some debugging information.
ENVIRONMENT VARIABLES
The g-ir-scanner uses the XDG_DATA_DIRS variable to check for
dirs, the girs are located in XDG_DATA_DIRS/gir-1.0. It is nor‐
mally set on a distribution so you shouldn't need to set it
yourself.
The variable GI_SCANNER_DISABLE_CACHE ensures that the scanner
will not write cache data to $HOME.
BUGS
Report bugs at http://bugzilla.gnome.org/ in the glib product and
introspection component.
HOMEPAGE and CONTACT
http://live.gnome.org/GObjectIntrospection
AUTHORS
Johan Dahlin
g-ir-scanner(1)