aboutsummaryrefslogtreecommitdiff
path: root/games/hyperrogue
diff options
context:
space:
mode:
authorDmitry Marakasov <amdmi3@FreeBSD.org>2017-02-27 13:08:07 +0000
committerDmitry Marakasov <amdmi3@FreeBSD.org>2017-02-27 13:08:07 +0000
commitdd4a398b3d9b273cd738308d7a382b550ad3b741 (patch)
tree894f6ac33325c047a40aa5380affbb373fb255af /games/hyperrogue
parent686b43f00cba818b9a0480d69297951c6e8bb510 (diff)
downloadports-dd4a398b3d9b273cd738308d7a382b550ad3b741.tar.gz
ports-dd4a398b3d9b273cd738308d7a382b550ad3b741.zip
Notes
Diffstat (limited to 'games/hyperrogue')
-rw-r--r--games/hyperrogue/Makefile48
-rw-r--r--games/hyperrogue/distinfo3
-rw-r--r--games/hyperrogue/files/patch-Makefile.am20
-rw-r--r--games/hyperrogue/pkg-descr20
-rw-r--r--games/hyperrogue/pkg-plist15
5 files changed, 106 insertions, 0 deletions
diff --git a/games/hyperrogue/Makefile b/games/hyperrogue/Makefile
new file mode 100644
index 000000000000..19140ee9936f
--- /dev/null
+++ b/games/hyperrogue/Makefile
@@ -0,0 +1,48 @@
+# Created by: Dmitry Marakasov <amdmi3@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME= hyperrogue
+PORTVERSION= 8.3j
+CATEGORIES= games
+
+MAINTAINER= amdmi3@FreeBSD.org
+COMMENT= Roguelike in a non-euclidean world
+
+LICENSE= GPLv2+
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+LIB_DEPENDS= libpng.so:graphics/png
+
+USE_GITHUB= yes
+GH_ACCOUNT= zenorogue
+
+USES= autoreconf localbase
+GNU_CONFIGURE= yes
+USE_SDL= sdl mixer gfx ttf
+USE_GL= gl
+
+# remove -O2, otherwise clang takes gigabytes of memory
+CFLAGS:= ${CFLAGS:C/-O[0-9]//} -DFHS
+CXXFLAGS:= ${CXXFLAGS:C/-O[0-9]//} -DFHS
+
+PORTDOCS= README.md
+
+DESKTOP_ENTRIES="HyperRogue" \
+ "" \
+ "${PREFIX}/share/pixmaps/${PORTNAME}.ico" \
+ "${PORTNAME}" \
+ "Game;RolePlaying;" \
+ ""
+
+OPTIONS_DEFINE= DOCS
+
+post-install:
+ ${INSTALL_DATA} ${WRKSRC}/hr-icon.ico ${STAGEDIR}${PREFIX}/share/pixmaps/${PORTNAME}.ico
+ @${MV} ${STAGEDIR}${DATADIR}/music/* ${STAGEDIR}${DATADIR}
+ @${RMDIR} ${STAGEDIR}${DATADIR}/music
+
+post-install-DOCS-on:
+ @${MKDIR} ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_DATA} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR}/
+
+.include <bsd.port.mk>
diff --git a/games/hyperrogue/distinfo b/games/hyperrogue/distinfo
new file mode 100644
index 000000000000..88cbd49d0466
--- /dev/null
+++ b/games/hyperrogue/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1488028592
+SHA256 (zenorogue-hyperrogue-8.3j_GH0.tar.gz) = f6cf02cd22eeb59af96952ab5d63c6a67815e318b4906ddde54c37696b36f2d0
+SIZE (zenorogue-hyperrogue-8.3j_GH0.tar.gz) = 47350032
diff --git a/games/hyperrogue/files/patch-Makefile.am b/games/hyperrogue/files/patch-Makefile.am
new file mode 100644
index 000000000000..1738059c9b46
--- /dev/null
+++ b/games/hyperrogue/files/patch-Makefile.am
@@ -0,0 +1,20 @@
+--- Makefile.am.orig 2016-08-26 16:36:03 UTC
++++ Makefile.am
+@@ -6,15 +6,14 @@ dist_doc_DATA = README.md
+ hyperrogue_SOURCES = hyper.cpp savepng.c
+
+ # Some definitions used in graph.cpp
+-hyperrogue_CPPFLAGS = -DFONTDESTDIR=\"$(pkgdatadir)/DejaVuSans-Bold.ttf\" -DMUSICDESTDIR=\"$(pkgdatadir)/hyperrogue-music.txt\" -O2
++hyperrogue_CPPFLAGS = -DFONTDESTDIR=\"$(pkgdatadir)/DejaVuSans-Bold.ttf\" -DMUSICDESTDIR=\"$(pkgdatadir)/hyperrogue-music.txt\"
+
+ # Musicdir
+ musicdir=$(datadir)/hyperrogue/music
+ dist_music_DATA = music/hr3-caves.ogg music/hr3-desert.ogg music/hr3-hell.ogg music/hr3-jungle.ogg music/hr3-mirror.ogg music/hr3-rlyeh.ogg music/hr3-crossroads.ogg music/hr3-graveyard.ogg music/hr3-icyland.ogg music/hr3-laboratory.ogg music/hr3-motion.ogg
+
+ music/hyperrogue-music.txt: hyperrogue
+- cp hyperrogue-music.txt music/hyperrogue-music.txt
+- sed -i 's+music+$(pkgdatadir)/music+g' music/hyperrogue-music.txt
++ sed 's+music+$(pkgdatadir)/music+g' <hyperrogue-music.txt >music/hyperrogue-music.txt
+
+ # Langen binary rules
+ noinst_PROGRAMS = langen
diff --git a/games/hyperrogue/pkg-descr b/games/hyperrogue/pkg-descr
new file mode 100644
index 000000000000..a0eeb6f5edc6
--- /dev/null
+++ b/games/hyperrogue/pkg-descr
@@ -0,0 +1,20 @@
+You are a lone adventurer in a strange world, where geometry does
+not work in the expected way. Gather as much treasure as you can
+before the nasty monsters get you. Explore several different worlds,
+each with its own unique treasures, enemies, and terrain obstacles.
+Your quest is to find the legendary treasure, the Orbs of Yendor.
+Collect one of them to win! Or just ignore your quest and collect
+smaller treasures.
+
+The twist is the unique, unusual geometry of the world: it is one
+of just few games which takes place on the hyperbolic plane. Witness
+a grid composed of hexagons and heptagons, straight lines which
+seem to be parallel, but then they diverge and never cross, triangles
+whose angles add up to less than 180 degrees, how extremely unlikely
+is it to reach the same place twice, and how the world seems to be
+rotated when you do return. All this matters for the gameplay. The
+game is inspired by the roguelike genre (although in a very minimalist
+way), works of M. C. Escher, and by puzzle games such as Deadly
+Rooms of Death.
+
+WWW: http://roguetemple.com/z/hyper/
diff --git a/games/hyperrogue/pkg-plist b/games/hyperrogue/pkg-plist
new file mode 100644
index 000000000000..0a67c5f12ab0
--- /dev/null
+++ b/games/hyperrogue/pkg-plist
@@ -0,0 +1,15 @@
+bin/hyperrogue
+%%DATADIR%%/DejaVuSans-Bold.ttf
+%%DATADIR%%/hr3-caves.ogg
+%%DATADIR%%/hr3-crossroads.ogg
+%%DATADIR%%/hr3-desert.ogg
+%%DATADIR%%/hr3-graveyard.ogg
+%%DATADIR%%/hr3-hell.ogg
+%%DATADIR%%/hr3-icyland.ogg
+%%DATADIR%%/hr3-jungle.ogg
+%%DATADIR%%/hr3-laboratory.ogg
+%%DATADIR%%/hr3-mirror.ogg
+%%DATADIR%%/hr3-motion.ogg
+%%DATADIR%%/hr3-rlyeh.ogg
+%%DATADIR%%/hyperrogue-music.txt
+share/pixmaps/hyperrogue.ico