pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

RigelEngine: import RigelEngine-0.7.0 as wip/RigelEngine



Module Name:	pkgsrc-wip
Committed By:	Yorick Hardy <yorickhardy%gmail.com@localhost>
Pushed By:	yhardy
Date:		Thu Dec 31 19:13:53 2020 +0200
Changeset:	0b0d028ea89331ad354a72e516a7615c8c4805c2

Modified Files:
	Makefile
Added Files:
	RigelEngine/DESCR
	RigelEngine/Makefile
	RigelEngine/PLIST
	RigelEngine/distinfo
	RigelEngine/patches/patch-3rd__party_CMakeLists.txt
	RigelEngine/patches/patch-CMakeLists.txt

Log Message:
RigelEngine: import RigelEngine-0.7.0 as wip/RigelEngine

This project is a re-implementation of the game Duke Nukem II,
originally released by Apogee Software in 1993. RigelEngine works
as a drop-in replacement for the original executable: It reads the
original data files and offers the same experience (plus some
improvements), but runs natively on modern operating systems, and
is written in modern C++ code with a completely new architecture
under the hood.

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=0b0d028ea89331ad354a72e516a7615c8c4805c2

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 Makefile                                           |  1 +
 RigelEngine/DESCR                                  |  7 ++++
 RigelEngine/Makefile                               | 38 ++++++++++++++++++++++
 RigelEngine/PLIST                                  |  2 ++
 RigelEngine/distinfo                               | 12 +++++++
 .../patches/patch-3rd__party_CMakeLists.txt        | 19 +++++++++++
 RigelEngine/patches/patch-CMakeLists.txt           | 30 +++++++++++++++++
 7 files changed, 109 insertions(+)

diffs:
diff --git a/Makefile b/Makefile
index d613ed910f..c7b233e4ea 100644
--- a/Makefile
+++ b/Makefile
@@ -66,6 +66,7 @@ SUBDIR+=	R-signal
 SUBDIR+=	R-tuneR
 SUBDIR+=	Radicale3
 SUBDIR+=	ReZound
+SUBDIR+=	RigelEngine
 SUBDIR+=	SLADE
 SUBDIR+=	Siesta
 SUBDIR+=	StepTalk
diff --git a/RigelEngine/DESCR b/RigelEngine/DESCR
new file mode 100644
index 0000000000..9fdf0d33f1
--- /dev/null
+++ b/RigelEngine/DESCR
@@ -0,0 +1,7 @@
+This project is a re-implementation of the game Duke Nukem II,
+originally released by Apogee Software in 1993. RigelEngine works
+as a drop-in replacement for the original executable: It reads the
+original data files and offers the same experience (plus some
+improvements), but runs natively on modern operating systems, and
+is written in modern C++ code with a completely new architecture
+under the hood.
diff --git a/RigelEngine/Makefile b/RigelEngine/Makefile
new file mode 100644
index 0000000000..8227d1ebdd
--- /dev/null
+++ b/RigelEngine/Makefile
@@ -0,0 +1,38 @@
+# $NetBSD$
+
+GITHUB_PROJECT=	RigelEngine
+GITHUB_TAG=	v0.7.0-beta
+DISTNAME=	${GITHUB_TAG}
+PKGNAME=	RigelEngine-0.7.0
+CATEGORIES=	games
+MASTER_SITES=	${MASTER_SITE_GITHUB:=lethal-guitar/}
+DIST_SUBDIR=	${GITHUB_PROJECT}
+DISTFILES+=	${GITHUB_TAG}.tar.gz
+DISTFILES+=	imgui-1.7.9.tar.gz
+SITES.imgui-1.7.9.tar.gz= \
+	-${MASTER_SITE_GITHUB:S,^,-,:=ocornut/}imgui/archive/v1.79.tar.gz
+
+MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE=	https://github.com/lethal-guitar/RigelEngine/
+COMMENT=	Modern re-implementation of the classic DOS game Duke Nukem II
+LICENSE=	gnu-gpl-v2
+
+WRKSRC=		${WRKDIR}/RigelEngine-0.7.0-beta
+USE_CMAKE=	yes
+USE_LANGUAGES=	c c++17
+
+INSTALLATION_DIRS+=	bin
+
+pre-configure:
+	cp -R ${WRKDIR}/imgui-1.79/* ${WRKSRC}/3rd_party/imgui/imgui
+
+do-install:
+	${INSTALL_GAME} ${WRKSRC}/src/RigelEngine ${DESTDIR}${PREFIX}/bin
+
+.include "../../audio/SDL2_mixer/buildlink3.mk"
+.include "../../devel/SDL2/buildlink3.mk"
+.include "../../devel/boost-headers/buildlink3.mk"
+.include "../../devel/boost-libs/buildlink3.mk"
+.include "../../graphics/glm/buildlink3.mk"
+.include "../../wip/entityx/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/RigelEngine/PLIST b/RigelEngine/PLIST
new file mode 100644
index 0000000000..dc9da75870
--- /dev/null
+++ b/RigelEngine/PLIST
@@ -0,0 +1,2 @@
+@comment $NetBSD$
+bin/RigelEngine
diff --git a/RigelEngine/distinfo b/RigelEngine/distinfo
new file mode 100644
index 0000000000..ef9feddb08
--- /dev/null
+++ b/RigelEngine/distinfo
@@ -0,0 +1,12 @@
+$NetBSD$
+
+SHA1 (RigelEngine/imgui-1.7.9.tar.gz) = da92c36e123002475cd6adba8e3429051a317e71
+RMD160 (RigelEngine/imgui-1.7.9.tar.gz) = 2ae1cb43d0048e1f74f812ec47de5280dda53a84
+SHA512 (RigelEngine/imgui-1.7.9.tar.gz) = 35ed7af89123e09989ef81085f19ed15f97f4798e2b35834fd8b4ae918889b51132d85901f867ab2f379711a734bc7b2edd309d74f3f7527eaaaebfd766d3737
+Size (RigelEngine/imgui-1.7.9.tar.gz) = 1299303 bytes
+SHA1 (RigelEngine/v0.7.0-beta.tar.gz) = f4ebd8ac989500beb80bcba973bd444c852c3359
+RMD160 (RigelEngine/v0.7.0-beta.tar.gz) = 0b7ab181717ad36cc3524d265857079c82f97506
+SHA512 (RigelEngine/v0.7.0-beta.tar.gz) = 0eae25c434f2cf5e10f63c02fb776c56595683dfa6076c8cbc0f3b5101df431c08778c5ee44ebec38e320342619dc9d4161adfbf1c8036899208df51d552ee88
+Size (RigelEngine/v0.7.0-beta.tar.gz) = 756157 bytes
+SHA1 (patch-3rd__party_CMakeLists.txt) = 10629ff9d8d15eb817737f5d364aff29aa42ea90
+SHA1 (patch-CMakeLists.txt) = 148e401abbed52fc5747f6c182f2efeb9018fbd6
diff --git a/RigelEngine/patches/patch-3rd__party_CMakeLists.txt b/RigelEngine/patches/patch-3rd__party_CMakeLists.txt
new file mode 100644
index 0000000000..3d3b15ac8b
--- /dev/null
+++ b/RigelEngine/patches/patch-3rd__party_CMakeLists.txt
@@ -0,0 +1,19 @@
+$NetBSD$
+
+Don't download entityx. Use the pkgsrc version.
+
+--- 3rd_party/CMakeLists.txt.orig	2020-11-28 16:11:39.000000000 +0000
++++ 3rd_party/CMakeLists.txt
+@@ -28,10 +28,10 @@ set(ENTITYX_RUN_BENCHMARKS false CACHE I
+ set(ENTITYX_MAX_COMPONENTS 64 CACHE INTERNAL "")
+ 
+ add_subdirectory(dbopl)
+-add_subdirectory(entityx)
++#add_subdirectory(entityx)
+ add_subdirectory(glad)
+ add_subdirectory(speex_resampler)
+ add_subdirectory(imgui)
+ add_subdirectory(imgui-filebrowser)
+ 
+-rigel_disable_warnings(entityx)
++#rigel_disable_warnings(entityx)
diff --git a/RigelEngine/patches/patch-CMakeLists.txt b/RigelEngine/patches/patch-CMakeLists.txt
new file mode 100644
index 0000000000..aeaef92b3f
--- /dev/null
+++ b/RigelEngine/patches/patch-CMakeLists.txt
@@ -0,0 +1,30 @@
+$NetBSD$
+
+Don't download entityx. Use the pkgsrc.
+
+--- CMakeLists.txt.orig	2020-11-28 16:11:39.000000000 +0000
++++ CMakeLists.txt
+@@ -25,10 +25,10 @@ include("${CMAKE_SOURCE_DIR}/cmake/rigel
+ # initialized. It's still possible to get in a state where entityx is present
+ # but other submodules are not, but that's unlikely to happen to someone who
+ # has just cloned the repo and wants to build for the first time.
+-if(NOT EXISTS "${CMAKE_SOURCE_DIR}/3rd_party/entityx/entityx/Entity.h")
+-    message(FATAL_ERROR
+-        "It seems git submodules were not initialized. You need to run git submodule update --init --recursive, and then re-run CMake.")
+-endif()
++#if(NOT EXISTS "${CMAKE_SOURCE_DIR}/3rd_party/entityx/entityx/Entity.h")
++#    message(FATAL_ERROR
++#        "It seems git submodules were not initialized. You need to run git submodule update --init --recursive, and then re-run CMake.")
++#endif()
+ 
+ 
+ if("${CMAKE_SYSTEM_NAME}" STREQUAL "Emscripten")
+@@ -53,6 +53,8 @@ else()
+     find_package(Boost 1.65 COMPONENTS program_options REQUIRED)
+     find_package(SDL2 REQUIRED)
+     find_package(SDL2_mixer REQUIRED)
++    find_package(PkgConfig REQUIRED)
++    pkg_check_modules(ENTITYX entityx REQUIRED)
+ endif()
+ 
+ find_package(Filesystem REQUIRED)


Home | Main Index | Thread Index | Old Index