Commit graph

22 commits

Author SHA1 Message Date
Joshua Horton
b7975973af maint(web): ensure Web build scripts handle paths with spaces properly
The command shortcuts that were used by Web
scripts to create bundles via `esbuild` were not
properly handling the $KEYMAN_ROOT path when it
contained a space.  These changes will rectify
this behavior and permit builds for such cases.

Build-bot: skip build:web
Test-bot: skip
2026-02-18 09:14:30 +07:00
Marc Durdin
2726050601 maint(common): rename and move node-related script functions into node.inc.sh
Consolidates the node-related script functions into node.inc.sh, as part
of cleaning up the build scripts and making them easier to maintain into
the future.

Fixes: #14447
2025-08-02 13:34:29 +10:00
Marc Durdin
f394245636 maint(common): consolidate builder scripts
Clarifies the confusing builder.inc.sh / build-utils.sh distinction by
giving the scripts more appropriate names. Most build scripts should use
builder-full.inc.sh; some helper scripts can use builder-basic.inc.sh.
Documented in resources/build/README.md.

Renames:
* resources/build/builder.inc.sh to resources/build/builder-full.inc.sh
* resources/build/build-utils.sh to resources/build/builder-basic.inc.sh

Other changes:
* Moves Android-specific functions out of builder-basic.inc.sh and into
  android/build.sh.
* Renames functions in builder-basic.inc.sh

More functions may be moved from builder-basic.inc.sh into utils.inc.sh
or other scripts in the future.

Fixes: #14065
Build-bot: build all
Test-bot: skip
2025-08-02 08:11:24 +10:00
Marc Durdin
65158a0526 maint(common): rename shellHelperFunctions.sh to utils.inc.sh
Adds documentation for various functions, removes unused functions (a
couple of simple, very lightly used functions were unDRYed; these could
go back the other way across all shell scripts if necessary). TODO items
noted for follow-up refactoring.

Fixes: #14275
Relates-to: #14269
Build-bot: build all
Test-bot: skip
2025-08-02 06:58:40 +10:00
Joshua A. Horton
532bba95a8 chore(web): Merge branch 'master' into feat/web/package-kbd-renderer 2024-05-29 11:44:44 +07:00
Marc Durdin
cd8121ef65 chore(common): builder scripts now use /resources/build/builder.inc.sh
Note: there is a bit of potential confusion about the difference between
/resources/builder.inc.sh (the full implementation for builder scripts),
and /resources/build/builder.inc.sh (the source script that builder
scripts should always use).

This allows us to make assumptions that will always be true for builder
scripts that may not be true for other scripts, such as setting base
folder.
2024-05-02 15:54:31 +07:00
Marc Durdin
0f390d47cc chore(common): maintenance on build scripts - cd
Fixes #11324.

* Always `cd "$THIS_SCRIPT_PATH"`
* Remove unnecessary `cd` from all build.sh
* Remove unnecessary `set -eu` from all build.sh (and `# set -x`)
* Replace old build-utils.sh incantation in a few build.sh scripts
2024-05-02 15:54:29 +07:00
Joshua A. Horton
21266dd109 feat(web): bulk_render variant - loads and renders keyboards from local KMP 2024-01-18 10:53:32 +07:00
Joshua A. Horton
f723f14fc3 chore(web): a bit more cleanup 2023-12-19 10:12:25 +07:00
Joshua A. Horton
f78eeaae34 chore(web): changes per review comments 2023-12-19 10:11:39 +07:00
Joshua A. Horton
3230612d9a change(web): final KMW-bundler script cleanup 2023-12-18 10:23:28 +07:00
Joshua A. Horton
3d7d0b598c chore(web): changes per PR review 2023-06-15 15:26:04 +07:00
Joshua A. Horton
626e1855a3 chore(web): Merge branch 'change/srcmap-cleanup-and-c8-use' into chore/web/centralize-kmw-tsconfigs 2023-06-14 14:59:18 +07:00
Joshua A. Horton
3ce99b9c73 chore(web): cleanup re set_keyman_standard_build_path 2023-06-14 10:00:39 +07:00
Joshua A. Horton
be06ab3e6e chore(web): fixes web tool tsconfigs + updates build.sh scripts 2023-06-14 09:18:44 +07:00
Joshua A. Horton
1fb8190726 fix(web): restores bulk_rendering tool 2023-05-31 15:24:12 +07:00
Marc Durdin
92ed99c4d6 chore(common): build script performance improvements
Improves build script performance by:
* using built-ins wherever possible (e.g. string splitting)
* eliminating redundant code
* using absolute (to $KEYMAN_ROOT) rather than relative paths to avoid realpath
* removing unnecessary `npm run` calls

BEFORE                         | AFTER
-------------------------------|----------------------
time ./core/build.sh --help    |
real    0m2.116s               | real    0m0.874s
user    0m0.578s               | user    0m0.198s
sys     0m0.984s               | sys     0m0.289s
-------------------------------|----------------------
time ./web/build.sh --help     |
real    0m3.523s               | real    0m0.757s
user    0m1.166s               | user    0m0.320s
sys     0m2.273s               | sys     0m0.455s
-------------------------------|----------------------
time ./web/build.sh -d         |
real    1m34.750s              | real    0m59.974s
user    0m9.721s               | user    0m6.284s
sys     0m19.652s              | sys     0m13.202s

@keymanapp-test-bot skip
2023-03-13 07:18:09 +07:00
Marc Durdin
ce864ea923 chore: update standard script prolog to use builtin instead of dirname 2023-02-22 11:04:15 +07:00
Marc Durdin
463c7ff907 chore: remove greadlink from standard script prolog 2023-02-22 10:43:06 +07:00
Joshua A. Horton
a1a5cca79a fix(web): missing -f option on bulk_rendering clean rm cmd 2022-11-29 09:47:35 +07:00
Joshua A. Horton
eb9cd0c9e9 chore(web): script patch-up, new tools/testing/recorder script 2022-11-29 09:47:07 +07:00
Joshua A. Horton
9d82125725 change(web): moves bulk_rendering under tools/testing, adds clean action 2022-11-29 09:46:50 +07:00
Renamed from web/bulk_rendering/build.sh (Browse further)