From 9e245d13e888d04b7cc4c39247cd0d3ec3a980ff Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Wed, 17 Feb 2021 21:57:31 +1000
Subject: [PATCH] Aquaria: add recipe
---
.../aquaria/additional-files/aquaria.rdef.in | 86 ++++++++++
.../aquaria/additional-files/aquaria.sh | 16 ++
.../additional-files/default_usersettings.xml | 77 +++++++++
.../aquaria/aquaria-1.1.3~git06072020.recipe | 129 +++++++++++++++
.../aquaria-1.1.3~git06072020.patchset | 151 ++++++++++++++++++
5 files changed, 459 insertions(+)
create mode 100644 games-arcade/aquaria/additional-files/aquaria.rdef.in
create mode 100755 games-arcade/aquaria/additional-files/aquaria.sh
create mode 100644 games-arcade/aquaria/additional-files/default_usersettings.xml
create mode 100644 games-arcade/aquaria/aquaria-1.1.3~git06072020.recipe
create mode 100644 games-arcade/aquaria/patches/aquaria-1.1.3~git06072020.patchset
diff --git a/games-arcade/aquaria/additional-files/aquaria.rdef.in b/games-arcade/aquaria/additional-files/aquaria.rdef.in
new file mode 100644
index 000000000..38882f8f4
--- /dev/null
+++ b/games-arcade/aquaria/additional-files/aquaria.rdef.in
@@ -0,0 +1,86 @@
+resource app_flags B_SINGLE_LAUNCH;
+
+resource app_version {
+ major = @MAJOR@,
+ middle = @MIDDLE@,
+ minor = @MINOR@,
+
+ variety = B_APPV_FINAL,
+ internal = 0,
+
+ short_info = "Aquaria",
+ long_info = "@LONG_INFO@"
+};
+
+resource app_signature "@APP_SIGNATURE@";
+
+resource vector_icon array {
+ $"6E636966100303518C02000602B2AA48BC7FA53D5F85B399154ADD7346BC6D00"
+ $"DF307AFFFFFFFF03FFDCEB020016023B28293B34F5BAD9BD3ACE5E4A6632481F"
+ $"2B00FFFF9A0352ABB3020006023C3557BAD6903B1BC33C6B2E482E634AA80600"
+ $"FFFFFFFF219B8B037703680321467C032EA1AB020006023A4BC63AB452BAAB09"
+ $"3A43E44ABA5B48C32600FFFFFFFF229E88030D3E6D03C8619D030C302E031B72"
+ $"76030830380400710E020FBE70B420BE70B420BEBEB49BBF90B560BF21B504C0"
+ $"0BB638C26EB571C1A8B5DAC4B3B4EEC914B6A2C70EB591CA14B6EBC8C0B54BC8"
+ $"F5B5B3C984B5D3CA35B78DC9D9B6BBCA97B9DDC87DBE0BC9E1BC33C6F7C06CC3"
+ $"72C4D7C551C2B9C2F1C2FBC550C0134DC1C3C5ABBF65C659BE01C60FBEB8C726"
+ $"BC02C73CB79455B9AFC68BB5DFC2E0B6A2C44AB5FAC2AAB6AFC23EB6C8C274B6"
+ $"BCC107B708BEF8B5ACBFC5B69BBED3B524BE70B420BE81B4AEBE70B4200206C3"
+ $"6DB4CAC36DB4CAC518B3D5C8C0B54BC74FB403C8F5B5B3C914B6A2CA14B6EBC7"
+ $"0EB591C26EB571C4B3B4EEC1A8B5DABF90B560C00BB638C0DAB605C36DB4CAC2"
+ $"46B573C36DB4CA021BB517BC3BB517BC3BB56DB788BEF8B5ACBABAB50ABFC5B6"
+ $"9BC23EB6C8C107B708C39EB728C17DB79BC084B6F9C2B3B880C146BB08C24DBA"
+ $"2AC0DDBB7CBFD3BC83BFCBBE35BFB7BC53BFC7BB92C03BBB5FBF80BCB4BEBDBE"
+ $"E7BF37BDD7BDCBBDE9BF88BA90BF68BBF4BFC1B93EBEB3BBA3BECCBB22BE41BC"
+ $"92BD51BE81BE16BDC9BD5ABCF9BE17B9E0BE44BB27BD0EBB72BCCFBF87BD59BD"
+ $"B5BCA9BFD4BC6EC07DBCEDC096BC4ABF8CBC39BDA1BC61BE92BC2DBE43BC01BF"
+ $"87BC21BEE7BB63BE29BB11BB37BB77BCA1BB18BC4DBB6DBE6FBB0DBD68BA7CBD"
+ $"F0BBADBF58BBA8BEE5B9DABF2FB7B3BC43B8B3BD9DB818BD97B9D3BFCFB939BE"
+ $"C5B89ABF7CB6AEBD6AB78EBE5FB714BE68B7CEC06BB766BF6EB6BCBFC5B5AFBD"
+ $"8928BE9FB5AFBDFFB5D6BEE8B5C3BE74B5D0BF59B5B6C03BB5D9BFCEB534BEF8"
+ $"B517BC3BB4E5BD98B517BC3B0208C23EB6C8C23EB6C8C274B6BCC2E0B6A2C2AA"
+ $"B6AFC389B6FDC47DB823C40DB789C305BA41BF7DBDF9C10ABBEEBF97BD7DBFD3"
+ $"BC83BFB7BD01BFCBBE35C146BB08C0DDBB7CC24DBA2AC17DB79BC2B3B880C084"
+ $"B6F9C23EB6C8C39EB728C23EB6C80205B8BCC16FB8BCC16FB87FC1FCB97DC2CC"
+ $"B905C2A0B998C26EB91CC1EBB953C22BB9ECC19FBA61C2D0BAE5C1C4BB91C1C1"
+ $"B8BCC16FB9E2C126B8BCC16F0025C47DB823C47DB823C4F8B832C594B775C523"
+ $"B770C59BB7DDC580B8ADC589B846C537B92DC498BA22C4EAB9AAC2C8BB8EC0C4"
+ $"BFBEC130BD6DC0CFC0F8C055C39BC183C2D7C04BC396C03BC38AC042C38FBFF2"
+ $"C32CBF39C286BFB5C29CBFFCC46CBE0DC81FBF4EC698BDA8C872BCDDC916BD42"
+ $"C8C2BBD8C945BAADC7D7BB90C812B9CAC756BBAFC6A135C6E7BAE5C6CFB99AC5"
+ $"FAB955C788B93DC5C4B7FBC58AB854C624B7E9C46CB7F2C22BB806C34BB715C1"
+ $"2DB5D6BEE8B610C03DB5C3BE74B5AFBD89B5AFBDFF28BE9FB7CEC06BB6BCBFC5"
+ $"B766BF6EB6AEBD6AB714BE68B78EBE5FB9D3BFCFB89ABF7CB939BEC5B7B3BC43"
+ $"B818BD97B8B3BD9DBBADBF58B9DABF2FBBA8BEE5BB6DBE6FBA7CBDF0BB0DBD68"
+ $"BB11BB37BB18BC4DBB77BCA1BC01BF87BB63BE29BC21BEE7BC39BDA1BC2DBE43"
+ $"BC61BE92BC6EC07DBC4ABF8CBCEDC096BCCFBF87BCA9BFD4BD1ABF77BD2ABFF9"
+ $"BDA4BF1EBCCB43BDCEC298BDA8C1AEBE5BC1A1BED6BF50BEAEC06EBE9A40BE34"
+ $"C0A7BE71C039BE32C008BEBDBEE7BE89BF7BBF37BDD7BFC7BB92BF80BCB4C03B"
+ $"BB5FBFD3BC83BFB7BC53BFB7BD01BF7DBDF9BF97BD7DC10ABBEEC47DB823C305"
+ $"BA41C47DB8230206CA35B78DCA35B78DCB01B9E4C8A2BE4BC9F0BC5BC6BDC0FD"
+ $"C282C619C4DDC3CCC2CCC5A8C372C4D7C318C53AC551C2B9C87DBE0BC6F7C06C"
+ $"C9E1BC33CA35B78DCA97B9DDCA35B78D0209C498BA22C498BA22C4EAB9AAC580"
+ $"B8ADC537B92DC5B3BA73C659BE01C653BC57C60FBEB8C550C013C5ABBF65C3E8"
+ $"C251C10BC6C3C28CC497C01DC5E9C0FCC3F8C184C4A6C2EFC3EAC40BC01AC424"
+ $"C1E7C3CDBF1BC4C1BDA0C562BE9EC459BC80C498BA22C46DBB4DC498BA22020B"
+ $"BCCFBF87BCCFBF87BD59BDB5BE17B9E0BD0EBB72BE44BB27BD51BE81BD5ABCF9"
+ $"BE16BDC9BEB3BBA3BE41BC92BECCBB22BF88BA90BFC1B93EBF68BBF4BEBDBEE7"
+ $"BDCBBDE9BE89BF7BBE34C0A7BE32C008BE71C039BED6BF50BE9A40BEAEC06EBD"
+ $"CEC298BE5BC1A1BDA8C1AEBD2ABFF9BCCB43BDA4BF1EBCCFBF87BD1ABF77BCCF"
+ $"BF870207C0C4BFBEC0C4BFBEC130BD6DC498BA22C2C8BB8EC46DBB4DC4C1BDA0"
+ $"C459BC80C562BE9EC40BC01AC3CDBF1BC424C1E7C0FCC3F8C2EFC3EAC0C2C3DC"
+ $"C055C39BC08AC3BDC183C2D7C0C4BFBEC0CFC0F8C0C4BFBE0207C10BC6C3C10B"
+ $"C6C3C28CC497C550C013C3E8C2514DC1C3C372C4D7C2F1C2FBC318C53AC282C6"
+ $"19C2CCC5A8C11FC7B6BEB4CB36BFE9C977BED9CA84BF8BC94BBF39C9E9C006C8"
+ $"6FC10BC6C3C08EC79EC10BC6C30205B8BCC16FB8BCC16FB9E2C126BA61C2D0BB"
+ $"91C1C1BAE5C1C4B91CC1EBB9ECC19FB953C22BB97DC2CCB998C26EB905C2A0B8"
+ $"BCC16FB87FC1FCB8BCC16F0204BF39C286BF39C286BFB5C29CC03BC38ABFF2C3"
+ $"2CC093C564BE0DC81FBF99C724BF4EC698BF39C286BFFCC46CBF39C2860209C0"
+ $"3BC38AC03BC38AC042C38FC055C39BC04BC396C08AC3BDC0FCC3F8C0C2C3DCC1"
+ $"84C4A6C10BC6C3C01DC5E9C08EC79EBF8BC94BC006C86FBF50C8E0BE99C83FBE"
+ $"F8C887BDFEC87BBCDDC916BD90C941BD42C8C2BE0DC81FBDA8C872BF99C724C0"
+ $"3BC38AC093C564C03BC38A0F0A0F070001020305070A30222201178422040A00"
+ $"070001020305070A1001178422040A010100000A020101000A030102000A0401"
+ $"03000A05020405000A060106000A070107000A080108000A090109000A0B010A"
+ $"000A0C010B000A0D010C000A0E010D00"
+};
diff --git a/games-arcade/aquaria/additional-files/aquaria.sh b/games-arcade/aquaria/additional-files/aquaria.sh
new file mode 100755
index 000000000..c02eb2eac
--- /dev/null
+++ b/games-arcade/aquaria/additional-files/aquaria.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+gamedir=$(dirname $(realpath $0))
+if [ -z "$AQUARIA_DATA_PATH" ]; then
+ exec $gamedir/AquariaLauncher
+ exit
+fi
+
+settingsDir="`finddir B_USER_SETTINGS_DIRECTORY`"
+
+mkdir -p $settingsDir/Aquaria/preferences
+cp -n $gamedir/default_usersettings.xml $settingsDir/Aquaria/preferences/usersettings.xml
+cp -rf $gamedir/files/* $AQUARIA_DATA_PATH
+
+cd $gamedir
+exec ./Aquaria
diff --git a/games-arcade/aquaria/additional-files/default_usersettings.xml b/games-arcade/aquaria/additional-files/default_usersettings.xml
new file mode 100644
index 000000000..369ada97f
--- /dev/null
+++ b/games-arcade/aquaria/additional-files/default_usersettings.xml
@@ -0,0 +1,77 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/games-arcade/aquaria/aquaria-1.1.3~git06072020.recipe b/games-arcade/aquaria/aquaria-1.1.3~git06072020.recipe
new file mode 100644
index 000000000..f8f3d4e1a
--- /dev/null
+++ b/games-arcade/aquaria/aquaria-1.1.3~git06072020.recipe
@@ -0,0 +1,129 @@
+SUMMARY="A 2D fantasy underwater action-adventure game"
+DESCRIPTION="Aquaria is an award-winning action-adventure game set in a \
+massive underwater world teeming with life and filled with ancient secrets. \
+Join Naija, a lone underwater adventurer, as she travels from hidden caves \
+shrouded in darkness, to beautiful, sunlit oases in search of her past. \
+She'll uncover hidden treasures, explore uncharted waters, and do battle \
+with massive underwater beasts to learn the truth about her family \
+and reveal the secret of Aquaria.
+
+* Massive, beautiful world to explore
+* Compelling story woven through beautiful visuals, music and voice-overs
+* Innovative mouse-based control scheme and magic-based combat
+* 175 unique creatures to discover, interact and do battle with
+* Dozens of treasures to attain
+* Cooking system for creation of powerful items
+* Unlock all the Steam Achievements"
+HOMEPAGE="https://github.com/AquariaOSE/Aquaria/"
+COPYRIGHT="Bit Blot, LLC"
+LICENSE="GNU GPL v2"
+REVISION="1"
+srcGitRev="c37f6ea6d81a85005ef718e2958872bda3ee0c30"
+SOURCE_URI="https://github.com/AquariaOSE/Aquaria/archive/$srcGitRev.tar.gz"
+CHECKSUM_SHA256="65b0c3ca8beb1a780f0a54fc0b3731efd6552a34e56013a27a53f0f78ad81768"
+SOURCE_DIR="Aquaria-$srcGitRev"
+srcGitRev2="9a77c718e1a61d378aadcc60efe8f5e78d14c685"
+SOURCE_URI_2="https://github.com/EXL/BeGameLauncher/archive/$srcGitRev2.tar.gz"
+CHECKSUM_SHA256_2="f4884f28d7e87f94f1f64b5eec2d5f7e5cc3503c85d950c4b78eb7736a314144"
+SOURCE_DIR_2="BeGameLauncher-$srcGitRev2"
+PATCHES="aquaria-$portVersion.patchset"
+ADDITIONAL_FILES="
+ aquaria.rdef.in
+ aquaria.sh
+ default_usersettings.xml
+ "
+
+ARCHITECTURES="!x86_gcc2 x86_64 ?x86"
+SECONDARY_ARCHITECTURES="x86"
+
+PROVIDES="
+ aquaria$secondaryArchSuffix = $portVersion
+ app:Aquaria
+ "
+REQUIRES="
+ haiku$secondaryArchSuffix
+ lib:libfreetype$secondaryArchSuffix
+ lib:libGL$secondaryArchSuffix
+ lib:libglu$secondaryArchSuffix
+ lib:libSDL2_2.0$secondaryArchSuffix
+ lib:libogg$secondaryArchSuffix
+ lib:libopenal$secondaryArchSuffix
+ lib:libpng16$secondaryArchSuffix
+ lib:libvorbis$secondaryArchSuffix
+ lib:libz$secondaryArchSuffix
+ "
+
+BUILD_REQUIRES="
+ haiku${secondaryArchSuffix}_devel
+ devel:libfreetype$secondaryArchSuffix
+ devel:libGL$secondaryArchSuffix
+ devel:libglu$secondaryArchSuffix
+ devel:libSDL2_2.0$secondaryArchSuffix
+ devel:libogg$secondaryArchSuffix
+ devel:libopenal$secondaryArchSuffix
+ devel:libpng16$secondaryArchSuffix
+ devel:libvorbis$secondaryArchSuffix
+ devel:libz$secondaryArchSuffix
+ "
+BUILD_PREREQUIRES="
+ cmd:cmake
+ cmd:gcc$secondaryArchSuffix
+ cmd:ld$secondaryArchSuffix
+ cmd:make
+ cmd:pkg_config$secondaryArchSuffix
+ "
+
+BUILD()
+{
+ mkdir -p build
+ cd build
+ cmake .. \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DAQUARIA_INTERNAL_ZLIB=OFF \
+ -DAQUARIA_INTERNAL_PNG=OFF \
+ -DAQUARIA_INTERNAL_FREETYPE=OFF \
+ -DAQUARIA_INTERNAL_OGGVORBIS=OFF \
+ -DAQUARIA_INTERNAL_SDL=OFF \
+ -DAQUARIA_INTERNAL_OPENAL=OFF \
+ -DAQUARIA_USE_SDL2=ON \
+ -DFREETYPE_INCLUDE_DIRS=/system/$relativeIncludeDir/freetype2 \
+ -DOGGVORBIS_INCLUDE_DIRS=/system/$relativeIncludeDir/vorbis \
+ -DSDL2_INCLUDE_DIR=/system/$relativeIncludeDir/SDL2
+
+ make $jobArgs
+
+ cd $sourceDir2
+ mkdir -p build
+ cd build
+ cmake .. \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DLAUNCHER=aquaria
+ make $jobArgs
+}
+
+INSTALL()
+{
+ mkdir -p $appsDir/Aquaria
+
+ cp -R files $appsDir/Aquaria
+ cp build/aquaria $appsDir/Aquaria/Aquaria
+ cp $sourceDir2/build/AquariaLauncher $appsDir/Aquaria/AquariaLauncher
+ cp $portDir/additional-files/aquaria.sh $appsDir/Aquaria
+ cp $portDir/additional-files/default_usersettings.xml $appsDir/Aquaria
+
+ local APP_SIGNATURE="application/x-vnd.aquaria"
+ local MAJOR="`echo "$portVersion" | cut -d. -f1`"
+ local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
+ local MINOR="`echo "$portVersion" | cut -d. -f3 | cut -d~ -f1`"
+ local LONG_INFO="$SUMMARY"
+ sed \
+ -e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
+ -e "s|@MAJOR@|$MAJOR|" \
+ -e "s|@MIDDLE@|$MIDDLE|" \
+ -e "s|@MINOR@|$MINOR|" \
+ -e "s|@LONG_INFO@|$LONG_INFO|" \
+ $portDir/additional-files/aquaria.rdef.in > $sourceDir/aquaria.rdef
+
+ addResourcesToBinaries $sourceDir/aquaria.rdef $appsDir/Aquaria/Aquaria
+ addAppDeskbarSymlink $appsDir/Aquaria/AquariaLauncher Aquaria
+}
diff --git a/games-arcade/aquaria/patches/aquaria-1.1.3~git06072020.patchset b/games-arcade/aquaria/patches/aquaria-1.1.3~git06072020.patchset
new file mode 100644
index 000000000..ca0ceb4e6
--- /dev/null
+++ b/games-arcade/aquaria/patches/aquaria-1.1.3~git06072020.patchset
@@ -0,0 +1,151 @@
+From 05c14612165d1df231c71e470422b32766111458 Mon Sep 17 00:00:00 2001
+From: Gerasim Troeglazov <3dEyes@gmail.com>
+Date: Wed, 17 Feb 2021 19:01:47 +1000
+Subject: Fix for Haiku
+
+
+diff --git a/Aquaria/DSQ.cpp b/Aquaria/DSQ.cpp
+index dc18033..4fb29c8 100644
+--- a/Aquaria/DSQ.cpp
++++ b/Aquaria/DSQ.cpp
+@@ -49,6 +49,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ #include "ttvfs.h"
+ #endif
+
++#ifdef __HAIKU__
++#include
++#include
++#endif
++
+ #ifdef BBGE_BUILD_UNIX
+ #include
+ #include
+@@ -966,7 +971,11 @@ This build is not yet final, and as such there are a couple things lacking. They
+ // PHYSFS_addToSearchPath("gfx.zpk",0 );
+
+ bool mipmapsEnabled=true;
++#ifdef __HAIKU__
++ bool fullscreen = false;
++#else
+ bool fullscreen = true;
++#endif
+ int joystickMode = 0;
+ int dsq_filter = 0;
+ voiceOversEnabled = true;
+@@ -1014,6 +1023,20 @@ This build is not yet final, and as such there are a couple things lacking. They
+ else
+ debugLog("VoiceOvers Disabled");
+
++#ifdef __HAIKU__
++ SDL_Init(SDL_INIT_VIDEO);
++
++ BScreen *scr = new BScreen(B_MAIN_SCREEN_ID);
++ if (fullscreen) {
++ user.video.resx = scr->Frame().Width() + 1;
++ user.video.resy = scr->Frame().Height() + 1;
++ } else {
++ if (user.video.resx >= scr->Frame().Width() + 1 && user.video.resy >= scr->Frame().Height() + 1) {
++ user.video.resx = 800;
++ user.video.resy = 600;
++ }
++ }
++#endif
+
+ #ifdef _DEBUG
+ if (!createWindow(800, 600, user.video.bits, false, "Aquaria"))
+@@ -1035,7 +1058,7 @@ This build is not yet final, and as such there are a couple things lacking. They
+ debugLog("OK");
+ */
+
+-#ifdef BBGE_BUILD_SDL
++#if defined(BBGE_BUILD_SDL) && !defined(__HAIKU__)
+ SDL_Init(SDL_INIT_VIDEO);
+ if (fullscreen && !sdlVideoModeOK(user.video.resx, user.video.resy, user.video.bits))
+ {
+diff --git a/Aquaria/Game.cpp b/Aquaria/Game.cpp
+index b6847f4..4df3fa1 100644
+--- a/Aquaria/Game.cpp
++++ b/Aquaria/Game.cpp
+@@ -40,6 +40,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+ #include "ToolTip.h"
+
++#ifdef __HAIKU__
++#include
++#include
++#endif
++
+ std::vector allowedMaps;
+
+ Vector worldLeftCenter(217,250), worldRightCenter(575, 250);
+@@ -8752,6 +8757,18 @@ void Game::onOptionsSave()
+ || dsq->user.video.full != dsq->user_backup.video.full
+ || dsq->user.video.vsync != dsq->user_backup.video.vsync)
+ {
++#ifdef __HAIKU__
++ if (dsq->user.video.full != dsq->user_backup.video.full) {
++ if (dsq->user.video.full) {
++ BScreen scr(B_MAIN_SCREEN_ID);
++ dsq->user.video.resx = scr.Frame().Width() + 1;
++ dsq->user.video.resy = scr.Frame().Height() + 1;
++ } else {
++ dsq->user.video.resx = 800;
++ dsq->user.video.resy = 600;
++ }
++ }
++#endif
+ dsq->resetGraphics(dsq->user.video.resx, dsq->user.video.resy, dsq->user.video.full);
+ if (dsq->confirm("", "graphics", false, 10)) {
+ } else {
+diff --git a/BBGE/Core.cpp b/BBGE/Core.cpp
+index 2e3be81..450af28 100644
+--- a/BBGE/Core.cpp
++++ b/BBGE/Core.cpp
+@@ -39,6 +39,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ #include
+ #endif
+
++#ifdef __HAIKU__
++#include
++#include
++#endif
++
+ #if BBGE_BUILD_WINDOWS
+ #include
+ #include
+@@ -912,6 +917,8 @@ Core::Core(const std::string &filesystem, const std::string& extraDataDir, int n
+ // "/home/icculus/.Aquaria" or something. Spaces are okay.
+ #ifdef BBGE_BUILD_MACOSX
+ const std::string prefix("Library/Application Support/");
++ #elif defined(__HAIKU__)
++ const std::string prefix("config/settings/");
+ #else
+ const std::string prefix(".");
+ #endif
+@@ -1975,7 +1982,7 @@ bool Core::initGraphicsLibrary(int width, int height, bool fullscreen, int vsync
+ Uint32 flags = 0;
+ flags = SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN;
+ if (fullscreen)
+- flags |= SDL_WINDOW_FULLSCREEN;
++ flags |= SDL_WINDOW_FULLSCREEN_DESKTOP;
+ gScreen = SDL_CreateWindow(appName.c_str(), SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, width, height, flags);
+ if (gScreen == NULL)
+ {
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 941fc25..5a7ae55 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -740,6 +740,10 @@ IF(WIN32)
+ SET(OPTIONAL_LIBS ${OPTIONAL_LIBS} "ws2_32")
+ ENDIF(WIN32)
+
++IF(HAIKU)
++ SET(OPTIONAL_LIBS ${OPTIONAL_LIBS} "be")
++ENDIF(HAIKU)
++
+ IF(MACOSX)
+ SET(OPTIONAL_LIBS ${OPTIONAL_LIBS} "-framework Carbon")
+ SET(OPTIONAL_LIBS ${OPTIONAL_LIBS} "-framework Cocoa")
+--
+2.30.0
+