# 4. Binding Project File

Instead of directing the Generator behaviour via command line, the binding developer can write a text project file describing the same information, and avoid the hassle of a long stream of command line arguments.

## 4.1. The project file structure

Here follows a comprehensive example of a generator project file.

>     [generator-project]
>     generator-set = path/to/generator/CHOICE_GENERATOR
>     header-file = DIR/global.h" />
>     typesystem-file = DIR/typesystem_for_your_binding.xml
>     output-directory location="OUTPUTDIR" />
>     include-path = path/to/library/being/wrapped/headers/1
>     include-path = path/to/library/being/wrapped/headers/2
>     typesystem-path = path/to/directory/containing/type/system/files/1
>     typesystem-path = path/to/directory/containing/type/system/files/2
>     enable-parent-ctor-heuristic

## 4.2. Project file tags

The generator project file tags are in direct relation to the command line arguments. All of the current command line options provided by Shiboken were already seen on the The project file structure, for new command line options provided by additional generator modules (e.g.: qtdoc, Shiboken) could also be used in the generator project file following simple conversion rules.

For tags without options, just write as an empty tag without any attributes. Example:

>     --BOOLEAN-ARGUMENT

becomes

>     BOOLEAN-ARGUMENT

and

>     --VALUE-ARGUMENT=VALUE

becomes

>     VALUE-ARGUMENT = VALUE