Migrated from Make to CMake.

This commit is contained in:
Johannes Findeisen 2026-11-06 19:05:14 +01:00
commit b6ba093000
52 changed files with 1276 additions and 1210 deletions

View file

@ -9,20 +9,21 @@ implied.
## Build or Install
Follow BUILD.md and LINUX.md. Core: `make all test`; GUI: `make gui`, then
Configure first with `cmake -S . -B build -DCMAKE_BUILD_TYPE=Debug`; see
BUILD.md and LINUX.md. Core: `cmake --build build --parallel && cmake --build build --target check`; GUI: `cmake --build build --target gui`, then
`./build/xtc`. Use an existing JACK-compatible server and reconnect with F6.
Connect `midi_in` to a controller, `input` to mono capture and `output` /
`output_right` to left/right playback using your JACK routing application. No
server, physical routing or system configuration is changed automatically.
`xtc --version`, `xtc --help` and `xtc --diagnose` need no display/server.
For a source install stage with
`make install-gui DESTDIR="$PWD/build/stage" PREFIX=/usr`, inspect the stage,
and use your normal deployment process. A user prefix is supported (for example
an absolute path to your `.local` folder). `make uninstall` with the same
DESTDIR/PREFIX removes only that version's known files. See LINUX.md for package
extraction, dependencies and removal. Never use a release built for a different
system ABI without rebuilding/testing it.
For a source installation, configure `-DCMAKE_INSTALL_PREFIX=/usr`, build, then
stage with `DESTDIR="$PWD/build/stage" cmake --install build`. Inspect the stage
and use your normal deployment process. A user prefix such as an absolute path
to `.local` is also supported. Use `cmake --build build --target uninstall`
with the same DESTDIR and configured prefix for exact removal. See LINUX.md for
package extraction, dependencies and removal. Rebuild and test for the intended
system ABI before deployment.
---