aboutsummaryrefslogtreecommitdiff
path: root/games/opensonic
diff options
context:
space:
mode:
authorTobias Kortkamp <tobik@FreeBSD.org>2019-02-18 11:39:08 +0000
committerTobias Kortkamp <tobik@FreeBSD.org>2019-02-18 11:39:08 +0000
commit5024c6f6995ce9c95d01b7d7ebf969810c28c051 (patch)
tree5226b9ab22a1c495c53718b7bf621ae3509c640e /games/opensonic
parent1c5e23607e1edd8687c24bc969dc188f7e26a96e (diff)
downloadports-5024c6f6995ce9c95d01b7d7ebf969810c28c051.tar.gz
ports-5024c6f6995ce9c95d01b7d7ebf969810c28c051.zip
games/opensonic: Prepare for Allegro 4.4.3, add wrapper script
- struct LOGG in liblogg from Allegro 4.4.3 was made opaque. Opensonic directly manipulates it however. Integrate liblogg from Allegro 4.4.2 to preserve this port. - Add a wrapper script so that opensonic can find its data files when you run 'opensonic' or start it from your desktop PR: 235478 Submitted by: tobik Approved by: devel@stasyan.com (maintainer timeout, 2 weeks)
Notes
Notes: svn path=/head/; revision=493257
Diffstat (limited to 'games/opensonic')
-rw-r--r--games/opensonic/Makefile14
-rw-r--r--games/opensonic/distinfo3
-rw-r--r--games/opensonic/files/opensonic.in3
-rw-r--r--games/opensonic/files/patch-CMakeLists.txt49
-rw-r--r--games/opensonic/files/patch-src_core_audio.c11
5 files changed, 73 insertions, 7 deletions
diff --git a/games/opensonic/Makefile b/games/opensonic/Makefile
index 53963da32838..d44167c81e5d 100644
--- a/games/opensonic/Makefile
+++ b/games/opensonic/Makefile
@@ -3,10 +3,11 @@
PORTNAME= opensonic
PORTVERSION= 0.1.4
-PORTREVISION= 4
+PORTREVISION= 5
CATEGORIES= games
MASTER_SITES= SF/opensnc/Open%20Sonic/${PORTVERSION}
DISTNAME= opensnc-src-${PORTVERSION}
+DISTFILES= ${DISTNAME}${EXTRACT_SUFX}
MAINTAINER= devel@stasyan.com
COMMENT= Game based on the "Sonic the Hedgehog" universe
@@ -25,10 +26,15 @@ DESKTOP_ENTRIES="${PORTNAME}" \
false
USES= cmake
-CONFIGURE_ENV+= _ALLEGRO_LIBS="`allegro-config --libs`" \
+USE_GITHUB= nodefault
+GH_TUPLE= t6:loggcompat:4.4.2:loggcompat
+
+CONFIGURE_ENV= _ALLEGRO_LIBS="`allegro-config --libs`" \
_ALLEGRO_VERSION="`allegro-config --version`"
-CFLAGS+= -I${LOCALBASE}/include
+CFLAGS+= -I${LOCALBASE}/include -I${WRKSRC_loggcompat}
+
+SUB_FILES= opensonic
post-patch:
@${REINPLACE_CMD} -e 's,/usr/bin,${PREFIX}/bin,g' \
@@ -37,6 +43,6 @@ post-patch:
post-install:
${INSTALL_DATA} ${WRKSRC}/icon.png ${STAGEDIR}${PREFIX}/share/pixmaps/opensonic.png
- ${LN} -s ${DATADIR}/opensonic ${STAGEDIR}${PREFIX}/bin/opensonic
+ ${INSTALL_SCRIPT} ${WRKDIR}/opensonic ${STAGEDIR}${PREFIX}/bin
.include <bsd.port.mk>
diff --git a/games/opensonic/distinfo b/games/opensonic/distinfo
index 39ce131469d1..383f58dc05a5 100644
--- a/games/opensonic/distinfo
+++ b/games/opensonic/distinfo
@@ -1,2 +1,5 @@
+TIMESTAMP = 1549471447
SHA256 (opensnc-src-0.1.4.tar.gz) = 3a4c3fa9538ee27c04b5ea848c9ad0a83f335471936d4617a18d3648c42588e9
SIZE (opensnc-src-0.1.4.tar.gz) = 10525059
+SHA256 (t6-loggcompat-4.4.2_GH0.tar.gz) = 481fe569959eefa92d0babeca27709b2efcf7a815cd5c49596b6c0403db76a4e
+SIZE (t6-loggcompat-4.4.2_GH0.tar.gz) = 3105
diff --git a/games/opensonic/files/opensonic.in b/games/opensonic/files/opensonic.in
new file mode 100644
index 000000000000..cf012b35bc3d
--- /dev/null
+++ b/games/opensonic/files/opensonic.in
@@ -0,0 +1,3 @@
+#!/bin/sh
+cd %%DATADIR%%
+exec ./opensonic "$@"
diff --git a/games/opensonic/files/patch-CMakeLists.txt b/games/opensonic/files/patch-CMakeLists.txt
index dde98b06b8c1..ac00c3383c2d 100644
--- a/games/opensonic/files/patch-CMakeLists.txt
+++ b/games/opensonic/files/patch-CMakeLists.txt
@@ -1,6 +1,49 @@
---- ./CMakeLists.txt.orig 2010-09-19 18:31:26.000000000 +0000
-+++ ./CMakeLists.txt 2014-01-09 19:17:45.443017601 +0000
-@@ -410,16 +410,11 @@
+--- CMakeLists.txt.orig 2010-09-19 18:31:26 UTC
++++ CMakeLists.txt
+@@ -82,12 +82,6 @@ IF(NOT LJPGALLEG)
+ MESSAGE(FATAL_ERROR "Fatal error: libjpgalleg not found! ${RTFM}")
+ ENDIF(NOT LJPGALLEG)
+
+-# LOGG: liblogg, libogg, libvorbis, libvorbisfile
+-FIND_LIBRARY(LLOGG NAMES logg PATH "${CMAKE_LIBRARY_PATH}")
+-IF(NOT LLOGG)
+- MESSAGE(FATAL_ERROR "Fatal error: liblogg not found! ${RTFM}")
+-ENDIF(NOT LLOGG)
+-
+ FIND_LIBRARY(LOGG NAMES ogg PATH "${CMAKE_LIBRARY_PATH}")
+ IF(NOT LOGG)
+ MESSAGE(FATAL_ERROR "Fatal error: libogg not found! ${RTFM}")
+@@ -150,6 +144,7 @@ SET(
+ src/core/util.c
+ src/core/v2d.c
+ src/core/video.c
++ ../loggcompat-4.4.2/logg-4.4.2.c
+
+ src/scenes/util/editorgrp.c
+ src/scenes/util/grouptree.c
+@@ -250,7 +245,7 @@ IF(UNIX)
+ SET(GAME_SRCS ${GAME_SRCS} src/misc/iconlin.c)
+ ADD_EXECUTABLE(${GAME_UNIXNAME} ${GAME_SRCS})
+ SET_TARGET_PROPERTIES(${GAME_UNIXNAME} PROPERTIES LINK_FLAGS ${ALLEGRO_UNIX_LIBS})
+- TARGET_LINK_LIBRARIES(${GAME_UNIXNAME} m logg vorbisfile vorbis ogg jpgalleg z png loadpng)
++ TARGET_LINK_LIBRARIES(${GAME_UNIXNAME} m vorbisfile vorbis ogg jpgalleg z png loadpng)
+ SET_TARGET_PROPERTIES(${GAME_UNIXNAME} PROPERTIES COMPILE_FLAGS "-Wall -O2 ${CFLAGS} ${CFLAGS_EXTRA}")
+ ENDIF(UNIX)
+
+@@ -392,10 +387,10 @@ IF(WIN32)
+ # Other properties
+ IF(MSVC)
+ SET_TARGET_PROPERTIES(${GAME_UNIXNAME} PROPERTIES COMPILE_FLAGS "/D_CRT_SECURE_NO_DEPRECATE /D__WIN32__ /D__MSVC__ ${CFLAGS} ${CFLAGS_EXTRA}")
+- TARGET_LINK_LIBRARIES(${GAME_UNIXNAME} logg vorbisfile vorbis ogg jpgalleg loadpng alleg png z)
++ TARGET_LINK_LIBRARIES(${GAME_UNIXNAME} vorbisfile vorbis ogg jpgalleg loadpng alleg png z)
+ ELSE(MSVC)
+ SET_TARGET_PROPERTIES(${GAME_UNIXNAME} PROPERTIES COMPILE_FLAGS "-Wall -O2 -ansi ${CFLAGS} ${CFLAGS_EXTRA}")
+- TARGET_LINK_LIBRARIES(${GAME_UNIXNAME} m logg vorbisfile vorbis ogg jpgalleg loadpng alleg png z)
++ TARGET_LINK_LIBRARIES(${GAME_UNIXNAME} m vorbisfile vorbis ogg jpgalleg loadpng alleg png z)
+ EXECUTE_PROCESS(COMMAND ${CMAKE_RC_COMPILER} -O coff -o src/misc/iconwin.res -i src/misc/iconwin.rc)
+ SET_TARGET_PROPERTIES(${GAME_UNIXNAME} PROPERTIES LINK_FLAGS "src/misc/iconwin.res")
+ ENDIF(MSVC)
+@@ -410,16 +405,11 @@ SET_TARGET_PROPERTIES(${GAME_UNIXNAME} PROPERTIES PROJ
# Installing on *nix
IF(UNIX)
diff --git a/games/opensonic/files/patch-src_core_audio.c b/games/opensonic/files/patch-src_core_audio.c
new file mode 100644
index 000000000000..d04bad240369
--- /dev/null
+++ b/games/opensonic/files/patch-src_core_audio.c
@@ -0,0 +1,11 @@
+--- src/core/audio.c.orig 2019-02-06 16:44:28 UTC
++++ src/core/audio.c
+@@ -18,7 +18,7 @@
+ */
+
+ #include <allegro.h>
+-#include <logg.h>
++#include <logg-4.4.2.h>
+ #include <stdlib.h>
+ #include "audio.h"
+ #include "osspec.h"