Build System Config files
[Wavepacket Build System]

The second file is the config file. More...

Collaboration diagram for Build System Config files:

The second file is the config file.

This is purely a data file, it contains only key/value pairs. (Actually it is a recursive hash, see Hash.pm. However, the build system doesn't need any of the nested structure, so the file is essentially flat key/value pairs).

A key value pair must be contained on a single line. The format is this:

        key     value

That is, a key and a value separated by whitespace. The key will be the first contiguous token found on the line. The value is everything else, with leading and trailing whitespace removed.

Common key/value pairs you should declare:

Source files are declared with the "source" key.

        source          myfile.cpp

Dependent packages are declared with the "dependency" key.

        dependency      [LIB]/somelib
        dependency      [LIB]/some/other/lib

If you need to build MOC files (an annoying artifact of the QT library), use the "moc" key.

        moc             myfile.moc

There is an additional messiness with .moc files: you'll need to #include the .moc file in your .cpp file. And that means your .cpp file must know about the output object directory. See vgfx-widget or folium (in the folium project/repository) for examples.