|
Flint Engine
Modular C++20 2D game engine powered by SDL3
|
Flint itself is MIT-licensed (see [LICENSE](LICENSE)). It also uses, embeds, or builds against several third-party components, each under its own license.
Release packaging note: The exact redistribution requirements of a Flint-based application depend on the components actually included in that application's build and distribution. SDL_image, SDL_ttf, and SDL_mixer may build or link additional codec, font, or media libraries depending on the platform and configuration. Include any notices and license texts required by the components actually shipped.
| Component | Version / revision | License | How Flint uses it |
|---|---|---|---|
| SDL3 | release-3.4.12 | Zlib | Core platform, GPU, windowing, input, timing, and related services |
| SDL3_image | release-3.4.4 | Zlib | Image decoding and texture loading |
| SDL3_ttf | release-3.2.2 | Zlib | TrueType/OpenType font loading and text rendering |
| SDL3_mixer | release-3.2.4 | Zlib | Audio playback and mixing |
| spdlog | v1.17.0 | MIT | Logging |
| {fmt} | Determined by selected spdlog revision | MIT WITH fmt-exception | Formatting implementation bundled by Flint's spdlog configuration |
| tinyxml2 | 11.0.0 | Zlib | .flml UI markup parsing |
| Noto Sans Regular | 2.015 | OFL-1.1 | Default UI font embedded in Flint |
| Premake | 5.0.0-beta3 | BSD-3-Clause | Build-system generator; not part of a shipped game unless redistributed |
Flint uses the {fmt} implementation bundled with spdlog. The exact {fmt} revision therefore depends on the selected spdlog revision.
The bundled {fmt} implementation is licensed under the MIT License with the fmt exception.
src/fonts/noto-sans-regular.cppStandard licenses used by this repository are stored in LICENSES/, including:
Zlib.txtMIT.txtOFL-1.1.txtBSD-3-Clause.txtComponent-specific copyright notices must also be retained where required by the corresponding license. The files in LICENSES/ are SPDX license texts and are not a substitute for component-specific copyright notices.
There is no single rule that applies to every component above. Preserve the materials required by the licenses of the components actually distributed with or incorporated into the application.
The SDL satellite libraries can use additional third-party libraries. The exact set varies by operating system, enabled formats, available system packages, and whether the SDL project is configured to use vendored dependencies.
Flint's current setup scripts make this platform-dependent:
Do not maintain a guessed exhaustive list of SDL transitive dependencies in this file. For a release, use the dependency configuration and license files produced or supplied by the exact builds being shipped and include the notices required by the libraries actually present.
Dependencies downloaded into ignored vendor/ directories by Flint's setup scripts are not necessarily part of Flint's Git history. Their absence from a REUSE-generated SPDX inventory therefore does not mean they are absent from a compiled application.
Premake is build tooling. Its redistribution requirements apply when the Premake binary itself is redistributed, such as when it is included with a Flint source package. It is not incorporated into a Flint-based game merely because Premake was used to generate that game's project files.