aboutsummaryrefslogtreecommitdiff
path: root/games/tome4
diff options
context:
space:
mode:
authorPawel Pekala <pawel@FreeBSD.org>2014-02-06 20:34:55 +0000
committerPawel Pekala <pawel@FreeBSD.org>2014-02-06 20:34:55 +0000
commit73316e50ee1161a4043773833f785cfad8dd5842 (patch)
tree865d3e68d1ab0647e10e42d622cc06d49c816450 /games/tome4
parent3687ba3c17db173ec09c54be3592416430873092 (diff)
downloadports-73316e50ee1161a4043773833f785cfad8dd5842.tar.gz
ports-73316e50ee1161a4043773833f785cfad8dd5842.zip
Tales of Maj'Eyal (ToME) is a free, open source rouguelike RPG,
featuring tactical turn-based combat and advanced character building. Play as one of many unique races and classes in the lore-filled world of Eyal, exploring random dungeons, facing challenging battles, and developing characters with your own tailored mix of abilities and powers. With a modern graphical and customisable interface, intuitive mouse control, streamlined mechanics, and deep, challenging combat, Tales of Maj'Eyal offers engaging roguelike gameplay for the 21st century. WWW: http://te4.org/ PR: ports/185479 Submitted by: Nikolai Lifanov <lifanov@mail.lifanov.com>
Notes
Notes: svn path=/head/; revision=343149
Diffstat (limited to 'games/tome4')
-rw-r--r--games/tome4/Makefile49
-rw-r--r--games/tome4/distinfo4
-rw-r--r--games/tome4/files/patch-build__te4core.lua29
-rw-r--r--games/tome4/files/patch-premake4.lua21
-rw-r--r--games/tome4/files/patch-src__getself.c27
-rw-r--r--games/tome4/files/tome4.in6
-rw-r--r--games/tome4/pkg-descr10
-rw-r--r--games/tome4/pkg-plist147
8 files changed, 293 insertions, 0 deletions
diff --git a/games/tome4/Makefile b/games/tome4/Makefile
new file mode 100644
index 000000000000..92a8f7e9e96e
--- /dev/null
+++ b/games/tome4/Makefile
@@ -0,0 +1,49 @@
+# Created by: Nikolai Lifanov <lifanov@mail.lifanov.com>
+# $FreeBSD$
+
+PORTNAME= tome4
+PORTVERSION= 1.1.5
+CATEGORIES= games
+MASTER_SITES= http://te4.org/dl/t-engine/ \
+ SF/lifanov-ports-icons/${PORTNAME}/:icons
+DISTFILES= t-engine4-src-${PORTVERSION}${EXTRACT_SUFX} \
+ ${PORTNAME}.png:icons
+EXTRACT_ONLY= t-engine4-src-${PORTVERSION}${EXTRACT_SUFX}
+
+MAINTAINER= lifanov@mail.lifanov.com
+COMMENT= Epic tactical turn-based roguelike adventure
+
+LICENSE= GPLv3
+
+BUILD_DEPENDS= premake4:${PORTSDIR}/devel/premake4
+LIB_DEPENDS= libvorbisfile.so:${PORTSDIR}/audio/libvorbis
+
+DESKTOP_ENTRIES="ToME 4" "${COMMENT}" "${PORTNAME}" \
+ "${PORTNAME}" "Game;RolePlaying;" false
+
+WRKSRC= ${WRKDIR}/t-engine4-src-${PORTVERSION}
+MAKE_ARGS+= config=release verbose=yes ARCH=""
+USES= gmake openal:al
+USE_BZIP2= yes
+USE_SDL= image2 sdl2 ttf2
+USE_GL= gl
+SUB_FILES= tome4
+
+MAKE_JOBS_UNSAFE=yes
+
+pre-build:
+ (cd ${WRKSRC}; premake4 gmake)
+ @${REINPLACE_CMD} 's|-lpthread|-pthread|' ${WRKSRC}/build/TEngine.make
+
+do-install:
+ ${MKDIR} ${STAGEDIR}${DATADIR}
+ ${MKDIR} ${STAGEDIR}${PREFIX}/bin
+
+ ${INSTALL_PROGRAM} ${WRKSRC}/t-engine ${STAGEDIR}${DATADIR}
+ ${INSTALL} -m 0755 ${WRKDIR}/tome4 ${STAGEDIR}${PREFIX}/bin
+ (cd ${WRKSRC}; ${COPYTREE_SHARE} "bootstrap game" ${STAGEDIR}${DATADIR})
+
+ ${INSTALL_DATA} ${_DISTDIR}/${PORTNAME}.png \
+ ${STAGEDIR}${PREFIX}/share/pixmaps/
+
+.include <bsd.port.mk>
diff --git a/games/tome4/distinfo b/games/tome4/distinfo
new file mode 100644
index 000000000000..f40b026b8917
--- /dev/null
+++ b/games/tome4/distinfo
@@ -0,0 +1,4 @@
+SHA256 (t-engine4-src-1.1.5.tar.bz2) = f911b095064153b97b62fcb72124cdbcf19d712c24e5a735c7de6b98e527d4dd
+SIZE (t-engine4-src-1.1.5.tar.bz2) = 259331390
+SHA256 (tome4.png) = b5223208ca6f0a51f8bbe3b96055f38f94336dbeca6704db6684fec00fad1a36
+SIZE (tome4.png) = 37143
diff --git a/games/tome4/files/patch-build__te4core.lua b/games/tome4/files/patch-build__te4core.lua
new file mode 100644
index 000000000000..f617ce2cba5b
--- /dev/null
+++ b/games/tome4/files/patch-build__te4core.lua
@@ -0,0 +1,29 @@
+--- ./build/te4core.lua.orig 2014-01-05 19:42:37.000000000 -0500
++++ ./build/te4core.lua 2014-02-06 13:23:22.476164878 -0500
+@@ -109,7 +109,7 @@
+
+ configuration "bsd"
+ libdirs {"/usr/local/lib/"}
+- links { "SDL2", "SDL2_ttf", "SDL2_image", "png", "openal", "vorbisfile", "GL", "GLU", "m", "pthread" }
++ links { "SDL2", "SDL2_ttf", "SDL2_image", "png", "openal", "vorbisfile", "GL", "GLU", "m" }
+ defines { [[TENGINE_HOME_PATH='".t-engine"']], 'SELFEXE_BSD' }
+
+ configuration {"Debug"}
+@@ -159,7 +159,7 @@
+
+ files { "../src/luajit2/src/host/minilua.c" }
+
+- local arch_test = os.capture("gcc -E ../src/luajit2/src/lj_arch.h -dM", true)
++ local arch_test = os.capture("cc -E ../src/luajit2/src/lj_arch.h -dM", true)
+
+ if string.find(arch_test, "LJ_TARGET_X64") then
+ target_arch = "x64"
+@@ -201,7 +201,7 @@
+ links { "minilua" }
+
+ local dasm_flags = ""
+- local arch_test = os.capture("gcc -E ../src/luajit2/src/lj_arch.h -dM", true)
++ local arch_test = os.capture("cc -E ../src/luajit2/src/lj_arch.h -dM", true)
+
+ if string.find(arch_test, "LJ_TARGET_X64") then
+ target_arch = "x64"
diff --git a/games/tome4/files/patch-premake4.lua b/games/tome4/files/patch-premake4.lua
new file mode 100644
index 000000000000..7f9aa553094b
--- /dev/null
+++ b/games/tome4/files/patch-premake4.lua
@@ -0,0 +1,21 @@
+--- ./premake4.lua.orig 2014-02-06 13:23:35.469164876 -0500
++++ ./premake4.lua 2014-02-06 13:34:48.071117476 -0500
+@@ -35,6 +35,9 @@
+ includedirs {
+ "/usr/local/include",
+ }
++ buildoptions {
++ "-pthread",
++ }
+
+ configuration "windows"
+ libdirs {
+@@ -61,8 +64,6 @@
+
+ configuration "Release"
+ defines { "NDEBUG=1" }
+- flags { "Optimize", "NoFramePointer" }
+- buildoptions { "-O2" }
+ targetdir "bin/Release"
+
+
diff --git a/games/tome4/files/patch-src__getself.c b/games/tome4/files/patch-src__getself.c
new file mode 100644
index 000000000000..b4629fe5c2ea
--- /dev/null
+++ b/games/tome4/files/patch-src__getself.c
@@ -0,0 +1,27 @@
+--- ./src/getself.c.orig 2014-01-05 19:42:37.000000000 -0500
++++ ./src/getself.c 2014-02-06 13:23:22.555164880 -0500
+@@ -42,6 +42,8 @@
+ #elif defined(SELFEXE_BSD)
+ #include <limits.h>
+ #include <stdlib.h>
++#include <sys/types.h>
++#include <sys/sysctl.h>
+ const char *get_self_executable(int argc, char **argv)
+ {
+ static char res[PATH_MAX];
+@@ -51,14 +53,13 @@
+ return res;
+ }
+
+-#import <sys/sysctl.h>
+
+ int get_number_cpus()
+ {
+ int count;
+ size_t size=sizeof(count);
+
+- if (sysctlbyname("hw.ncpu",&count,&size,NULL,0)) return 1;
++ sysctlbyname("hw.ncpu",&count,&size,NULL,0);
+ return count;
+ }
+
diff --git a/games/tome4/files/tome4.in b/games/tome4/files/tome4.in
new file mode 100644
index 000000000000..613b364758a6
--- /dev/null
+++ b/games/tome4/files/tome4.in
@@ -0,0 +1,6 @@
+#!/bin/sh
+# Wrap t-engine: it finds game data files
+# relative to itself
+
+(cd %%DATADIR%%; ./t-engine "$@")
+
diff --git a/games/tome4/pkg-descr b/games/tome4/pkg-descr
new file mode 100644
index 000000000000..c09b8677c861
--- /dev/null
+++ b/games/tome4/pkg-descr
@@ -0,0 +1,10 @@
+Tales of Maj'Eyal (ToME) is a free, open source rouguelike RPG,
+featuring tactical turn-based combat and advanced character building.
+Play as one of many unique races and classes in the lore-filled world
+of Eyal, exploring random dungeons, facing challenging battles, and
+developing characters with your own tailored mix of abilities and powers.
+With a modern graphical and customisable interface, intuitive mouse
+control, streamlined mechanics, and deep, challenging combat,
+Tales of Maj'Eyal offers engaging roguelike gameplay for the 21st century.
+
+WWW: http://te4.org/
diff --git a/games/tome4/pkg-plist b/games/tome4/pkg-plist
new file mode 100644
index 000000000000..1e3a4172ac0d
--- /dev/null
+++ b/games/tome4/pkg-plist
@@ -0,0 +1,147 @@
+bin/tome4
+share/pixmaps/tome4.png
+%%DATADIR%%/bootstrap/boot.lua
+%%DATADIR%%/game/addons/tome-addon-dev.teaa
+%%DATADIR%%/game/addons/tome-items-vault.teaa
+%%DATADIR%%/game/addons/tome-stone-wardens.teaa
+%%DATADIR%%/game/engines/te4-1.1.5.teae
+%%DATADIR%%/game/loader/init.lua
+%%DATADIR%%/game/loader/pre-init.lua
+%%DATADIR%%/game/modules/boot-te4-1.1.5.team
+%%DATADIR%%/game/modules/example/class/Actor.lua
+%%DATADIR%%/game/modules/example/class/Game.lua
+%%DATADIR%%/game/modules/example/class/Grid.lua
+%%DATADIR%%/game/modules/example/class/NPC.lua
+%%DATADIR%%/game/modules/example/class/Player.lua
+%%DATADIR%%/game/modules/example/class/interface/Combat.lua
+%%DATADIR%%/game/modules/example/data/birth/descriptors.lua
+%%DATADIR%%/game/modules/example/data/damage_types.lua
+%%DATADIR%%/game/modules/example/data/general/grids/basic.lua
+%%DATADIR%%/game/modules/example/data/general/npcs/kobold.lua
+%%DATADIR%%/game/modules/example/data/gfx/particles/acid.lua
+%%DATADIR%%/game/modules/example/data/rooms/pilar.lua
+%%DATADIR%%/game/modules/example/data/rooms/simple.lua
+%%DATADIR%%/game/modules/example/data/talents.lua
+%%DATADIR%%/game/modules/example/data/timed_effects.lua
+%%DATADIR%%/game/modules/example/data/zones/dungeon/grids.lua
+%%DATADIR%%/game/modules/example/data/zones/dungeon/npcs.lua
+%%DATADIR%%/game/modules/example/data/zones/dungeon/objects.lua
+%%DATADIR%%/game/modules/example/data/zones/dungeon/traps.lua
+%%DATADIR%%/game/modules/example/data/zones/dungeon/zone.lua
+%%DATADIR%%/game/modules/example/dialogs/DeathDialog.lua
+%%DATADIR%%/game/modules/example/dialogs/Quit.lua
+%%DATADIR%%/game/modules/example/init.lua
+%%DATADIR%%/game/modules/example/load.lua
+%%DATADIR%%/game/modules/example_realtime/class/Actor.lua
+%%DATADIR%%/game/modules/example_realtime/class/Game.lua
+%%DATADIR%%/game/modules/example_realtime/class/Grid.lua
+%%DATADIR%%/game/modules/example_realtime/class/NPC.lua
+%%DATADIR%%/game/modules/example_realtime/class/Player.lua
+%%DATADIR%%/game/modules/example_realtime/class/interface/Combat.lua
+%%DATADIR%%/game/modules/example_realtime/data/birth/descriptors.lua
+%%DATADIR%%/game/modules/example_realtime/data/damage_types.lua
+%%DATADIR%%/game/modules/example_realtime/data/general/grids/basic.lua
+%%DATADIR%%/game/modules/example_realtime/data/general/npcs/kobold.lua
+%%DATADIR%%/game/modules/example_realtime/data/gfx/particles/acid.lua
+%%DATADIR%%/game/modules/example_realtime/data/rooms/pilar.lua
+%%DATADIR%%/game/modules/example_realtime/data/rooms/simple.lua
+%%DATADIR%%/game/modules/example_realtime/data/talents.lua
+%%DATADIR%%/game/modules/example_realtime/data/timed_effects.lua
+%%DATADIR%%/game/modules/example_realtime/data/zones/dungeon/grids.lua
+%%DATADIR%%/game/modules/example_realtime/data/zones/dungeon/npcs.lua
+%%DATADIR%%/game/modules/example_realtime/data/zones/dungeon/objects.lua
+%%DATADIR%%/game/modules/example_realtime/data/zones/dungeon/traps.lua
+%%DATADIR%%/game/modules/example_realtime/data/zones/dungeon/zone.lua
+%%DATADIR%%/game/modules/example_realtime/dialogs/DeathDialog.lua
+%%DATADIR%%/game/modules/example_realtime/dialogs/Quit.lua
+%%DATADIR%%/game/modules/example_realtime/init.lua
+%%DATADIR%%/game/modules/example_realtime/load.lua
+%%DATADIR%%/game/modules/tome-1.1.5-gfx.team
+%%DATADIR%%/game/modules/tome-1.1.5-music.team
+%%DATADIR%%/game/modules/tome-1.1.5.team
+%%DATADIR%%/game/profile-thread/Client.lua
+%%DATADIR%%/game/profile-thread/UserChat.lua
+%%DATADIR%%/game/profile-thread/init.lua
+%%DATADIR%%/game/thirdparty/Json2.lua
+%%DATADIR%%/game/thirdparty/config.lua
+%%DATADIR%%/game/thirdparty/jit/bc.lua
+%%DATADIR%%/game/thirdparty/jit/bcsave.lua
+%%DATADIR%%/game/thirdparty/jit/dis_arm.lua
+%%DATADIR%%/game/thirdparty/jit/dis_mips.lua
+%%DATADIR%%/game/thirdparty/jit/dis_mipsel.lua
+%%DATADIR%%/game/thirdparty/jit/dis_ppc.lua
+%%DATADIR%%/game/thirdparty/jit/dis_x64.lua
+%%DATADIR%%/game/thirdparty/jit/dis_x86.lua
+%%DATADIR%%/game/thirdparty/jit/dump.lua
+%%DATADIR%%/game/thirdparty/jit/v.lua
+%%DATADIR%%/game/thirdparty/lpeg/re.lua
+%%DATADIR%%/game/thirdparty/ltn12.lua
+%%DATADIR%%/game/thirdparty/lxp/lom.lua
+%%DATADIR%%/game/thirdparty/md5.lua
+%%DATADIR%%/game/thirdparty/mime.lua
+%%DATADIR%%/game/thirdparty/moonscript.lua
+%%DATADIR%%/game/thirdparty/moonscript/compile.lua
+%%DATADIR%%/game/thirdparty/moonscript/compile/format.lua
+%%DATADIR%%/game/thirdparty/moonscript/compile/line.lua
+%%DATADIR%%/game/thirdparty/moonscript/compile/types.lua
+%%DATADIR%%/game/thirdparty/moonscript/compile/value.lua
+%%DATADIR%%/game/thirdparty/moonscript/data.lua
+%%DATADIR%%/game/thirdparty/moonscript/dump.lua
+%%DATADIR%%/game/thirdparty/moonscript/errors.lua
+%%DATADIR%%/game/thirdparty/moonscript/init.lua
+%%DATADIR%%/game/thirdparty/moonscript/parse.lua
+%%DATADIR%%/game/thirdparty/moonscript/util.lua
+%%DATADIR%%/game/thirdparty/moonscript/version.lua
+%%DATADIR%%/game/thirdparty/remdebug/engine.lua
+%%DATADIR%%/game/thirdparty/socket.lua
+%%DATADIR%%/game/thirdparty/socket/ftp.lua
+%%DATADIR%%/game/thirdparty/socket/http.lua
+%%DATADIR%%/game/thirdparty/socket/smtp.lua
+%%DATADIR%%/game/thirdparty/socket/tp.lua
+%%DATADIR%%/game/thirdparty/socket/url.lua
+%%DATADIR%%/t-engine
+@dirrm %%DATADIR%%/game/thirdparty/socket
+@dirrm %%DATADIR%%/game/thirdparty/remdebug
+@dirrm %%DATADIR%%/game/thirdparty/moonscript/compile
+@dirrm %%DATADIR%%/game/thirdparty/moonscript
+@dirrm %%DATADIR%%/game/thirdparty/lxp
+@dirrm %%DATADIR%%/game/thirdparty/lpeg
+@dirrm %%DATADIR%%/game/thirdparty/jit
+@dirrm %%DATADIR%%/game/thirdparty
+@dirrm %%DATADIR%%/game/profile-thread
+@dirrm %%DATADIR%%/game/modules/example_realtime/dialogs
+@dirrm %%DATADIR%%/game/modules/example_realtime/data/zones/dungeon
+@dirrm %%DATADIR%%/game/modules/example_realtime/data/zones
+@dirrm %%DATADIR%%/game/modules/example_realtime/data/rooms
+@dirrm %%DATADIR%%/game/modules/example_realtime/data/gfx/particles
+@dirrm %%DATADIR%%/game/modules/example_realtime/data/gfx
+@dirrm %%DATADIR%%/game/modules/example_realtime/data/general/npcs
+@dirrm %%DATADIR%%/game/modules/example_realtime/data/general/grids
+@dirrm %%DATADIR%%/game/modules/example_realtime/data/general
+@dirrm %%DATADIR%%/game/modules/example_realtime/data/birth
+@dirrm %%DATADIR%%/game/modules/example_realtime/data
+@dirrm %%DATADIR%%/game/modules/example_realtime/class/interface
+@dirrm %%DATADIR%%/game/modules/example_realtime/class
+@dirrm %%DATADIR%%/game/modules/example_realtime
+@dirrm %%DATADIR%%/game/modules/example/dialogs
+@dirrm %%DATADIR%%/game/modules/example/data/zones/dungeon
+@dirrm %%DATADIR%%/game/modules/example/data/zones
+@dirrm %%DATADIR%%/game/modules/example/data/rooms
+@dirrm %%DATADIR%%/game/modules/example/data/gfx/particles
+@dirrm %%DATADIR%%/game/modules/example/data/gfx
+@dirrm %%DATADIR%%/game/modules/example/data/general/npcs
+@dirrm %%DATADIR%%/game/modules/example/data/general/grids
+@dirrm %%DATADIR%%/game/modules/example/data/general
+@dirrm %%DATADIR%%/game/modules/example/data/birth
+@dirrm %%DATADIR%%/game/modules/example/data
+@dirrm %%DATADIR%%/game/modules/example/class/interface
+@dirrm %%DATADIR%%/game/modules/example/class
+@dirrm %%DATADIR%%/game/modules/example
+@dirrm %%DATADIR%%/game/modules
+@dirrm %%DATADIR%%/game/loader
+@dirrm %%DATADIR%%/game/engines/cores
+@dirrm %%DATADIR%%/game/engines
+@dirrm %%DATADIR%%/game/addons
+@dirrm %%DATADIR%%/game
+@dirrm %%DATADIR%%/bootstrap
+@dirrm %%DATADIR%%