Add Ninja to the list of required tools (#2498)

We have plenty of command lines that explicitly use `-GNinja`, so let's
make Ninja a tool that is required. That's easier than changing all the
command lines to have two variants (use XX or YY if you have Ninja
installed), and we know that the dependency handling works best with
Ninja.

Fixes #2495

Co-authored-by: Olivier Goffart <olivier.goffart@slint-ui.com>
This commit is contained in:
Simon Hausmann 2023-04-11 16:35:28 +02:00 committed by GitHub
parent e1d98735fb
commit a5bea16596
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 5 additions and 3 deletions

View file

@ -15,7 +15,7 @@ Slint comes with a CMake integration that automates the compilation step of the
offers a CMake target for convenient linkage. offers a CMake target for convenient linkage.
*Note*: We recommend using the Ninja generator of CMake for the most efficient build and `.slint` dependency tracking. *Note*: We recommend using the Ninja generator of CMake for the most efficient build and `.slint` dependency tracking.
You can select the CMake Ninja backend by passing `-GNinja` or setting the `CMAKE_GENERATOR` environment variable to `Ninja`. Install [Ninja](https://ninja-build.org) and select the CMake Ninja backend by passing `-GNinja` or setting the `CMAKE_GENERATOR` environment variable to `Ninja`.
### Building from Sources ### Building from Sources

View file

@ -6,7 +6,7 @@ Slint comes with a CMake integration that automates the compilation step of the
offers a CMake target for convenient linkage. offers a CMake target for convenient linkage.
*Note*: We recommend using the Ninja generator of CMake for the most efficient build and `.slint` dependency tracking. *Note*: We recommend using the Ninja generator of CMake for the most efficient build and `.slint` dependency tracking.
You can select the CMake Ninja backend by passing `-GNinja` or setting the `CMAKE_GENERATOR` environment variable to `Ninja`. Install [Ninja](https://ninja-build.org) and select the CMake Ninja backend by passing `-GNinja` or setting the `CMAKE_GENERATOR` environment variable to `Ninja`.
## Binary Packages ## Binary Packages

View file

@ -41,6 +41,7 @@ environment variable `RUST_FONTCONFIG_DLOPEN=on`. This can be useful for [cross-
To use Slint from C++, the following extra dependencies are needed: To use Slint from C++, the following extra dependencies are needed:
- **[cmake](https://cmake.org/download/)** (3.21 or newer) - **[cmake](https://cmake.org/download/)** (3.21 or newer)
- **[Ninja](https://ninja-build.org)** (Optional, or remove the `-GNinja` when invoking `cmake`)
- A C++ compiler that supports C++20 (e.g., **MSVC 2022 17.3** on Windows, or **GCC 10**) - A C++ compiler that supports C++20 (e.g., **MSVC 2022 17.3** on Windows, or **GCC 10**)
### Node.js API (optional) ### Node.js API (optional)

View file

@ -3,7 +3,8 @@
In this tutorial, we use C++ as the host programming language. We also support other programming languages like In this tutorial, we use C++ as the host programming language. We also support other programming languages like
[Rust](https://slint-ui.com/docs/rust/slint/) or [JavaScript](https://slint-ui.com/docs/node/). [Rust](https://slint-ui.com/docs/rust/slint/) or [JavaScript](https://slint-ui.com/docs/node/).
You will need a development environment that can compile C++20 with CMake 3.21. You will need a development environment that can compile C++20, [CMake 3.21](https://cmake.org/download/),
and we recommend [Ninja](https://ninja-build.org) for `-GNinja`.
We don't provide binaries of Slint yet, so we will use the CMake integration that will automatically build We don't provide binaries of Slint yet, so we will use the CMake integration that will automatically build
the tools and library from source. Since it's implemented in the Rust programming language, this means that the tools and library from source. Since it's implemented in the Rust programming language, this means that
you also need to install a Rust compiler (1.66 or newer). You can easily install a Rust compiler you also need to install a Rust compiler (1.66 or newer). You can easily install a Rust compiler