Commit graph

1618 commits

Author SHA1 Message Date
Michael Fabian 'Xaymar' Dirks
2e1f00d04d ci: Reduce the number of compilers, and remove some purge statements 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
0765e41063 tools: Remove additional / in header 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
f315544808 ci: Shrink the purge a bit 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
03087257df ci: Purge unwanted compilers 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
4a37e8e09e ci: Enable LTO project-wide 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
bfc3560dd9 ci: Potentially fix ambiguous redirect and fix clang on Ubuntu 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
3284b490ca ci: Fix last commit 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
b6391f13f8 ci: Add more compilers to Ubuntu
May help us figure out unexpected incompatibilities in the future. While we still require C++14 or later, and may even upgrade to C++17 eventually, this should address some concerns about compatibility.

Plus it makes it easier to support things like Flatpak
2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
a5f07e8228 ci: Prefer RelWithDebInfo over Release 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
25c1388050 ci: Don't use libobs-dev on Ubuntu
The provided libobs-dev does not match CMake standards (LibObs instead of libobs like on all other platforms). It also does not provide the obs-frontend-api, or any other required files.
2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
05ded838e5 ci: Actually write obs-studio version to environment 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
a5e55c42d4 ci: Fix missing matrix.qt and fix libobs path on Ubuntu 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
a981b45077 ci: Fix naming of workflows on Ubuntu 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
d0b7d80b81 ci: Fix another error introduced by the split 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
b662f32166 ci: Fix some workflow errors introduced by the split 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
0e1db7fad5 ci: Split workflows by platform
This splits the whole thing by the supported platforms to hopefully aid with future problem searching. While the combined script was nice, and allowed reducing the working overhead significantly, it also had collisions in what should have been defined.
2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
4b28f87d5c ci: Just disable the warning/error mess 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
461acec47d ci: More attempts at fixing whatever breaks XCode 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
7d3e3ec1b5 ci: Update to LLVM/Clang 16.0.3 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
1d1db7c994 ci: Mixed up URL and Hash 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
7cd8ab8da2 ci: Another attempt at fixing GITHUB_ENV issues
Why has the previous code worked? Did it ever work?
2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
ceca90fa38 ci: Attempt to fix env issues 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
12434db5e4 ci: Remove additional $ from command 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
ace861c578 tools: Fix header generation for new files 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
acef006198 ci, tools: Use new buildspec.json for depedendencies 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
fa8d66b951 code: Disable useless alignment styling and update standard 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
c000061758 cmake: Fix version(REQUIRE) statement 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
af41557e4d cmake: Require CMake 3.26 configuration 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
d2dbb3335d ci: Remove libOBS cache
Might fix the weird issue with additional compiler flags being set.
2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
0476185a65 code: Fix support for libAVCodec 59.x and beyond 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
5ce59b4c12 cmake: Update clang integration to 1.0 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
81ed7241ff cmake, code: Remove Displacement Filter completely 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
3bc23341d5 cmake: Disable features by default based on their stability 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
eea4cadca2 cmake: Improve bootstrapping and versioning code
Should fix the "'u': undeclared identifier" problem when code is generated from a shallow clone. Also fixes the issue where the clang submodule is required instead of optional.
2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
e32bd8cdae ci: Create RelWithDebInfo builds instead of Debug 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
132ddc1d51 third-party: Update to OBS Studio 29.1
The underlying build system has changed. This only hotfixes the issue, but a proper fix must be implemented eventually.
2023-05-14 03:25:07 +02:00
Xaymar
0f739135e6 project: Adjust issue templates
Signed-off-by: Xaymar <info@xaymar.com>
2023-04-24 16:17:27 +02:00
Michael Fabian 'Xaymar' Dirks
5b2e28a723 code: Disable profiling on MacOS
This may address a nullptr crash on MacOS with several features.
2023-04-05 19:21:13 +02:00
Michael Fabian 'Xaymar' Dirks
9735e1bcec ui/obs-browser-widget: Pull in browser-panel.hpp to fix MacOS
MacOS complains that QCefWidget is an undefined type, while all other compilers are fine.
2023-04-05 19:08:31 +02:00
Michael Fabian 'Xaymar' Dirks
0fa12f1029 ui/obs-browser-widget: Switch header order to fix Qt AutoMoc bug
Qt's CMake integration does not pass the C++ standard to AutoMoc, resulting in weird parsing issues (see https://bugreports.qt.io/browse/QTBUG-73263).
2023-04-05 19:08:30 +02:00
Michael Fabian 'Xaymar' Dirks
db23069eb6 ui/obs-browser-widget: Add missing includes for Unix compilers 2023-04-05 19:08:30 +02:00
Michael Fabian 'Xaymar' Dirks
ce19d25d71 ui/obs-browser-widget: Fix bad include path for standalone builds 2023-04-05 19:08:30 +02:00
Michael Fabian 'Xaymar' Dirks
5a58aa8a6b ui/obs-browser-widget: Fix strange layout issue in Qt6
When a QCefWidget is alone and all by itself, no layout updates are performed on the "window". This causes a problem where it just stays in place, instead of moving with the rest of the elements. The fix to this appears to be to just add a different Qt widget into the layout.

Looks stupid, is stupid, but works anyway. Qt is weird.
2023-04-05 19:08:30 +02:00
Michael Fabian 'Xaymar' Dirks
3187a165ba ui/obs-browser-widget: Allow directly modifying underlying widget 2023-04-05 19:08:30 +02:00
Michael Fabian 'Xaymar' Dirks
d073889126 ui/obs-browser-widget: Prevent unwanted crashes or corruptions on Wayland
The obs-browser module does not work well on Wayland, so removing it there appears to be the best option for now.
2023-04-05 19:08:29 +02:00
Michael Fabian 'Xaymar' Dirks
f8dc0532e1 cmake: Require an up to date C standard as well, plus extensions
Fixes some strange compiler issues.
2023-04-05 19:08:29 +02:00
Michael Fabian 'Xaymar' Dirks
dadd56b31d ui/obs-browser-widget: Integrate OBS Browser Source as a Qt Widget
Provides us with an easy and clean way to use Browser Sources as a Qt enabled widget.
2023-04-05 19:08:29 +02:00
Michael Fabian 'Xaymar' Dirks
54859e9f14 util/library: Allow loading of obs_module_t
Allows us to pass an obs_module_t into util::library::load() for cleaner code. This requires an additional flag so we don't unload a module that is still in use by libOBS.
2023-04-05 19:08:29 +02:00
Michael Fabian 'Xaymar' Dirks
10921f56e3 ci: Add validation for Copyright headers
Strictly enforce up-to-date copyright headers using CI/CD.
2023-04-05 18:59:08 +02:00
Michael Fabian 'Xaymar' Dirks
5a3954ae0e project: Fix License, License headers and Copyright information
Fixes several files incorrectly stated a different license from the actual project, as well as the copyright headers included in all files. This change has no effect on the licensing terms, it should clear up a bit of confusion by contributors. Plus the files get a bit smaller, and we have less duplicated information across the entire project.

Overall the project is GPLv2 if not built with Qt, and GPLv3 if it is built with Qt. There are no parts licensed under a different license, all have been adapted from other compatible licenses into GPLv2 or GPLv3.
2023-04-05 18:59:08 +02:00