File: build.sh

package info (click to toggle)
keyman 18.0.245-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 21,316 kB
  • sloc: python: 52,784; cpp: 21,278; sh: 7,633; ansic: 4,823; xml: 3,617; perl: 959; makefile: 139; javascript: 138
file content (44 lines) | stat: -rwxr-xr-x 1,557 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#!/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.inc.sh"
## END STANDARD BUILD SCRIPT INCLUDE

. "$KEYMAN_ROOT/resources/shellHelperFunctions.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" \
  "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

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 test test_action
builder_run_action        test:help    check-markdown  "$KEYMAN_ROOT/linux/docs/help"