- workaround lack of patch_directory on old meson (need 0.55.0)
with a manually generated zip file
- remove an assert in ldml_test_source which is already caught as a test failure
for #8495
Decided to use the name `baseline` for this set of tests. They can be
used by any project in the repo now. Tests will be treated as shared,
and not modified (except in the case of a buggy test).
* Moves .kmn files, add `&NAME` line (don't use meson templating for
these files)
* Generates reference .kmx files using kmcomp for use as a baseline with
kmcmplib (kmc) tests, and for linux tests
* Updates references in core, kmcmplib, and linux builds
* Renames all the .kmn / .kmx to use a standardized, clean name format
(this was needed for building packages in the core tests)
- I originally had the tests copied from resources/, but that broke under Windows. Working around by copying the files in git. #8524 to do this the right way.
For: #8161
Removes the Windows-only kmcomp.exe dependency, and instead now uses
kmc to always build .kmx files for unit tests.
debug_api.cpp was using an outdated .kmx file, which is why the line
number offsets have changed. (The perils of binary fixtures!)
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
Fixes#8010.
Note that #8398 moves other settings into a shared resources folder, and
once that hits master, it would be good to do another round of
consolidation to share the wasm defs in resources as well.
In order to be able to provide a more robust round-trip comparison of
existing .kmx binary fixtures with compiler output, this commit rebuilds
them with the `-no-compiler-version` kmcomp flag, to omit the
`TSS_COMPILEDVERSION` store.
Fixes#8373.
Note that the core functionality requested in #8373 is already in place;
this commit just does some cleanup to make this easier to maintain in
the future:
* Uses `builder_is_debug_build` function to test for debug build
(instead of `builder_has_option --debug`, which would also work but
using the other function avoids typo issues with the option name).
* Renames `$_builder_debug` to `$_builder_debug_internal` to reduce
naming confusion
* Documents `$builder_debug`, `builder_is_debug_build`, and clarifies
usage of `--debug` option.
* Logs command line for dep builds (we could hide this in the future,
but it certainly doesn't hurt for now!)