Commit graph

56 commits

Author SHA1 Message Date
Ross
9aa6ab2ee0 chore(windows): remove addins c-h files 2023-05-03 14:48:03 +10:00
Ross
0ee25dc59f chore(windows): Revert "chore(windows): remove addins c-h files"
This reverts commit 5f07f7ad08.
2023-04-27 14:15:06 +10:00
Ross
5f07f7ad08 chore(windows): remove addins c-h files 2023-04-21 19:02:03 +10:00
Marc Durdin
fb245bfbeb fix(windows): lower case filenames for projects
Fixes #7828.

Moves all projects to lower case filenames so that we don't end up with
filename conflicts in symbol servers.
2022-11-28 19:29:48 +07:00
Marc Durdin
b087d22928 fix(windows): base layout support in Keyman Core
While Keyman Core already supported the base layout flags, they were not
being passed in from Keyman Engine for Windows. This meant that any
rules that used `baselayout` would fail, such as in sil_ipa with AltGr+0
for }

0bf72bed74/release/sil/sil_ipa/source/sil_ipa.kmn (L348-L350)

This patch adds support for the following properties:

* KM_KBP_KMX_ENV_BASELAYOUT: the legacy base layout name, e.g. kbdus.dll
* KM_KBP_KMX_ENV_BASELAYOUTALT: the BCP 47 base layout name, e.g. en-US
* KM_KBP_KMX_ENV_SIMULATEALTGR: whether the user has selected to emulate
  AltGr with Ctrl+Alt, for example on laptops without a right alt key.
* KM_KBP_KMX_ENV_BASELAYOUTGIVESCTRLRALTFORRALT: whether the system base
  layout in use generates Ctrl+RAlt when RAlt is pressed, which can be
  true for many European system layouts. This is necessary when
  associating the keyboard with a European language because the base
  keyboard becomes the language's default keyboard, rather than kbdus.
2022-11-10 11:26:44 +11:00
Marc Durdin
b1b097b659 chore(windows): update include paths 2022-08-11 14:30:15 +02:00
Marc Durdin
3632582522 chore(windows): move keymanversion.h to common 2022-06-12 13:56:13 +10:00
Marc Durdin
754c1295aa chore(windows): cleanup keyman64.h usage
keyman64.h is now only used by keyman32/keyman64. Shared components have
been moved to legacy_kmx_memory.h - KMX structures in-memory, as used by
kmanalyze, kmdecomp.

Removed unnecessary references to keyman64.h from kmtip.

Also removed aiDebugger.* which are obsolete files.

One day in the future, we could merge keyman64.h with keymanengine.h.
2022-06-12 13:44:56 +10:00
Marc Durdin
d8f3a5598a chore(windows): move various headers to common
* moved ConvertUTF.h -> common/windows/cpp/include
* moved crc32.h -> common/windows/cpp/include
* moved keymansentry.h -> common/windows/cpp/include
* moved registry.h -> common/windows/cpp/include
* moved unicode.h -> common/windows/cpp/include
* moved xstring.h -> common/windows/cpp/include

and updated corresponding references. Deleted a bunch of old references
to missing headers from .vcxproj files. Updated vkeys.h and vkeys.cpp
references in .vcxproj to use $(KEYMAN_ROOT) instead of relative paths.
2022-06-12 13:18:45 +10:00
Marc Durdin
c5332ea20a chore(windows): move keynames.h to common 2022-06-12 12:54:24 +10:00
Marc Durdin
ae0810bc5e chore(windows): move kmtip_guids.h and testkeymanfunctioning.h 2022-06-12 07:43:24 +10:00
Marc Durdin
9e82542714 chore(windows): move keymancontrol.h, keymanengine.h 2022-06-12 07:38:00 +10:00
Marc Durdin
5119f8d808 chore(windows): merge vkeys.h and move to common
Moves vkeys.h to common, turns it into a proper header and adds
corresponding vkeys.cpp so that we don't include the data multiple times
in a project.

Removes duplication of vkeys.h in kmcmpdll and global/inc.

Updates all projects to reference the common files, except kmdecomp,
coming in the next commit, as it is more complex.
2022-06-12 07:18:36 +10:00
Marc Durdin
daeb1d6eea chore(windows): remove obsolete ref to debugstore.h from keyman64 2022-06-12 06:40:34 +10:00
Marc Durdin
51952c2242 chore(developer): move debugstore.h to kmcmpdll 2022-06-12 06:36:51 +10:00
Marc Durdin
e5b31669af chore(developer): move and rename compiler.h
The name compiler.h was misleading, so renamed to legacy_kmx_file.h, as
it largely describes .kmx files. There are two declarations in the file
which are specific to kmcmpdll, at the bottom of the file, but
everything else is all related to the .kmx file format. (We may move
those in a future update to kmcmpdll, but that should wait until the
kmcmpdll cross-platform refactor is complete.)

Moved to common/windows/cpp/include/ because it is used by both
Developer and Windows projects.

Where possible, removed redundant references, as compfile.h includes
legacy_kmx_file.h anyway.
2022-06-12 06:31:38 +10:00
Marc Durdin
e295e3ef71 chore(developer): move compfile.h to kmcmpdll
Moves compfile.h to kmcmpdll path and removes unnecessary dependencies on it.
2022-06-12 06:10:37 +10:00
Marc Durdin
2fe84c7ea8 chore(developer): move comperr.h to kmcmpdll
Moves comperr.h to kmcmpdll path and removes unnecessary dependencies on it.
2022-06-12 06:04:36 +10:00
Marc Durdin
e79006a686 chore(windows): remove rc4.cpp references 2022-06-11 11:14:30 +10:00
Marc Durdin
0b95f31f34 chore(windows): remove unused rc4.h, rc4.cpp 2022-06-11 10:44:38 +10:00
Marc Durdin
7612fc28e8 chore(windows): remove unused compv4.h 2022-06-11 10:42:00 +10:00
Marc Durdin
5a8ca7ba41 chore(windows): update project references for shared cpp 2022-06-11 08:39:09 +10:00
Marc Durdin
fbdfa5ca6f chore(windows): update project resource references 2022-06-01 06:59:29 +10:00
Marc Durdin
4ab3c53810 chore(common): adjust scripts for core relocation 2022-05-18 07:22:11 +10:00
Ross
c2d478ba4e fix(windows): rename header - review comments 2022-03-22 16:34:46 +10:00
Ross
79fa9f8a86 fix(windows): create header for keyman guids 2022-03-21 14:58:43 +10:00
Steven R. Loomis
3658efa5f1 chore(common): remove rust (for now!) 🦀
Fixes #6290
2022-02-24 17:34:23 -06:00
Marc Durdin
4e50cfa54c chore(windows): nmake makefile cleanup
Only comments formatted per earlier required from @ermshiperete.
2021-12-17 15:48:24 +11:00
Marc Durdin
c9dc10cc33 chore(windows): replace mkver with mkver.sh 2021-12-08 07:10:29 +01:00
Marc Durdin
dee896b4c6 chore(windows): move from Borland make to nmake
While it may be smarter to move to a different build system altogether,
it is also a *lot* more work. This was a fairly minor syntax refresh to
get nmake working with our existing Makefile system. This is now no
longer compatible with Borland make, so you will need to use `nmake` to
build.

The presence of NMAKE.md informs builds systems that nmake should be
used instead of make.
2021-12-06 12:47:31 +04:00
Marc Durdin
e00ff063c8 chore(windows): version.rc use macros instead of mkver 2021-12-05 17:12:56 +11:00
Ross
3b3ea6e75b feat(windows): clean up formating 2021-08-17 17:16:56 +10:00
Ross
ae9ba52ab9 fix(windows): meson build for static lib 2021-08-10 17:43:55 +10:00
Ross
c0826e9930 feat(windows): use static library for keyboard core 2021-08-04 09:36:42 +10:00
Ross
7a9ee207a8 feat(windows): update project include paths for core 2021-08-02 13:13:03 +10:00
Ross
905538414f chore(windows): split keyman64 header to keymanengine 2021-07-29 21:06:07 +10:00
Marc Durdin
845d65e5e4 chore(windows): remove backup build step
We no longer need to backup debug files as they are saved to the symbol
store during a release build. This reduces the amount of storage
required for a release build and should speed up the build also.

Also fixes the broken build where backup had not been updated for the
new consistent build paths.
2021-07-07 08:09:26 +10:00
Marc Durdin
5246408ac0 chore(windows): make build paths consistent
More iterations on this yak shave.
2021-07-01 10:52:59 +10:00
Marc Durdin
deb01d1a63 chore(windows): make build paths consistent
Move to all projects using bin/ and obj/ for outputs, and
cleanup all Makefiles and project files accordingly. Remove
some obsolete projects along the way. Cleanup .gitignore
also.
2021-07-01 07:38:00 +10:00
Marc Durdin
4ba6f7cb2b chore(common): cross-platform tweaks 2021-06-16 05:43:09 +10:00
Marc Durdin
3f618d4309 chore: more path cleanups 2021-06-15 04:45:29 +10:00
Marc Durdin
a6dd84052d chore(common): update dependency refs 2021-06-14 06:16:24 +10:00
Marc Durdin
4a09dd3b48 feat(windows): add common core libraries and includes 2021-06-02 13:52:11 +10:00
Marc Durdin
f3ba9445dd chore(windows): update vcxproj for vc++2019 2021-05-25 15:58:48 +10:00
Marc Durdin
9e46b555d9 fix(windows): Rename to Keyman
Fixes #4003.

This addresses the majority of locations where we use the name "Keyman
Desktop" in code. There will be some filenames and paths that do not
change at this point -- particularly at a source level. For now, the
focus is on the user interface changes.

While making these changes, I also made the VERSION and MANIFEST
resources more consistent.
2020-12-02 09:56:14 +11:00
Marc Durdin
00a9744253 chore(windows): symbol server support, initial steps 2020-11-11 10:33:16 +11:00
Marc Durdin
53a197fba5 chore(windows): Move to Windows SDK 10.0.17763.0
This removes the requirement for the Windows 8.1 SDK.
2020-10-05 14:11:34 +11:00
Marc Durdin
3a90f258da [Windows] Fix version.in file encoding back to Windows-1252 2019-10-21 06:43:13 +07:00
Marc Durdin
e67519b0d8 [Windows] Remove legacy API endpoints 2019-01-07 12:43:43 +11:00
Marc Durdin
8853155203 [Windows] Refactor and cleanup debug logging in kmtip; fix return value bug in initialising preserved keys 2018-10-30 15:57:06 +11:00