summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorDasperal2023-01-10 10:49:09 +0300
committerDasperal2023-01-10 10:49:09 +0300
commitb1fd1f5b9ded4bd799c67b404e0eb4b7e934b124 (patch)
tree00bdc6165ab559e4d8cc20258a6e40ffdec0b1ed
downloadaur-b1fd1f5b9ded4bd799c67b404e0eb4b7e934b124.tar.gz
Initial creation of AUR package for International Heretic 6.0
-rw-r--r--.SRCINFO24
-rw-r--r--.gitignore5
-rw-r--r--01-unique-resource-locations.patch82
-rw-r--r--PKGBUILD41
4 files changed, 152 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..7fe5f51ad15d
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,24 @@
+pkgbase = inter-heretic
+ pkgdesc = A limit-removing source port of Heretic with enhancements and translation to the Russian language
+ pkgver = 6.0
+ pkgrel = 1
+ url = https://github.com/JNechaevsky/inter-doom
+ arch = i686
+ arch = x86_64
+ arch = armv7h
+ arch = aarch64
+ license = GPL2
+ makedepends = cmake
+ makedepends = python3
+ makedepends = git
+ depends = sdl2>=2.0.18
+ depends = sdl2_mixer>=2.0.2
+ depends = sdl2_net>=2.0.0
+ depends = libsamplerate
+ optdepends = heretic1-wad: Heretic shareware game data
+ source = inter-heretic-6.0.tar.gz::https://github.com/JNechaevsky/inter-doom/archive/refs/tags/heretic-6.0.tar.gz
+ source = 01-unique-resource-locations.patch
+ b2sums = fae01517158d654b85bad17c97d861bcc58733a0f8eb6511ebb059f3cba59b28a2ab752ce63bf968afca142de5e7d758fa5dd4ae93c0e53b248d1c36f91ce165
+ b2sums = 5417bea2dcd92e25af85bb3272c24e5e6930064f687b24d89aa08393948fe41f091fe0e692d8f58eb11c43248459ab1da40ed3fca2ff4a73db688e3b89fdd825
+
+pkgname = inter-heretic
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..758de4121575
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,5 @@
+*
+!.gitignore
+!PKGBUILD
+!.SRCINFO
+!01-unique-resource-locations.patch
diff --git a/01-unique-resource-locations.patch b/01-unique-resource-locations.patch
new file mode 100644
index 000000000000..5caa940caa0e
--- /dev/null
+++ b/01-unique-resource-locations.patch
@@ -0,0 +1,82 @@
+diff --unified --recursive --text inter-doom-heretic-6.0/src/base/CMakeLists.txt inter-doom-heretic-6.0.new/src/base/CMakeLists.txt
+--- inter-doom-heretic-6.0/src/base/CMakeLists.txt 2022-12-31 11:06:34.000000000 +0300
++++ inter-doom-heretic-6.0.new/src/base/CMakeLists.txt 2023-01-10 10:22:43.535046946 +0300
+@@ -22,7 +22,7 @@
+ )
+
+ install(FILES $<GENEX_EVAL:$<TARGET_PROPERTY:doom-wads,OUT_FILES>>
+- DESTINATION $<IF:$<OR:$<BOOL:${WIN32}>,$<BOOL:${BUILD_PORTABLE}>>,base,${CMAKE_INSTALL_DATADIR}/${PACKAGE_TARNAME}>
++ DESTINATION $<IF:$<OR:$<BOOL:${WIN32}>,$<BOOL:${BUILD_PORTABLE}>>,base,${CMAKE_INSTALL_DATADIR}/${PROGRAM_PREFIX}doom>
+ COMPONENT doom
+ )
+ endif()
+@@ -33,7 +33,7 @@
+ )
+
+ install(FILES $<GENEX_EVAL:$<TARGET_PROPERTY:heretic-wads,OUT_FILES>>
+- DESTINATION $<IF:$<OR:$<BOOL:${WIN32}>,$<BOOL:${BUILD_PORTABLE}>>,base,${CMAKE_INSTALL_DATADIR}/${PACKAGE_TARNAME}>
++ DESTINATION $<IF:$<OR:$<BOOL:${WIN32}>,$<BOOL:${BUILD_PORTABLE}>>,base,${CMAKE_INSTALL_DATADIR}/${PROGRAM_PREFIX}heretic>
+ COMPONENT heretic
+ )
+ endif()
+@@ -45,7 +45,7 @@
+ )
+
+ install(FILES $<GENEX_EVAL:$<TARGET_PROPERTY:hexen-wads,OUT_FILES>>
+- DESTINATION $<IF:$<OR:$<BOOL:${WIN32}>,$<BOOL:${BUILD_PORTABLE}>>,base,${CMAKE_INSTALL_DATADIR}/${PACKAGE_TARNAME}>
++ DESTINATION $<IF:$<OR:$<BOOL:${WIN32}>,$<BOOL:${BUILD_PORTABLE}>>,base,${CMAKE_INSTALL_DATADIR}/${PROGRAM_PREFIX}hexen>
+ COMPONENT hexen
+ )
+ endif()
+@@ -57,7 +57,7 @@
+ )
+
+ install(FILES $<GENEX_EVAL:$<TARGET_PROPERTY:strife-wads,OUT_FILES>>
+- DESTINATION $<IF:$<OR:$<BOOL:${WIN32}>,$<BOOL:${BUILD_PORTABLE}>>,base,${CMAKE_INSTALL_DATADIR}/${PACKAGE_TARNAME}>
++ DESTINATION $<IF:$<OR:$<BOOL:${WIN32}>,$<BOOL:${BUILD_PORTABLE}>>,base,${CMAKE_INSTALL_DATADIR}/${PROGRAM_PREFIX}strife>
+ COMPONENT strife
+ )
+ endif()
+diff --unified --recursive --text inter-doom-heretic-6.0/src/base/gus_patches/CMakeLists.txt inter-doom-heretic-6.0.new/src/base/gus_patches/CMakeLists.txt
+--- inter-doom-heretic-6.0/src/base/gus_patches/CMakeLists.txt 2022-12-31 11:06:34.000000000 +0300
++++ inter-doom-heretic-6.0.new/src/base/gus_patches/CMakeLists.txt 2023-01-10 10:22:43.535046946 +0300
+@@ -197,14 +197,9 @@
+ xylophon.pat
+ )
+
+-install(FILES $<GENEX_EVAL:$<TARGET_PROPERTY:gus-patches,OUT_FILES>>
+- DESTINATION $<IF:$<OR:$<BOOL:${WIN32}>,$<BOOL:${BUILD_PORTABLE}>>,base,${CMAKE_INSTALL_DATADIR}/${PACKAGE_TARNAME}>/gus_patches
+-)
+-# Same install rule but for component based install
+ foreach(MODULE ${COMPILE_MODULES})
+ install(FILES $<GENEX_EVAL:$<TARGET_PROPERTY:gus-patches,OUT_FILES>>
+- DESTINATION $<IF:$<OR:$<BOOL:${WIN32}>,$<BOOL:${BUILD_PORTABLE}>>,base,${CMAKE_INSTALL_DATADIR}/${PACKAGE_TARNAME}>/gus_patches
++ DESTINATION $<IF:$<OR:$<BOOL:${WIN32}>,$<BOOL:${BUILD_PORTABLE}>>,base,${CMAKE_INSTALL_DATADIR}/${PROGRAM_PREFIX}${MODULE}>/gus_patches
+ COMPONENT "${MODULE}"
+- EXCLUDE_FROM_ALL
+ )
+ endforeach()
+diff --unified --recursive --text inter-doom-heretic-6.0/src/m_misc.c inter-doom-heretic-6.0.new/src/m_misc.c
+--- inter-doom-heretic-6.0/src/m_misc.c 2022-12-31 11:06:34.000000000 +0300
++++ inter-doom-heretic-6.0.new/src/m_misc.c 2023-01-10 10:22:43.535046946 +0300
+@@ -41,6 +41,7 @@
+ #endif
+
+ #include "doomtype.h"
++#include "d_name.h"
+ #include "i_system.h"
+ #include "i_timer.h"
+ #include "m_argv.h"
+@@ -767,7 +768,11 @@
+ #elif defined(__APPLE__)
+ retVal = M_StringJoin(packageResourcesDir, resourceName, NULL);
+ #else // Linux
+- retVal = M_StringJoin(PACKAGE_DATADIR, DIR_SEPARATOR_S, PACKAGE_TARNAME, DIR_SEPARATOR_S, resourceName, NULL);
++ const char* gameName = RD_GameType == gt_Doom ? "doom"
++ : RD_GameType == gt_Heretic ? "heretic"
++ : RD_GameType == gt_Hexen ? "hexen"
++ : "strife";
++ retVal = M_StringJoin(PACKAGE_DATADIR, DIR_SEPARATOR_S, PROGRAM_PREFIX, gameName, DIR_SEPARATOR_S, resourceName, NULL);
+ #endif
+ if(!M_FileExists(retVal))
+ {
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..a44e5e800d3e
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,41 @@
+# Maintainer: Leonid Murin (Dasperal) <Dasperal1 at gmail dot com>
+pkgname=inter-heretic
+pkgver=6.0
+pkgrel=1
+pkgdesc="A limit-removing source port of Heretic with enhancements and translation to the Russian language"
+arch=('i686' 'x86_64' 'armv7h' 'aarch64')
+url="https://github.com/JNechaevsky/inter-doom"
+license=('GPL2')
+depends=('sdl2>=2.0.18' 'sdl2_mixer>=2.0.2' 'sdl2_net>=2.0.0' 'libsamplerate')
+makedepends=(cmake python3 git)
+optdepends=('heretic1-wad: Heretic shareware game data')
+source=("${pkgname}-${pkgver}.tar.gz::https://github.com/JNechaevsky/inter-doom/archive/refs/tags/heretic-${pkgver}.tar.gz"
+ "01-unique-resource-locations.patch")
+b2sums=('fae01517158d654b85bad17c97d861bcc58733a0f8eb6511ebb059f3cba59b28a2ab752ce63bf968afca142de5e7d758fa5dd4ae93c0e53b248d1c36f91ce165'
+ '5417bea2dcd92e25af85bb3272c24e5e6930064f687b24d89aa08393948fe41f091fe0e692d8f58eb11c43248459ab1da40ed3fca2ff4a73db688e3b89fdd825')
+
+prepare() {
+ cd "${srcdir}/inter-doom-heretic-${pkgver}"
+ # Store internal resources in a unique location for each game to fix conflicts between packages
+ patch --strip=1 -i "${srcdir}/01-unique-resource-locations.patch"
+}
+
+build() {
+ # Upstream forces `-O2` for 'Release' build type
+ cmake -S "inter-doom-heretic-${pkgver}" -B build \
+ -D CMAKE_BUILD_TYPE="Release" \
+ -D CMAKE_INSTALL_PREFIX="/usr" \
+ -D COMPILE_DOOM="OFF" \
+ -D COMPILE_HERETIC="ON" \
+ -D COMPILE_HEXEN="OFF" \
+ -D COMPILE_STRIFE="OFF" \
+ -D BUILD_VERSION_OVERWRITE="${pkgver}"
+ cmake --build build
+}
+
+package() {
+ DESTDIR="${pkgdir}" cmake --install build
+ install -d "${pkgdir}/usr/share/licenses/${pkgname}"
+ mv "${pkgdir}/usr/share/doc/inter-doom/GPL.txt" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ rm -r "${pkgdir}/usr/share/doc"
+}