No description
Find a file
Nick Bolton 4690b61551
Simplify compile options and use comprehensive edition logic (#7365)
* Simplify options

* Use more sensible edition logic

* Use set instead of option for string

* Improve macro for product name

* Add tests launch config

* Restore unregistered state

* Reorganize cases for title and improve function name

* Code coverage on by default

* Fixed copyright

* Improve code coverage and test readability

* Separate build-all and build-coverage

* Back out coverage on by default

* Fixed bad var in cmake

* More verbose logging for coverage

* Restore tasks

* Restore preLaunchTask

* Use default comparitor

* Move temp files to temp dir

* Add tasks for tests

* Support for wstring

* Upgrade sonar-scanner to 6 on Debian 12

* Use modern pip install

* Install python for sonarcloud

* Use Ubuntu and install deps

* Fixed sonar-scanner URL

* Fix exported dir

* Persist build dir

* Don't use venv for pip install gcovr

* Fixed another path

* Update actions/checkout to v4 for SonarCloud analysis workflow

* Add coverage task

* Improve coverage for SerialKeyEdition.cpp

* Enable licensing for builds

* Fixed invalid macro names, missing arguments, etc

* Fixed more copyright

* Fixed incorrect use of "enterprise"

* Fixed incorrect use of "business"

* Experiment with environment

* Make package prefix variable

* Add environment matrix to all OS

* Improve job names

* Make job names easier to read

* Roll back environment matrix (too much noise)

* Fixed: default should override required

* Refactor CI with vars

* Fixed arg for env.get_env
2024-07-04 10:14:54 +01:00
.github Simplify compile options and use comprehensive edition logic (#7365) 2024-07-04 10:14:54 +01:00
.vscode Simplify compile options and use comprehensive edition logic (#7365) 2024-07-04 10:14:54 +01:00
cmake Simplify compile options and use comprehensive edition logic (#7365) 2024-07-04 10:14:54 +01:00
doc Re-implement packaging for GitHub workflows (Linux) (#7361) 2024-07-02 11:23:56 +01:00
ext Synergy 907 client tray language switcher reverts to en (#7038) 2021-10-04 18:51:12 +03:00
res Simplify compile options and use comprehensive edition logic (#7365) 2024-07-04 10:14:54 +01:00
scripts Simplify compile options and use comprehensive edition logic (#7365) 2024-07-04 10:14:54 +01:00
src Simplify compile options and use comprehensive edition logic (#7365) 2024-07-04 10:14:54 +01:00
.clang-format Format all source with Clang and introduce lint workflow (#7364) 2024-07-02 20:07:06 +01:00
.env.example Re-implement packaging for GitHub workflows (Linux) (#7361) 2024-07-02 11:23:56 +01:00
.gitignore Re-implement packaging for GitHub workflows (macOS) (#7353) 2024-06-24 09:36:30 +00:00
.gitmodules Synergy 907 client tray language switcher reverts to en (#7038) 2021-10-04 18:51:12 +03:00
Brewfile Use deps script to make life easier for contribs (#7351) 2024-06-14 15:32:47 +00:00
ChangeLog Simplify compile options and use comprehensive edition logic (#7365) 2024-07-04 10:14:54 +01:00
Chocolatey.config Combine GitHub workflows to reduce config duplication (#7352) 2024-06-19 17:48:18 +01:00
cmake-format.yaml Re-implement packaging for GitHub workflows (Linux) (#7361) 2024-07-02 11:23:56 +01:00
CMakeLists.txt Re-implement packaging for GitHub workflows (Linux) (#7361) 2024-07-02 11:23:56 +01:00
CMakePresets.json Combine GitHub workflows to reduce config duplication (#7352) 2024-06-19 17:48:18 +01:00
config.yaml Re-implement packaging for GitHub workflows (Linux) (#7361) 2024-07-02 11:23:56 +01:00
crowdin.yml Update Crowdin configuration file 2020-05-04 21:07:32 +01:00
cspell.json Re-implement packaging for GitHub workflows (macOS) (#7353) 2024-06-24 09:36:30 +00:00
Doxyfile #6666 Fixed absolute path 2020-04-21 16:54:43 +01:00
LICENSE Delete old build system and cruft 2017-02-07 01:27:15 +00:00
README.md Re-implement packaging for GitHub workflows (Linux) (#7361) 2024-07-02 11:23:56 +01:00
VERSION Re-implement CI auto version increment for packaging (#7354) 2024-06-26 15:46:42 +00:00

Synergy Core

CI CodeQL Analysis SonarCloud Analysis

This is the open source core component of Synergy, a keyboard and mouse sharing tool.

Developer quick start

Simplified instructions for those who want to contribute to development of Synergy Core.

You'll also need to read the quick start companion which contains essential instructions.

Dependencies:

python scripts/install_deps.py

Configure:

Windows:

cmake -B build --preset=windows-release

macOS:

cmake -B build --preset=macos-release

Linux:

cmake -B build --preset=linux-release

Build:

cmake --build build -j8

Test:

./build/bin/unittests

Developer resources

For people who want to contribute to the development of Synergy.

  • Getting started - How to checkout the code from git and use the right branch.
  • Compiling - Instructions on how to compile Synergy Core from source.
  • Text config - Write a text config file when running Synergy Core manually.
  • Command line - Go full manual and run Synergy Core from the command line.
  • Synergy Vintage - Use Synergy on operating systems available between 1995 and 2006.