diff options
Diffstat (limited to 'games/solarus')
-rw-r--r-- | games/solarus/README | 12 | ||||
-rw-r--r-- | games/solarus/cmake.patch | 25 | ||||
-rw-r--r-- | games/solarus/fullscreen.patch | 30 | ||||
-rw-r--r-- | games/solarus/solarus.SlackBuild | 31 | ||||
-rw-r--r-- | games/solarus/solarus.info | 8 |
5 files changed, 87 insertions, 19 deletions
diff --git a/games/solarus/README b/games/solarus/README index f54102fae4..8aa8852ed8 100644 --- a/games/solarus/README +++ b/games/solarus/README @@ -1,13 +1,7 @@ Solarus is a free and open-source game engine, licensed under GPL v3. It is written from scratch in C++ and uses SDL2 (it's not an emulator). -Development began in 2006. The goal of the engine is to allow people to -create their own Action-RPG games (also called Zelda-like games). It is -totally independent from Nintendo. +Development began in 2006. The goal of the engine is to allow people +to create their own Action-RPG games (also called Zelda-like games). It +is totally independent from Nintendo. Solarus will require game data like zsdx. - -Optional Dependency - -qt5 is an optional dependency for the GUI frontend. - -qt5 is *required* if you are going to build solarus-quest-editor. diff --git a/games/solarus/cmake.patch b/games/solarus/cmake.patch new file mode 100644 index 0000000000..1661f39485 --- /dev/null +++ b/games/solarus/cmake.patch @@ -0,0 +1,25 @@ +From 17f2f33d8733aa7dcb5e52fc9043447758a74869 Mon Sep 17 00:00:00 2001 +From: orbea <orbea@riseup.net> +Date: Fri, 4 Sep 2020 09:21:45 -0700 +Subject: [PATCH] cmake: Fix compatibility with cmake 3.5.2. + +cmake 3.5.2 does not have VERSION_GREATER_EQUAL or VERSION_LESS_EQUAL. +--- + cmake/modules/FindGLM.cmake | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/cmake/modules/FindGLM.cmake b/cmake/modules/FindGLM.cmake +index 32ce5058d..e3905b6c3 100644 +--- a/cmake/modules/FindGLM.cmake ++++ b/cmake/modules/FindGLM.cmake +@@ -52,6 +52,6 @@ find_package_handle_standard_args(GLM + ) + + # Enable GLM experimental extensions for GLM 0.9.9.0 to 0.9.9.3 +-if(GLM_VERSION_STRING VERSION_GREATER_EQUAL 0.9.9.0 AND GLM_VERSION_STRING VERSION_LESS_EQUAL 0.9.9.3) ++if((GLM_VERSION_STRING VERSION_EQUAL 0.9.9.0 OR GLM_VERSION_STRING VERSION_GREATER 0.9.9.0) AND (GLM_VERSION_STRING VERSION_EQUAL 0.9.9.3 OR GLM_VERSION_STRING VERSION_LESS 0.9.9.3)) + add_definitions(-DGLM_ENABLE_EXPERIMENTAL) + endif() +-- +2.25.0 + diff --git a/games/solarus/fullscreen.patch b/games/solarus/fullscreen.patch new file mode 100644 index 0000000000..efc4d6a4c9 --- /dev/null +++ b/games/solarus/fullscreen.patch @@ -0,0 +1,30 @@ +From cf67a03567030893993dc2d75a2a515cada371a4 Mon Sep 17 00:00:00 2001 +From: orbea <orbea@riseup.net> +Date: Fri, 23 Oct 2020 09:50:33 -0700 +Subject: [PATCH] Workaround SDL_WINDOW_FULLSCREEN_DESKTOP issues. + +With some window managers the fullscreen for solarus will be +lost when changing workspaces. + +Setting SDL_VIDEO_MINIMIZE_ON_FOCUS_LOSS=0 in the environment +works around this issue, but its more convenient doing it +directly in solarus. +--- + src/graphics/Video.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/graphics/Video.cpp b/src/graphics/Video.cpp +index b88cdc884..dd41bf20c 100644 +--- a/src/graphics/Video.cpp ++++ b/src/graphics/Video.cpp +@@ -674,6 +674,7 @@ void set_default_video_mode() { + Debug::check_assertion(context.default_video_mode != nullptr, + "Default video mode was not initialized"); + ++ SDL_SetHint(SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS, "0"); + set_fullscreen(false); + set_video_mode(*context.default_video_mode); + } +-- +GitLab + diff --git a/games/solarus/solarus.SlackBuild b/games/solarus/solarus.SlackBuild index dac61ebeb8..8db923eba3 100644 --- a/games/solarus/solarus.SlackBuild +++ b/games/solarus/solarus.SlackBuild @@ -1,8 +1,8 @@ -#!/bin/sh +#!/bin/bash # Slackware build script for solarus -# Copyright 2015-2019 Hunter Sezen California, USA +# Copyright 2015-2020 Hunter Sezen California, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -22,10 +22,13 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +cd $(dirname $0) ; CWD=$(pwd) + PRGNAM=solarus -VERSION=${VERSION:-1.6.0} -BUILD=${BUILD:-1} +VERSION=${VERSION:-1.6.4} +BUILD=${BUILD:-2} TAG=${TAG:-_SBo} +PKGTYPE=${PKGTYPE:-tgz} if [ -z "$ARCH" ]; then case "$( uname -m )" in @@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then esac fi -CWD=$(pwd) +# If the variable PRINT_PACKAGE_NAME is set, then this script will report what +# the name of the created package would be, and then exit. This information +# could be useful to other scripts. +if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then + echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE" + exit 0 +fi + TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} @@ -75,6 +85,14 @@ else GUI=OFF fi +# cmake: Fix compatiblity with cmake-3.5.2. +# https://gitlab.com/solarus-games/solarus/-/merge_requests/1353 +patch -p1 < $CWD/cmake.patch + +# Workaround SDL_WINDOW_FULLSCREEN_DESKTOP issues. +# https://gitlab.com/solarus-games/solarus/-/merge_requests/1355 +patch -p1 -i $CWD/fullscreen.patch + mkdir -p build cd build cmake \ @@ -86,6 +104,7 @@ cd build -DSOLARUS_LIBRARY_INSTALL_DESTINATION:PATH=lib${LIBDIRSUFFIX} \ -DSOLARUS_DEFAULT_QUEST=/usr/share/games/$PRGNAM/zsdx \ -DSOLARUS_GUI=$GUI \ + -DCMAKE_SKIP_RPATH=TRUE \ -DCMAKE_BUILD_TYPE=Release .. make make install DESTDIR=$PKG @@ -107,4 +126,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc cat $CWD/doinst.sh > $PKG/install/doinst.sh cd $PKG -/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE diff --git a/games/solarus/solarus.info b/games/solarus/solarus.info index 380e103910..8d443ad982 100644 --- a/games/solarus/solarus.info +++ b/games/solarus/solarus.info @@ -1,10 +1,10 @@ PRGNAM="solarus" -VERSION="1.6.0" +VERSION="1.6.4" HOMEPAGE="https://www.solarus-games.org/" -DOWNLOAD="https://gitlab.com/solarus-games/solarus/-/archive/v1.6.0/solarus-v1.6.0.tar.gz" -MD5SUM="c5ecc1254d61a2af4b85c15259e95a76" +DOWNLOAD="https://gitlab.com/solarus-games/solarus/-/archive/v1.6.4/solarus-v1.6.4.tar.gz" +MD5SUM="d06a3258910cb113d28e1349ca437125" DOWNLOAD_x86_64="" MD5SUM_x86_64="" -REQUIRES="OpenAL SDL2_image SDL2_ttf libmodplug luajit physfs" +REQUIRES="glm libmodplug luajit physfs" MAINTAINER="Hunter Sezen" EMAIL="orbea@riseup.net" |