aboutsummaryrefslogtreecommitdiff
path: root/games/gzdoom
diff options
context:
space:
mode:
authorSteve Wills <swills@FreeBSD.org>2017-09-14 17:17:53 +0000
committerSteve Wills <swills@FreeBSD.org>2017-09-14 17:17:53 +0000
commit60ddfac54a5afa5495c3518bf0b106defb429cfe (patch)
tree9111440a4aedcb237e7474f9962528b8ed87c5a5 /games/gzdoom
parent56648cab1db67bfec7a506a3569744bc149aa2cd (diff)
downloadports-60ddfac54a5afa5495c3518bf0b106defb429cfe.tar.gz
ports-60ddfac54a5afa5495c3518bf0b106defb429cfe.zip
games/gzdoom: create port
GZDoom is a GL-enhanced fork of ZDoom, a source port of ID Software's DOOM engine. It is based on the source code of id Software's DOOM. GZDoom boasts enhanced modding support, as well as support for the following games: * Ultimate Doom * Doom II * Final Doom * Heretic * Hexen * Strife * Chex Quest (1 & 3) * Action Doom II * Harmony v1.1 * Hacx * The Adventures of Square WWW: http://gzdoom.drdteam.org/ PR: 213907 Submitted by: kevans
Notes
Notes: svn path=/head/; revision=449841
Diffstat (limited to 'games/gzdoom')
-rw-r--r--games/gzdoom/Makefile57
-rw-r--r--games/gzdoom/distinfo3
-rw-r--r--games/gzdoom/files/gzdoom.xpm83
-rw-r--r--games/gzdoom/files/patch-src_dobject.h11
-rw-r--r--games/gzdoom/files/patch-src_scripting_vm_vm.h11
-rw-r--r--games/gzdoom/files/patch-src_scripting_vm_vmexec.cpp11
-rw-r--r--games/gzdoom/pkg-descr17
7 files changed, 193 insertions, 0 deletions
diff --git a/games/gzdoom/Makefile b/games/gzdoom/Makefile
new file mode 100644
index 000000000000..a16a7f293f03
--- /dev/null
+++ b/games/gzdoom/Makefile
@@ -0,0 +1,57 @@
+# $FreeBSD$
+
+PORTNAME= gzdoom
+PORTVERSION= 3.1.0
+DISTVERSIONPREFIX= g
+CATEGORIES= games
+
+MAINTAINER= bsdports@kyle-evans.net
+COMMENT= GL-enhanced source port for Doom-engine games
+
+LICENSE= BSD3CLAUSE GPLv3 LGPL3
+LICENSE_COMB= multi
+LICENSE_FILE_BSD3CLAUSE=${WRKSRC}/docs/licenses/bsd.txt
+LICENSE_FILE_GPLv3= ${WRKSRC}/docs/licenses/gpl.txt
+LICENSE_FILE_LGPL3= ${WRKSRC}/docs/licenses/lgpl.txt
+
+BUILD_DEPENDS= zip:archivers/zip
+LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \
+ libfreetype.so:print/freetype2 \
+ libsndfile.so:audio/libsndfile \
+ libfluidsynth.so:audio/fluidsynth \
+ libgme.so:audio/libgme
+
+DATADIR= ${DMDIR}/${PORTNAME}
+
+USES= cmake:outsource gettext jpeg openal pkgconfig
+
+USE_GITHUB= yes
+GH_ACCOUNT= coelckers
+
+USE_GNOME= atk cairo gdkpixbuf2 gtk20 pango
+USE_SDL= sdl2
+USE_GL= gl glu
+CXXFLAGS+= -DSHARE_DIR=\\\"${DATADIR}\\\"
+LDFLAGS+= -Wl,--as-needed
+
+DESKTOP_ENTRIES= "GZDoom" "" "${PORTNAME}" "${PORTNAME}" "Game;Shooter;" ""
+
+PLIST_FILES= bin/${PORTNAME} \
+ ${DATADIR}/${PORTNAME}.pk3 \
+ share/pixmaps/${PORTNAME}.xpm
+
+.include <bsd.port.pre.mk>
+
+.if ${OPSYS} == "FreeBSD" && ${OSVERSION} < 1004000
+BROKEN= Fails to link due to lack of thread_local
+.endif
+
+.include "${.CURDIR}/../doom-data/Makefile.include"
+
+do-install:
+ ${MKDIR} ${STAGEDIR}${DATADIR}
+ ${INSTALL_PROGRAM} ${CONFIGURE_WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin
+ ${INSTALL_DATA} ${CONFIGURE_WRKSRC}/${PORTNAME}.pk3 ${STAGEDIR}${DATADIR}
+ ${INSTALL_DATA} ${FILESDIR}/${PORTNAME}.xpm ${STAGEDIR}${PREFIX}/share/pixmaps
+
+.include <bsd.port.post.mk>
diff --git a/games/gzdoom/distinfo b/games/gzdoom/distinfo
new file mode 100644
index 000000000000..6bd541b000ec
--- /dev/null
+++ b/games/gzdoom/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1498082404
+SHA256 (coelckers-gzdoom-g3.1.0_GH0.tar.gz) = c011ce9a95b765da5b81cf723062379d585c57cb586848385a2319deba1996c3
+SIZE (coelckers-gzdoom-g3.1.0_GH0.tar.gz) = 9026969
diff --git a/games/gzdoom/files/gzdoom.xpm b/games/gzdoom/files/gzdoom.xpm
new file mode 100644
index 000000000000..55f530c62f0b
--- /dev/null
+++ b/games/gzdoom/files/gzdoom.xpm
@@ -0,0 +1,83 @@
+/* XPM */
+static char * gzdoom_xpm[] = {
+"48 48 32 1",
+" c None",
+". c #ADA990",
+"+ c #999966",
+"@ c #666666",
+"# c #393939",
+"$ c #555555",
+"% c #996666",
+"& c #777777",
+"* c #5F5F5F",
+"= c #333333",
+"- c #4D4D4D",
+"; c #868686",
+"> c #969696",
+", c #1C1C1C",
+"' c #339933",
+") c #336633",
+"! c #66CC66",
+"~ c #66FF66",
+"{ c #66CC33",
+"] c #222222",
+"^ c #333300",
+"/ c #292929",
+"( c #040404",
+"_ c #0C0C0C",
+": c #663333",
+"< c #996633",
+"[ c #CC9966",
+"} c #CC6633",
+"| c #CC9999",
+"1 c #FFCC99",
+"2 c #FF9966",
+"3 c #FFCCCC",
+" ... ",
+" ++@##$+ ",
+" +...+%&+ ",
+" %*=-*&;$=&* ",
+" %**=$@;>@=&*% ",
+" &**@$*@@$-.+& ",
+" %$%@*..$@.. ",
+" ,#@+++@@#& ",
+" $,#$$@@$#=$'' ",
+" )!!!~!{=],,,,]^)'!{') =/, ",
+" )){'~!!'')=],=))'{)'')) /=],( ",
+" )'!!'!)~'{'),)''''''')) @@/==](( ",
+" ^)''')'{{''')'''''),))) $$@$/,( ",
+" ,^))),))''''))'')^,__/$$$-#-(( ",
+" :<[}<,_)))))))),___,]#@@-/]] ",
+" :<|12<:_,,,,,_,#$$-#/,^^=^}}< ",
+" :<[1}::,^,,__,#$-==/,,::^:<<< ",
+" ::&+@#^,,__/)#-=/,,,,-::^<::= ",
+" :*+12[:==_,$-=/,,,,/,#::::=^ ",
+" #*}331}-$]-==/,,,,// ##:=^ ",
+" /]<13[---],,,,,,,]_] ",
+" ,:--/,___]]]]:^___/ ",
+" _______,^^,^,__/# ",
+" ______:::::/$,,/# ",
+" ____^:::=,^^^^,^^ ",
+" __,,:=^,,)))^,,= ",
+" _,,),,,,,^)^^^,, ",
+" ,^,,),__,^))),,^ ",
+" ,,,^^,,,,,)))),, ",
+" ,,,,,,,)^))))^ ",
+" ,,^,,,^^)))))^ ",
+" ,^^,,,,)))))), ",
+" ,^,,,,))^))), ",
+" ],,,,,$&&&*$# ",
+" ],,,]#****$# ",
+" ]]]]]^####, ",
+" ]]]]*,,,,#* ",
+" ,_,#@&&@*/ ",
+" __$####=# ",
+" ,_/$$$$$# ",
+" ,,,$*$$$ ",
+" ],,,$**$# ",
+" ],,,@&&@# ",
+" ],,,$**#= ",
+" ,,=+++%$ ",
+" *%%%*$ ",
+" /$*$#/ ",
+" ],,]] "};
diff --git a/games/gzdoom/files/patch-src_dobject.h b/games/gzdoom/files/patch-src_dobject.h
new file mode 100644
index 000000000000..c2ab03fbc97b
--- /dev/null
+++ b/games/gzdoom/files/patch-src_dobject.h
@@ -0,0 +1,11 @@
+--- src/dobject.h.orig 2017-06-22 13:58:35 UTC
++++ src/dobject.h
+@@ -198,7 +198,7 @@ class DObject (protected)
+ enum { MetaClassNum = CLASSREG_PClass };
+
+ // Per-instance variables. There are four.
+-#ifdef _DEBUG
++#ifndef NDEBUG
+ public:
+ enum
+ {
diff --git a/games/gzdoom/files/patch-src_scripting_vm_vm.h b/games/gzdoom/files/patch-src_scripting_vm_vm.h
new file mode 100644
index 000000000000..a23649420a27
--- /dev/null
+++ b/games/gzdoom/files/patch-src_scripting_vm_vm.h
@@ -0,0 +1,11 @@
+--- src/scripting/vm/vm.h.orig 2017-06-22 13:58:53 UTC
++++ src/scripting/vm/vm.h
+@@ -376,7 +376,7 @@ int VMCall(VMFunction *func, VMValue *params, int nump
+ // variable name <x> at position <p>
+ void NullParam(const char *varname);
+
+-#ifdef _DEBUG
++#ifndef NDEBUG
+ bool AssertObject(void * ob);
+ #endif
+
diff --git a/games/gzdoom/files/patch-src_scripting_vm_vmexec.cpp b/games/gzdoom/files/patch-src_scripting_vm_vmexec.cpp
new file mode 100644
index 000000000000..822a54be2e6f
--- /dev/null
+++ b/games/gzdoom/files/patch-src_scripting_vm_vmexec.cpp
@@ -0,0 +1,11 @@
+--- src/scripting/vm/vmexec.cpp.orig 2017-06-22 13:59:05 UTC
++++ src/scripting/vm/vmexec.cpp
+@@ -229,7 +229,7 @@ void VMFillParams(VMValue *params, VMFrame *callee, in
+ }
+
+
+-#ifdef _DEBUG
++#ifndef NDEBUG
+ bool AssertObject(void * ob)
+ {
+ auto obj = (DObject*)ob;
diff --git a/games/gzdoom/pkg-descr b/games/gzdoom/pkg-descr
new file mode 100644
index 000000000000..f59f687de0f5
--- /dev/null
+++ b/games/gzdoom/pkg-descr
@@ -0,0 +1,17 @@
+GZDoom is a GL-enhanced fork of ZDoom, a source port of ID Software's DOOM
+engine. It is based on the source code of id Software's DOOM. GZDoom boasts
+enhanced modding support, as well as support for the following games:
+
+* Ultimate Doom
+* Doom II
+* Final Doom
+* Heretic
+* Hexen
+* Strife
+* Chex Quest (1 & 3)
+* Action Doom II
+* Harmony v1.1
+* Hacx
+* The Adventures of Square
+
+WWW: http://gzdoom.drdteam.org/