mirror of
https://github.com/keymanapp/keyman.git
synced 2026-08-05 00:15:32 +00:00
This change adds a new GitHub action that verifies that Keyman can build from the source package. Also check that source package used for Launchpad and Debian/Ubuntu packaging doesn't produce lintian errors. Previously lintian errors did go unnoticed because they didn't stop the build. Also refactor `launchpad.sh` script to be a proper builder script, and add some new parameters to allow skipping some steps in the script. Build-bot: skip Test-bot: skip
50 lines
1.7 KiB
Bash
Executable file
50 lines
1.7 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
## START STANDARD BUILD SCRIPT INCLUDE
|
|
# adjust relative paths as necessary
|
|
THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")"
|
|
. "${THIS_SCRIPT%/*}/../resources/build/builder-full.inc.sh"
|
|
## END STANDARD BUILD SCRIPT INCLUDE
|
|
|
|
. "$KEYMAN_ROOT/resources/build/utils.inc.sh"
|
|
|
|
################################ Main script ################################
|
|
|
|
builder_describe \
|
|
"Build Keyman for Linux." \
|
|
"@/resources/tools/check-markdown test:help" \
|
|
":config=keyman-config keyman-config" \
|
|
":engine=ibus-keyman ibus-keyman" \
|
|
":help Online documentation" \
|
|
":service=keyman-system-service keyman-system-service" \
|
|
":mcompile=mcompile/keymap mnemonic layout recompiler for Linux" \
|
|
"clean" \
|
|
"configure" \
|
|
"build" \
|
|
"test" \
|
|
"install install artifacts" \
|
|
"uninstall uninstall artifacts" \
|
|
"--no-integration+ don't run integration tests" \
|
|
"--coverage+ capture test coverage" \
|
|
"--report+ create coverage report" \
|
|
"--open open the coverage reports in the browser" \
|
|
"--no-werror+ don't report warnings as errors"
|
|
|
|
builder_parse "$@"
|
|
|
|
builder_run_child_actions clean configure build test install uninstall
|
|
|
|
clean_action() {
|
|
rm -rf debian/patches
|
|
}
|
|
|
|
test_action() {
|
|
if builder_has_option --open; then
|
|
builder_echo "Opening coverage reports in browser..."
|
|
xdg-open "file://${THIS_SCRIPT_PATH}/CodeCoverageReports.html"
|
|
fi
|
|
}
|
|
|
|
builder_run_action clean clean_action
|
|
builder_run_action test test_action
|
|
builder_run_action test:help check-markdown "${KEYMAN_ROOT}/linux/docs/help"
|