- Mar 10, 2023
-
-
Marc Durdin authored
Some minor errors post-merge.
-
Marc Durdin authored
chore(developer): kmcmplib breadth-first-build
🚑 -
Marc Durdin authored
chore(core): shared meson config
🚑
-
- Mar 09, 2023
-
-
Marc Durdin authored
feat(developer): adds support for compiling kmcmplib to wasm
🚑 -
Marc Durdin authored
chore(developer): tidy up kmcmplib filesystem access
🚑 -
Marc Durdin authored
-
Marc Durdin authored
fix(developer): improve .kmx output consistency for cross-platform
🚑 -
Marc Durdin authored
chore(developer): cross-platform fixups pre-wasm build of kmcmplib
🚑 -
Marc Durdin authored
-
Marc Durdin authored
chore(developer): check for *p != NULL and test for p > pStart
-
Marc Durdin authored
-
Marc Durdin authored
-
Marc Durdin authored
-
Marc Durdin authored
chore(core): rebuild kmx binary test fixtures without version data
🚑 -
Marc Durdin authored
-
Marc Durdin authored
-
Marc Durdin authored
chore(developer): remove references to windows.h
-
Marc Durdin authored
chore(developer): cleanup API interfaces and types for kmcmplib
-
Marc Durdin authored
Note: unit tests require manual build of keyboards in keyboards repo using kmcmpdll.dll under Windows, and copying into the tests/fixtures folder, prior to run, under non-Windows platforms. (Later: will make it possible to build the reference keyboards using kmcomp.exe on Windows.)
-
Marc Durdin authored
-
Marc Durdin authored
-
Marc Durdin authored
* fixes CheckFilenameConsistency to use Windows functions on Windows, to check case differences, and only test for file existence on other platforms which are already case sensitive. * fixes memory leaks in usage of `wstrtostr2`, and eliminated the function altogether. * avoided use of u16sprintf for error messages, as it seems not to be working correctly (long term, eliminate altogether, use C++ string formatting). * fix memory leak and overwrite of token in compiler error message. * remove debug logging and namespace from filesystem.cpp Unrelated to kmcmplib: * improved logs in kmcomp tests (these tests are running on kmcmplib), so it is easier to diagnose failing tests.
-
- Mar 08, 2023
-
-
SabineSIL authored
Co-authored-by:Marc Durdin <marc@durdin.net>
-
SabineSIL authored
Co-authored-by:Marc Durdin <marc@durdin.net>
-
SabineSIL authored
Co-authored-by:Marc Durdin <marc@durdin.net>
-
SabineSIL authored
chore(developer): use consistent line endings \r\n
-
Marc Durdin authored
-
Marc Durdin authored
Moves filesystem functionality into filesystem.cpp (it was partially in kmx_u16.h previously), and adds cross-platform switches. This brings us most of the way towards being able to run kmcompx under WASM and in theory other platforms (yet to be tested).
-
Marc Durdin authored
-
Marc Durdin authored
-
Marc Durdin authored
This fixes two issues: 1. `COMP_KEY` structure had padding that was not always zeroed out. Made this explicit. 2. Rule sorting could be inconsistent when re-sorting rules that use `+ any() > ...`, which are expanded at compile time into multiple rules, and which ended up with identical sort keys due to lack of precision. This relates to #8381 but only adds differentiation for the otherwise ambiguous rule sort keys, and does not fix that issue, which requires further investigation.
-
Marc Durdin authored
This is not enough for building to WASM, but wanted to split out the bigger changes into their own PRs. This is mostly busy-work. One serious bug fixed: * u16string_from_string was not converting from UTF-16 correctly Apart from that, just tidies up a few bits and pieces in kmcmplib: * type coercion for json-validator.cpp (probably already fixed upstream) * cleanup of build scripts for new builder variable names * various compatibility macros for MSVC vs clang * safer math expressions * file name casing in headers * replacement of various ms-only std funcs * removed some unused variables and consts * tightened up search for keyboards to get only keyboards in /source/ folders (may be possible to improve further in the future?)
-
Marc Durdin authored
-
Marc Durdin authored
In order to allow us to reference the padding in the FILE_KEY structure, for reproducible and cross-platform consistent builds, turn the padding into an `_reserved` (must always be zero) field. Changes to compiler to utilise this will be in a follow-up commit.
-
Marc Durdin authored
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.
-
SabineSIL authored
chore(developer): Refactor/developer/8086 common includes
-
- Mar 07, 2023