Commit graph

207 commits

Author SHA1 Message Date
Olivier Goffart
fd7fc5ab9b C++, remove the experimental flag
The platform namespace is now always enabled.
2023-07-28 10:36:08 +02:00
Olivier Goffart
3a807e46c1
Renderer feature refactor 2023-07-27 19:11:24 +02:00
Olivier Goffart
136130781c Update corrosion 2023-07-27 10:39:51 +02:00
Olivier Goffart
3a2359f107 C++ Pointer dispatch API 2023-07-25 14:03:40 +02:00
ogoffart
aebaa7d6c9 Bump version number to 1.2.0 2023-07-25 10:44:53 +00:00
Olivier Goffart
ed0e4726d1 C++: use esp-backtrace as a panic handler on the esp platform 2023-07-24 12:20:51 +02:00
Simon Hausmann
e9286c1189 Make it possible to build the slint-cpp crate as a static library
This isn't supported on desktop yet, but on MCU it is.

Cargo is instructed to build a dylib and a staticlib, but corrosion
instructs rustc to build only either dylib or staticlib.

Corrosion listens to the BUILD_SHARED_LIBS option and will change the
default for the Slint::Slint INTERFACE_LINK_LIBRARIES to either
slint-cpp-shared or slint-cpp-static. This way the selection is
transparent to the users.
2023-07-21 18:32:45 +02:00
Olivier Goffart
1805e6c4c1 C++: Make it working to have experimental withoud std 2023-07-18 13:54:59 +02:00
Olivier Goffart
7cffad2c3f C++: add a STD feature enabled by default 2023-07-18 12:44:20 +02:00
Olivier Goffart
a1bf77383f
C++: Add a mechanism to #define features that are enabled (#3103) 2023-07-18 11:49:00 +02:00
Olivier Goffart
e7c306cf60
Add SLINT_TARGET_CARGO_FLAGS cmake variable
* Add SLINT_TARGET_CARGO_FLAGS cmake variable
2023-07-17 15:43:22 +02:00
Aurindam Jana
5a4a7fee63
Update royalty free license to 1.1 (#2994) 2023-07-10 10:12:11 +02:00
Olivier Goffart
9112eaebfb C++: don't use deprecated corrosion variable 2023-07-05 21:48:01 +02:00
Olivier Goffart
aa8ef4e302 C++: add a "std" feature to the slint-cpp crate
And make it no_std otherwise

This is a first step towards getting C++ on MCU (#2136)
2023-07-05 21:48:01 +02:00
Olivier Goffart
2023ebc9a9 C++: Fix build with or without the interpeter feature 2023-07-05 09:54:03 +02:00
ogoffart
c8c9496722 Bump version number to 1.1.1 2023-06-26 12:50:02 +00: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
ogoffart
641cab0e75 Bump version number to 1.1.0 2023-06-15 16:01:28 +00:00
Simon Hausmann
2e7cc49567 Initial AccessKit support
This change adds initial accessibility support for the winit backend
through use of AccessKit.
2023-06-15 13:20:14 +02:00
Olivier Goffart
d8b0737b1d Translations: disable gettext by default for C++ and the viewer
Can cause problem when compiling on windows or mac
2023-06-08 16:56:10 +02:00
Simon Hausmann
7485fd6f70
janitor: Update to Corrosion 0.4.1 release (#2807) 2023-06-03 12:39:38 +02:00
Olivier Goffart
b634b1fa7f corrosion: update to beta2 2023-06-01 09:34:19 +02:00
Olivier Goffart
1036c0d082 c++: remove IMPORTED_NO_SONAME as corrosion sets it now 2023-06-01 09:34:19 +02:00
Olivier Goffart
9a103b9c37 Test beta version of corrosion 2023-06-01 09:34:19 +02:00
Simon Hausmann
dd04e044d0 Fix build of C++ OpenGL underlay example
Test for the right feature flag and fix the compatibility feature names.
2023-05-23 17:26:45 +02:00
Simon Hausmann
481288d489 Initial support for rendering with Skia and Vulkan
Closes #1546
2023-05-09 08:58:35 +02:00
ogoffart
dfd5fc38b3 Bump version number to 1.0.3 2023-04-26 14:04:08 +00:00
ogoffart
53cce5bf44 Bump version number to 1.0.2 2023-04-26 11:33:16 +02:00
ogoffart
bd63218412 Bump version number to 1.0.1 2023-04-18 14:56:40 +00:00
Simon Hausmann
7e08231650 C++: Enable /bigobj by default when building with MSVC
Large C++ files generated from .slint files can cause link problems with MSVC.
When that happens, MSVC itself suggests /bigobj as remedy.

It's not apparent that there's a downside to using this option, apart from
backwaords binary compatibility - which is not a concern for us.

The discussion at https://developercommunity.visualstudio.com/t/Enable-bigobj-by-default/1031214 suggests that perhaps this
will become the default one day.

To simplify our examples and avoid users running into this, let's enable it by default.
2023-04-14 13:13:03 +02:00
Simon Hausmann
08c0f1b34e Clean up hack to detect if we're doing a top-level build
... by introducing an explicit variable.

cc #2075
2023-04-04 09:06:38 +02:00
Simon Hausmann
13a5d3c5cd Fix builds of applications using Slint via FetchContent (part 2)
Amend 8406e1050d by fixing the condition
to apply the install_name when the cache variable used to detect package
builds is defined, not _not_ defined.

cc #2075
2023-04-03 17:36:34 +02:00
Simon Hausmann
8406e1050d Fix builds of applications using Slint via FetchContent
Set install_name to include rpath as per commit
916b927f4f only when doing top-level
builds that are meant to be installed via "make install".

cc #2075
2023-04-03 17:01:47 +02:00
Simon Hausmann
916b927f4f macOS: Fix installed libslint_cpp.dylib containing references to the build directory
Thanks to @jschwe, there's a way to instruct corrosion to supply link
flags that set the install name and work around cargo/rustc behavior.

In exchange, now that we're using rpath, to be able to continue to run
the tests and examples against a build tree, we need to set
CMAKE_BUILD_RPATH.

Fixes #2075
2023-04-03 15:59:01 +02:00
Simon Hausmann
714a91e928 cmake: Add the SLINT_FEATURE_RENDERER_WINIT_SOFTWARE option to enable the software renderer 2023-03-31 08:58:04 +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
52a70b7d89 cmake: Bump minimal cmake version to 3.23 2023-03-27 09:27:44 +02:00
Jyotirmoy Roy
f376741167
Rename BUILD_TESTING cache variable to SLINT_BUILD_TESTING #2362 (#2364)
Rename BUILD_TESTING cache variable to SLINT_BUILD_TESTING

Fixes #2362
2023-03-12 10:33:44 +01:00
Olivier Goffart
4df25b7f15 Janitor: upgrade corrosion 2023-03-09 09:14:34 +01:00
Simon Hausmann
2d878de7ac Bump corrosion
Fixes #2245
2023-02-17 16:46:49 +01:00
Simon Hausmann
aee97b475e janitor: remove dead CMake code 2023-02-16 13:53:20 +01:00
Olivier Goffart
fd6c80a590 Set MSRV to 1.66 2023-02-16 09:03:22 +01:00
ogoffart
e7f48512ee Bump version number to 1.0.0 2023-02-03 11:07:15 +01:00
Olivier Goffart
83ea50761a Janitor: upgrade corrosion 2023-01-19 11:48:28 +01:00
Olivier Goffart
8d0cdc6ec2 C++: cmake: move the build instruction for the tests in the tests dir 2023-01-17 10:21:11 +01:00
ogoffart
ce07d078ce Bump version number to 0.3.4 2022-12-16 09:36:15 +00:00
Simon Hausmann
c4d5f079b5 Partial fix for cmake build with Skia against Yocto
Latest corrosion handles quoting differently and would escape the empty quoted
string, so pass an empty string instead, for the host cflags.
2022-12-14 11:40:03 +01:00
Simon Hausmann
a63c7bcada Use the fresh new corrosion release 2022-12-13 12:10:16 +01:00
Simon Hausmann
61dc5e31b4 Fix running of tests with multi-config generators
Now that the binaries are placed in their respective
CMAKE_RUNTIME_OUTPUT_DIRECTORY, that's config suffixed, let's use the
ctest signature that accepts a cmake target and thus automatically
figures out the correct location of the executable.
2022-12-13 11:39:34 +01:00