Since keyman-system-service is a dependency of ibus-keyman it gets
build when ibus-keyman gets build. However, in that case the `--coverage`
flag doesn't get passed through in which case the `coverage-html`
target is missing from ninja. This change fixes this problem by checking
if ninja has the `coverage-html` target. If not we remove the output
directory which causes the configure action to run again with the
`--coverage` option.
Creating the coverage option to ninja previously didn't work reliably.
This change re-orders the parameters passed to `meson setup` and seems
to work better. Additionally this change refactors the scripts and makes
use of `builder_run_action`.
This change adds an index page that can show the reports for the
child projects.
Also fix a path problem in the `keyman-system-service/build.sh` script.
This allows to use the `linux/build.sh` file to specify the
`--no-integration` flag which makes it easier to specify jobs on CI
because it then doesn't need to know all subprojects.