chore: Convert simu/simulator/companion to SDL2 (#3085)

* chore(pc): convert simu/simulator/companion to use SDL2

* switch companion builds to SDL2 - OSX is not converted
the linux change is done a bit hacky, it should be done by updating the EdgeTX docker container

* update build system setup scripts

* add compatibility for old and new SDL2 cmake integration

* fix windows installer

* fix simulator audio on windows by using DirectSound vie SDL2

* fix windows audio with SDL2
enable simu for windows builds

* remove workflow changes for linux builds, this needs to be fixed in the build environment

* fix OSX build, thx @pafleraf

* fix windows audio for companion and simulator with SDL2

* select SDL2 branch of the build-docker environment

* Revert "select SDL2 branch of the build-docker environment"

This reverts commit da801609d78e1aed513ad7d9d8ab3ebded2900b9.

* fix tests with SDL2
This commit is contained in:
Malte Langermann
2023-02-22 20:32:51 +10:00
committed by GitHub
parent cbec97d76e
commit 8d91c0ae95
21 changed files with 72 additions and 67 deletions
+9 -6
View File
@@ -19,6 +19,11 @@
* GNU General Public License for more details.
*/
#if defined(SIMU_AUDIO)
#include <SDL.h>
#undef main
#endif
#include "fx.h"
#include "FXExpression.h"
#include "FXPNGImage.h"
@@ -29,11 +34,6 @@
#include <ctype.h>
#include "targets/simu/simulcd.h"
#if defined(SIMU_AUDIO)
#include <SDL.h>
#undef main
#endif
#if LCD_W > 212
#define LCD_ZOOM 1
#else
@@ -94,11 +94,14 @@ FXDEFMAP(OpenTxSim) OpenTxSimMap[] = {
FXIMPLEMENT(OpenTxSim, FXMainWindow, OpenTxSimMap, ARRAYNUMBER(OpenTxSimMap))
OpenTxSim::OpenTxSim(FXApp* a):
FXMainWindow(a, "OpenTX Simu", nullptr, nullptr, DECOR_ALL, 20, 90, 0, 0)
FXMainWindow(a, "EdgeTX Simu", nullptr, nullptr, DECOR_ALL, 20, 90, 0, 0)
{
bmp = new FXPPMImage(getApp(), nullptr, IMAGE_OWNED|IMAGE_KEEP|IMAGE_SHMI|IMAGE_SHMP, W2, H2);
#if defined(SIMU_AUDIO)
#if defined(_WIN32) || defined(_WIN64)
putenv("SDL_AUDIODRIVER=directsound");
#endif
SDL_Init(SDL_INIT_AUDIO);
#endif