Qbs

Blog Documentation Get Qbs
  • Qbs Manual
  • QbsLanguageItems
  • Probe
  • Qbs 2.1.1
  • Probe QML Type

    Locates files outside the project. More...

    Import Statement: import QbsLanguageItems

    Properties

    Detailed Description

    Probe items can appear inside Product, Project and ModuleProvider items. They are run prior to building, for instance to locate dependent headers, libraries, and other files outside the project directory whose locations are not known ahead of time. Probes can be parameterized via their properties and typically store results in properties as well. These results are then retrieved via the Probe's id, which is mandatory:

    Product {
        Probe {
            id: valueCalculator
            property string parameter: "whatever"
            property int value
            configure: {
                value = Utils.calculateValue(parameter); // Expensive operation
                found = true;
            }
        }
        property int theValue: valueCalculator.value
    }

    Note: Because Probes often invoke external processes, which is relatively expensive compared to evaluating normal properties, their results are cached. To force re-evaluation of a Probe, you can supply the –force-probe-execution command-line option to the build command.

    Property Documentation

    condition: bool

    Determines whether the probe will actually be run.

    Default: true


    configure: script

    A script that is executed when the probe is run.


    found: bool

    Indicates whether the probe was run successfully. Set by configure.

    Default: Undefined