Commit graph

5162 commits

Author SHA1 Message Date
Marc Durdin
8103949bdc chore(linux): adjust linux build scripts for rust 2021-06-02 13:51:55 +10:00
Marc Durdin
fdbc2a309a chore(common): stub out tests to prevent build errors 2021-06-02 13:51:54 +10:00
Marc Durdin
3e0a8ffafc chore(common): tweak build script for cross platform 2021-06-02 13:51:52 +10:00
Marc Durdin
3690cdf973 chore(common): make build.sh executable 2021-06-02 13:51:51 +10:00
Marc Durdin
8052ac9bbc feat(common): Rust infrastructure
Relates to #5069.

This establishes a baseline Rust build environment and linkage with
common/core/desktop.

This includes:

* build script build.sh which handles builds on Windows, macOS, *nix,
  with multiple targets on Windows only at present (M1 on mac to come
  when we do the mac integration work.)
* a mock rust processor with a very stubbed-out implementation
* bare bones interface between Rust library and C++ code
* unit tests on Rust and integration tests on C++ side to test the
  linkage between the libraries.

This should deliver a set of libraries that can be linked into our
target applications. For ease of deployment, it may be best to make
these static libraries, but I haven't made that decision at this point.
2021-06-02 13:51:50 +10:00
Keyman Build Agent
344ae9caa4 auto: increment master version to 15.0.61 2021-06-01 14:02:09 -04:00
Keyman Build Agent
e13439e99c auto: increment master version to 15.0.60 2021-05-31 14:02:58 -04:00
Eberhard Beilharz
b0358509c0
Merge pull request #5169 from keymanapp/fix/linux/issue-5072
fix(common/core/desktop): Fix failing tests on armhf
2021-05-31 14:58:29 +02:00
Marc Durdin
c244eded35
Merge pull request #5175 from keymanapp/fix/common/build-script-help-param
fix(common): build script help param
2021-05-31 11:08:36 +10:00
Marc Durdin
c9897bb38f fix(windows): cleanup edge cases in k32_load
Matches work completed in #5169 for Keyman Core, kmx_file.cpp.

While this code will hopefully disappear in 15.0, it's good to make sure
we aren't diverging beforehand.

Also tidies up a couple of other cases in `CopyKeyboard` in Keyman Core.
2021-05-31 10:58:23 +10:00
Keyman Build Agent
ec3a699018 auto: increment master version to 15.0.59 2021-05-28 14:02:38 -04:00
jahorton
c91d2f3685 refactor(web): related adjustments for full KMW 2021-05-28 13:14:43 +07:00
jahorton
6c782705f2 refactor(web): removes Ltarg from KeyEvent, adjusts core to match 2021-05-28 12:44:03 +07:00
Keyman Build Agent
e33e93342f auto: increment master version to 15.0.58 2021-05-27 21:58:41 -04:00
Marc Durdin
5fac633fb6 fix(common): build script help param
When working on a new build script, I tripped over the `-?` question
mark help parameter here, as it needs to be escaped. Opted to fix all
the instances in our scripts, although AFAICT there would not have been
current bugs arising from this, as there were no conflicting one
character options lower in the case list.
2021-05-28 09:50:40 +10:00
Keyman Build Agent
7f95128944 auto: increment master version to 15.0.57 2021-05-27 14:02:06 -04:00
Eberhard Beilharz
68706c9451
fix(common/core/desktop): Fix failing tests on armhf
This change fixes the FixupKeyboard method. In the .kmx files on
disk array pointers for an empty array point to the end of the file
(one byte after the end of the data structure). When we expand the
pointers in FixupKeyboard this leads to `cgp->dpKeyArray` to point to an
unallocated memory location - this shouldn't matter since we don't
try to read or write at this location if the Key array is empty,
but armhf still seems to raise a SIGBUS, probably because we cast
the value to a `LPKEY`. This change sets `cgp->dpKeyArray` to `NULL`
if we have an empty key array, similar to what's done for the strings.

Closes #5072.
2021-05-27 17:14:06 +02:00
Eberhard Beilharz
7c78fb0adb
refactor(common/core/desktop): Use StringOffset in FixupKeyboard 2021-05-27 16:53:41 +02:00
Eberhard Beilharz
9c2d30948c
fix(linux): Exclude s390x from package builds
s390x is big-endian which we currently don't support (#5111).

Only build on architectures supported by Debian. This excludes the
following little-endian architectures:
alpha arm ia64 riscv64 sh4 x32 arm64ilp32 mipsn32el
and the following big-endian ones:
avr32 hppa m68k mips mips64 mipsn32 powerpc ppc64 s390 sparc sparc64

See https://wiki.debian.org/SupportedArchitectures
and https://wiki.debian.org/ArchitectureSpecificsMemo
2021-05-27 16:53:41 +02:00
Keyman Build Agent
0bd9ed9af9 auto: increment master version to 15.0.56 2021-05-26 23:27:31 -04:00
Keyman Build Agent
60506d1ded auto: increment master version to 15.0.55 2021-05-26 14:03:07 -04:00
Eberhard Beilharz
9c01ef9536
Merge pull request #5146 from keymanapp/chore/linux/updchangelog
chore(linux): Update changelogs 🍒
2021-05-26 10:44:37 +02:00
Keyman Build Agent
e7a1d866d4 auto: increment master version to 15.0.54 2021-05-25 14:03:39 -04:00
Eberhard Beilharz
6d1adee2ee
chore(linux): Update changelogs
(cherry picked from commit d2532fa335)
2021-05-25 14:28:55 +02:00
Marc Durdin
39cb018042 chore(windows): move to vc++ 2019 2021-05-25 15:56:36 +10:00
Keyman Build Agent
e4e066d4ee auto: increment master version to 15.0.53 2021-05-24 14:02:41 -04:00
Keyman Build Agent
461109c6ea auto: increment master version to 15.0.52 2021-05-21 14:04:00 -04:00
Keyman Build Agent
43d408a809 auto: increment master version to 15.0.51 2021-05-20 14:02:18 -04:00
jahorton
0c11b00e4e chore(common): Merge branch 'master' into chore/common/update-web-deps 2021-05-20 08:05:25 +07:00
Keyman Build Agent
589c480e9b auto: increment master version to 15.0.50 2021-05-19 14:01:51 -04:00
Eberhard Beilharz
25124747b5
Merge pull request #5101 from keymanapp/fix/core/issue-5100
fix(common/core/desktop): Don't segfault on invalid .kmx file
2021-05-19 08:58:45 +02:00
Eberhard Beilharz
d91d27befa
fix(common/core/desktop): Don't segfault on invalid .kmx file
(Fixes #5100)
2021-05-18 19:14:35 +02:00
Eberhard Beilharz
99e9a7cf61
fix(common/core/desktop): Fix warnings when compiling for armhf
Compiling on armhf outputs two warnings:
- NULL used in arithmetic [-Wpointer-arith] (line 289 and 290)
- unused parameter ‘dwFileSize’ [-Wunused-parameter] (line 264)

(related to #5072)
2021-05-18 18:31:29 +02:00
Keyman Build Agent
1da6247061 auto: increment master version to 15.0.49 2021-05-17 14:01:33 -04:00
jahorton
7c9a596b65 chore(common): fixes link for mocha-teamcity-reporter via hoist 2021-05-17 11:00:32 +07:00
jahorton
f9af1c9673 chore(developer/compilers): updates lmc dependency, hoists ts-node 2021-05-17 10:20:49 +07:00
jahorton
6d33762aa8 chore(common): updates web submodule dependencies, hoists commons 2021-05-17 09:52:40 +07:00
Keyman Build Agent
975439fa7b auto: increment master version to 15.0.48 2021-05-14 14:01:26 -04:00
Keyman Build Agent
5bd23f868c auto: increment master version to 15.0.47 2021-05-13 14:02:00 -04:00
Keyman Build Agent
1b1074159f auto: increment master version to 15.0.46 2021-05-12 14:02:06 -04:00
Keyman Build Agent
00dd9b6155 auto: increment master version to 15.0.45 2021-05-11 14:02:00 -04:00
Eberhard Beilharz
5ea621f4cc
Merge pull request #5053 from keymanapp/fix/core/modifiers
fix(common/core): Add values for Caps and Nocaps modifiers
2021-05-11 17:28:37 +02:00
Eberhard Beilharz
389747b096
Update common/core/desktop/include/keyman/keyboardprocessor_vkeys.h
Co-authored-by: Marc Durdin <marc@durdin.net>
2021-05-11 17:27:51 +02:00
Keyman Build Agent
fe2de7e481 auto: increment master version to 15.0.44 2021-05-10 14:02:21 -04:00
Eberhard Beilharz
e871998113
fix(common/core): Add values for Caps and Nocaps modifiers
Also change the values for these to match the ones defined in
`kmx_file.h`.
2021-05-10 16:52:41 +02:00
Keyman Build Agent
b7c613c216 auto: increment master version to 15.0.43 2021-05-07 14:01:33 -04:00
Keyman Build Agent
31da22d29f auto: increment master version to 15.0.42 2021-05-06 14:01:16 -04:00
Keyman Build Agent
550eaef497 auto: increment master version to 15.0.41 2021-05-02 14:01:27 -04:00
Keyman Build Agent
e40cff16da auto: increment master version to 15.0.40 2021-04-30 14:01:31 -04:00
Keyman Build Agent
868e7f8eed auto: increment master version to 15.0.39 2021-04-29 14:01:24 -04:00