aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPiotr Kubaj <pkubaj@FreeBSD.org>2022-08-23 19:52:46 +0000
committerPiotr Kubaj <pkubaj@FreeBSD.org>2022-08-23 19:52:46 +0000
commit6ea5f4a3335bec4072a3ae50298b190450f7844a (patch)
tree99acee2f1d772745cf7fec188284c84746e12662
parent873ae47eff33f3075cb2609d7a21e90c7ad24326 (diff)
downloadports-6ea5f4a3335bec4072a3ae50298b190450f7844a.tar.gz
ports-6ea5f4a3335bec4072a3ae50298b190450f7844a.zip
games/Doom64EX: Project aimed to recreate Doom64
-rw-r--r--games/Doom64EX/Makefile24
-rw-r--r--games/Doom64EX/distinfo3
-rw-r--r--games/Doom64EX/files/patch-include_imp_util_Endian38
-rw-r--r--games/Doom64EX/pkg-descr4
-rw-r--r--games/Makefile1
5 files changed, 70 insertions, 0 deletions
diff --git a/games/Doom64EX/Makefile b/games/Doom64EX/Makefile
new file mode 100644
index 000000000000..58de309236e6
--- /dev/null
+++ b/games/Doom64EX/Makefile
@@ -0,0 +1,24 @@
+PORTNAME= Doom64EX
+PORTVERSION= g20180824
+CATEGORIES= games
+
+MAINTAINER= pkubaj@FreeBSD.org
+COMMENT= Project aimed to recreate Doom64
+
+LICENSE= GPLv2
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+LIB_DEPENDS= libfluidsynth.so:audio/fluidsynth \
+ libpng.so:graphics/png
+
+USES= cmake sdl
+USE_GITHUB= yes
+GH_ACCOUNT= svkaiser
+GH_TAGNAME= 03a5e6a5a3a14d66886f62b72431b37ef7336706
+USE_SDL= net2 sdl2
+
+CMAKE_ON= ENABLE_SYSTEM_FLUIDSYNTH
+PLIST_FILES= bin/doom64ex \
+ share/games/doom64ex/doom64ex.pk3
+
+.include <bsd.port.mk>
diff --git a/games/Doom64EX/distinfo b/games/Doom64EX/distinfo
new file mode 100644
index 000000000000..536b37ce4fdb
--- /dev/null
+++ b/games/Doom64EX/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1661276734
+SHA256 (svkaiser-Doom64EX-g20180824-03a5e6a5a3a14d66886f62b72431b37ef7336706_GH0.tar.gz) = 5a2d74a9dbbcdd2ed7d08ac58192dc1672f840d3b488847393c7d5a5814ff0b7
+SIZE (svkaiser-Doom64EX-g20180824-03a5e6a5a3a14d66886f62b72431b37ef7336706_GH0.tar.gz) = 1115567
diff --git a/games/Doom64EX/files/patch-include_imp_util_Endian b/games/Doom64EX/files/patch-include_imp_util_Endian
new file mode 100644
index 000000000000..a071f8f6967d
--- /dev/null
+++ b/games/Doom64EX/files/patch-include_imp_util_Endian
@@ -0,0 +1,38 @@
+--- include/imp/util/Endian.orig 2018-08-24 09:23:34 UTC
++++ include/imp/util/Endian
+@@ -10,7 +10,7 @@
+ # define BIG_ENDIAN 0x1234
+ # define LITTLE_ENDIAN 0x4321
+ # define BYTE_ORDER LITTLE_ENDIAN
+-#elif defined(__APPLE__)
++#elif defined(__APPLE__) || defined(__FreeBSD__)
+ # include <machine/endian.h>
+ #else
+ # include <endian.h>
+@@ -57,6 +57,26 @@ namespace imp {
+
+ inline uint64 swap_bytes(uint64 x) noexcept
+ { return OSSwapInt64(x); }
++}
++#elif defined(__FreeBSD__)
++namespace imp {
++ inline int16 swap_bytes(int16 x) noexcept
++ { return bswap16(x); }
++
++ inline uint16 swap_bytes(uint16 x) noexcept
++ { return bswap16(x); }
++
++ inline int32 swap_bytes(int32 x) noexcept
++ { return bswap32(x); }
++
++ inline uint32 swap_bytes(uint32 x) noexcept
++ { return bswap32(x); }
++
++ inline int64 swap_bytes(int64 x) noexcept
++ { return bswap64(x); }
++
++ inline uint64 swap_bytes(uint64 x) noexcept
++ { return bswap64(x); }
+ }
+ #elif defined(__GNUC__) || defined(__clang__)
+ namespace imp {
diff --git a/games/Doom64EX/pkg-descr b/games/Doom64EX/pkg-descr
new file mode 100644
index 000000000000..6aca3d500a0e
--- /dev/null
+++ b/games/Doom64EX/pkg-descr
@@ -0,0 +1,4 @@
+Doom64EX is a reverse-engineering project aimed to recreate Doom64 as close as
+possible with additional modding features.
+
+WWW: https://doom64ex.wordpress.com/
diff --git a/games/Makefile b/games/Makefile
index 41430d3991fb..0e7861a15e31 100644
--- a/games/Makefile
+++ b/games/Makefile
@@ -12,6 +12,7 @@
SUBDIR += 90secondportraits
SUBDIR += CaribbeanStud
SUBDIR += DDNet
+ SUBDIR += Doom64EX
SUBDIR += HeroesOfMightAndMagic
SUBDIR += KnightCap
SUBDIR += LibreMines