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
Notes
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/