Simon Hausmann
a9a4dfa4eb
slint-compiler: Guess output format from file extension if not present
...
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, beta) (push) Blocked by required conditions
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, stable) (push) Blocked by required conditions
CI / build_and_test (ubuntu-22.04, nightly) (push) Blocked by required conditions
CI / node_test (windows-2022) (push) Blocked by required conditions
CI / python_test (macos-14) (push) Blocked by required conditions
CI / python_test (ubuntu-22.04) (push) Blocked by required conditions
CI / python_test (windows-2022) (push) Blocked by required conditions
CI / cpp_test_driver (macos-13) (push) Blocked by required conditions
CI / cpp_test_driver (ubuntu-22.04) (push) Blocked by required conditions
CI / cpp_test_driver (windows-2022) (push) Blocked by required conditions
CI / cpp_cmake (macos-14, 1.85) (push) Blocked by required conditions
CI / cpp_cmake (ubuntu-22.04, stable) (push) Blocked by required conditions
CI / cpp_cmake (windows-2022, nightly) (push) Blocked by required conditions
CI / cpp_package_test (push) Blocked by required conditions
CI / vsce_build_test (push) Blocked by required conditions
CI / mcu (pico-st7789, thumbv6m-none-eabi) (push) Blocked by required conditions
CI / mcu (pico2-st7789, thumbv8m.main-none-eabihf) (push) Blocked by required conditions
CI / mcu (stm32h735g, thumbv7em-none-eabihf) (push) Blocked by required conditions
CI / mcu-embassy (push) Blocked by required conditions
CI / ffi_32bit_build (push) Blocked by required conditions
CI / docs (push) Blocked by required conditions
CI / wasm (push) Blocked by required conditions
CI / wasm_demo (push) Blocked by required conditions
CI / tree-sitter (push) Blocked by required conditions
CI / updater_test (0.3.0) (push) Blocked by required conditions
CI / fmt_test (push) Blocked by required conditions
CI / esp-idf-quick (push) Blocked by required conditions
CI / android (push) Blocked by required conditions
CI / miri (push) Blocked by required conditions
CI / test-figma-inspector (push) Blocked by required conditions
This is more intuitive that the C++ default, especially in light of additional output languages in the future.
To be on the safe side, this also passes the explicit -f cpp on the CMake side.
2025-07-11 08:32:03 +02:00
Nathan Collins
ff0d450778
SLINT_TARGET_SOURCES sets target_include_directories using a generator expression
...
CI / miri (push) Has been cancelled
CI / node_test (ubuntu-22.04) (push) Has been cancelled
CI / node_test (windows-2022) (push) Has been cancelled
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, macos-14, stable) (push) Has been cancelled
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, 1.85) (push) Has been cancelled
CI / python_test (macos-14) (push) Has been cancelled
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, beta) (push) Has been cancelled
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, stable) (push) Has been cancelled
CI / build_and_test (ubuntu-22.04, 1.85) (push) Has been cancelled
CI / build_and_test (ubuntu-22.04, nightly) (push) Has been cancelled
CI / python_test (ubuntu-22.04) (push) Has been cancelled
CI / python_test (windows-2022) (push) Has been cancelled
CI / cpp_test_driver (macos-13) (push) Has been cancelled
CI / cpp_test_driver (ubuntu-22.04) (push) Has been cancelled
CI / mcu-embassy (push) Has been cancelled
CI / cpp_test_driver (windows-2022) (push) Has been cancelled
CI / cpp_cmake (macos-14, 1.85) (push) Has been cancelled
CI / cpp_cmake (ubuntu-22.04, stable) (push) Has been cancelled
CI / cpp_cmake (windows-2022, nightly) (push) Has been cancelled
CI / ffi_32bit_build (push) Has been cancelled
CI / cpp_package_test (push) Has been cancelled
CI / vsce_build_test (push) Has been cancelled
CI / mcu (pico-st7789, thumbv6m-none-eabi) (push) Has been cancelled
CI / mcu (pico2-st7789, thumbv8m.main-none-eabihf) (push) Has been cancelled
CI / mcu (stm32h735g, thumbv7em-none-eabihf) (push) Has been cancelled
CI / updater_test (0.3.0) (push) Has been cancelled
CI / fmt_test (push) Has been cancelled
CI / esp-idf-quick (push) Has been cancelled
CI / android (push) Has been cancelled
CI / test-figma-inspector (push) Has been cancelled
This ensures that the binary directory path isn't exposed in the
target's `INTERFACE_INCLUDE_DIRECTORIES`.
This prevents CMake errors when we `install` a target with generated
Slint sources in the include directory:
```
[cmake] CMake Error in slint/cpp/CMakeLists.txt:
[cmake] Target "slint-demo-cpp" INTERFACE_INCLUDE_DIRECTORIES property contains
[cmake] path:
[cmake]
[cmake] "/path/to/build/slint/cpp"
[cmake]
[cmake] which is prefixed in the build directory.
```
2025-06-27 14:39:45 +02:00
Simon Hausmann
154d877d9f
CMake: Add support for overriding the translation domain via a target property
...
This is useful in environments such as esp-idf, where the component name is something awkward like __esp_idf_main or so.
2025-03-14 14:46:29 +01:00
Olivier Goffart
278e140147
Fix typo
2025-02-25 09:18:46 +01:00
Olivier Goffart
1e814c9bdc
Stabilize the sdf-fonts feature
...
Enable the SDF feature by default in our compiler binaries
(Still disabled by default for other users because it takes up compile
time for something they probably don't need)
2025-02-19 21:24:53 +01:00
Olivier Goffart
014b58c81a
C++: allow to configure bundled translation
2024-11-18 15:57:08 +01:00
ArcticLampyrid
132e09130e
feat(cpp): evaluate generator expression in the context of target
...
Link: https://cmake.org/cmake/help/latest/manual/cmake-generator-expressions.7.html#genex:TARGET_GENEX_EVAL
2024-10-02 11:41:09 +02:00
ArcticLampyrid
c145345827
feat(cpp): support generator expression for SLINT_EMBED_RESOURCES
& SLINT_SCALE_FACTOR
2024-10-02 11:41:09 +02:00
Simon Hausmann
c25a03d6f7
C++: Make it possible to split up the C++ code generated for a .slint file
...
Add a COMPILATION_UNITS argument to slint_target_sources that defines into how many .cpp files to split up a .slint file. The new default is now one.
2024-08-20 15:53:24 +02:00
Simon Hausmann
a727d87796
CMake: Make it possible to override the scale factor
...
Co-Authored-By: Olivier Goffart <olivier.goffart@slint.dev>
2024-08-14 11:00:50 +02:00
Simon Hausmann
964de46c51
C++: Make the system testing feature automatically enable debug info
...
While we haven't settled on the debug info feature and are
merely controlling it via environment variable, setting that can be very hard - especially when using Yocto.
To make life easier, let's do in C++ what we can't easily do for Rust but would like to:
When enabling system testing, automatically emit the necessary debug info, by setting the environment variable when calling the compiler.
This is done by adding SLINT_ENABLED_FEATURES and SLINT_DISABLED_FEATURES properties
on the Slint::Slint target that - as lists - export the list of features and their status.
This way we can compile Slint in once place and safely in the CMake code running in application
scope check about the available features.
2024-07-04 13:39:13 +02:00
Simon Hausmann
6f2a6c3f09
CMake: Add support for LIBRARY_PATHS to slint_target_sources
...
This makes it possible to use component libraries with C++.
2024-06-05 11:07:12 -07:00
Aurindam Jana
3523e86359
Simplify commercial license ( #3063 )
...
Base the commercial license on the Royalty-free license adding clauses pertaining to the fees.
2024-05-31 14:06:17 +02:00
Aurindam Jana
9a3aa265d5
Update Royalty-free license ( #5257 )
...
Add clarification that Application may not expose Slint APIs.
2024-05-31 10:53:19 +02:00
Olivier Goffart
4856f387ee
C++ Todo example: add test
2024-04-22 13:54:28 +02:00
Aurindam Jana
0cfeec1a31
Update Slint Community License ( #4994 )
...
Updated the version from 1.1 to 1.2
Renamed the header to "Slint Royalty-free Desktop, Mobile, and Web Applications License"
Added definition of "Mobile Application" and grant of right
Moved "Limitations" to 3rd section and "License Conditions - Attributions" to 2nd section
Added flexibility to choose between showing "MadeWithSlint" as a dialog/splash screen or on a public webpage
Moved the para on copyright notices to section under "Limitations"
2024-04-15 15:18:55 +02:00
Wilston Oreo
bef532b5fc
Optional C++ namespaces ( #4759 )
...
Co-authored-by: Michael Winkelmann <michael@winkelmann.site>
2024-03-06 19:43:11 +01:00
Olivier Goffart
e46704465b
C++: DEPFILE is supported on most generator in recent cmake versions
2023-08-30 09:54:03 +02:00
Olivier Goffart
de0836d1a0
C++: Fix ninja always rebuilding the .slint file
...
two bugs:
- If the .slint file did not contain any import, the depfile would have
no dependencies, and as a result, ninja would consider that it is
always dirty.
- In case the binary dir is a sub directory, the dependencies were
relative to the wrong directory. Thgis is because the behavior
changed in some version of cmake (see https://cmake.org/cmake/help/latest/policy/CMP0116.html )
to avoid any problem, use the absolute paths
Fixes #3261
2023-08-30 09:54:03 +02:00
Aurindam Jana
5a4a7fee63
Update royalty free license to 1.1 ( #2994 )
2023-07-10 10:12:11 +02:00
Olivier Goffart
11dea135f7
Domain: slint-ui.com -> slint.dev
2023-06-16 10:55:08 +02:00
Tobias Hunger
04d1229685
Fix licnese information using xtask
2023-06-16 09:14:20 +02:00
Olivier Goffart
ce25fb65a6
Pass the translation domain to the runtime
...
For rust, it uses the crate name, for others, it needs to be passed in
the comment line
2023-06-05 16:34:59 +02:00
Tobias Hunger
6934b7b779
cmake: Fix SLINT_EMBED_RESOURCES
...
* Do not use the initialize_from feature introduced in cmake 3.23
2023-03-27 16:18:05 +02:00
Tobias Hunger
c5ecade881
Rename embed-resources parameters fro the Slint compiler
2023-03-27 09:27:44 +02:00
Tobias Hunger
5915f73918
cmake: Add support for SLINT_EMBED_RESOURCES as a target property
2023-03-27 09:27:44 +02:00
Olivier Goffart
29d28dc73e
C++: don't force the SLINT_STYLE cmake variable
...
Keep the default if unset, otherwise use whatever SLINT_STYLE was passed
2022-07-20 12:18:18 +02:00
Tobias Hunger
4230ac2572
Update copyright information to reflect name change
...
Also run resue over the codebase and fix complaints from that tool.
2022-02-09 10:27:47 +01:00
Simon Hausmann
ef822cc1e8
Clean up target_sources macro
...
Finish the renaming inside
2022-02-02 10:39:38 +01:00
Olivier Goffart
03534039d6
Replace more .60 by .slint
...
Mainly an automated change with
git grep -O"sed -i 's/\.60/.slint/g'" -w "\.60"
and some manual checks
2022-02-02 10:12:31 +01:00
Simon Hausmann
b1a70f9e58
Rename the SixtyFPS CMake interface
2022-02-02 09:58:26 +01:00