summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--games-fps/prboom-plus/Manifest2
-rw-r--r--games-fps/prboom-plus/files/prboom-plus-2.5.1.4-Remove-nonstandard-gamesdir-variable.patch33
-rw-r--r--games-fps/prboom-plus/files/prboom-plus-2.5.1.7.82-Add-CMake-install-targets.patch59
-rw-r--r--games-fps/prboom-plus/metadata.xml3
-rw-r--r--games-fps/prboom-plus/prboom-plus-2.5.1.5.4540.1.ebuild64
-rw-r--r--games-fps/prboom-plus/prboom-plus-2.5.1.7.82.ebuild64
6 files changed, 126 insertions, 99 deletions
diff --git a/games-fps/prboom-plus/Manifest b/games-fps/prboom-plus/Manifest
index c1490c8fbdb..9acad2caf4b 100644
--- a/games-fps/prboom-plus/Manifest
+++ b/games-fps/prboom-plus/Manifest
@@ -1 +1 @@
-DIST prboom-plus-2.5.1.5.4540.1.tar.xz 1023228 BLAKE2B 5b1c6aa80516cef4ced73701b640a261188c6eed818a204ef19f183061c0456f4af70dc8b466c240f5c8985903fe4daf0fed42cd32b47849c02b6c890fa807f0 SHA512 9fe207a395d92305dd3b89a38bc1376de6bd2a7bb29d454da42aea03a4ded82b49033d482d97c76377cbd1ecb7d8a65c9e0948af81ecd4e10bd49b0bad791bbc
+DIST prboom-plus-2.5.1.7.82.tar.gz 1541604 BLAKE2B 7c10754aa5f85879b63a3778d87e8e2fcd21fcd5092f96a31dc087e878ca080b9ce48d2e7d8f5cac9aa05c8a69cf5f6e9661a5b581de7afe21d59a18af2e57e9 SHA512 55f0ec4edcbac80174aadc63f1f77f3b868a6d1e8efc309ed6f71898d486a3c31d18e08130c9b4a6afd63185003bfd11e6b5940b550071f60168b3c716845f0f
diff --git a/games-fps/prboom-plus/files/prboom-plus-2.5.1.4-Remove-nonstandard-gamesdir-variable.patch b/games-fps/prboom-plus/files/prboom-plus-2.5.1.4-Remove-nonstandard-gamesdir-variable.patch
deleted file mode 100644
index c64bd135937..00000000000
--- a/games-fps/prboom-plus/files/prboom-plus-2.5.1.4-Remove-nonstandard-gamesdir-variable.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From d0aaa51e05da23c2b0ad46901c2f4b3cd0500681 Mon Sep 17 00:00:00 2001
-From: William Breathitt Gray <vilhelm.gray@gmail.com>
-Date: Fri, 21 Jun 2019 17:31:01 +0900
-Subject: [PATCH] Remove nonstandard gamesdir variable
-
-The Autotools canonical method of configuring the program installation
-directory is via the bindir variable (e.g. "--bindir=/usr/games/doom").
----
- src/Makefile.am | 6 ++----
- 1 file changed, 2 insertions(+), 4 deletions(-)
-
-diff --git a/src/Makefile.am b/src/Makefile.am
-index c20da98..9b3ab13 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -8,12 +8,10 @@
-
- SUBDIRS = SDL POSIX MAC PCSOUND TEXTSCREEN MUSIC
-
--gamesdir=$(prefix)/games
--
- if BUILD_SERVER
--games_PROGRAMS = prboom-plus prboom-plus-game-server
-+bin_PROGRAMS = prboom-plus prboom-plus-game-server
- else
--games_PROGRAMS = prboom-plus
-+bin_PROGRAMS = prboom-plus
- endif
-
- CFLAGS = @CFLAGS@ @SDL_CFLAGS@
---
-2.22.0
-
diff --git a/games-fps/prboom-plus/files/prboom-plus-2.5.1.7.82-Add-CMake-install-targets.patch b/games-fps/prboom-plus/files/prboom-plus-2.5.1.7.82-Add-CMake-install-targets.patch
new file mode 100644
index 00000000000..b506fdd6aac
--- /dev/null
+++ b/games-fps/prboom-plus/files/prboom-plus-2.5.1.7.82-Add-CMake-install-targets.patch
@@ -0,0 +1,59 @@
+From b123022530997df901abbfc7f8dab2846e7d1d7a Mon Sep 17 00:00:00 2001
+From: William Breathitt Gray <vilhelm.gray@gmail.com>
+Date: Sat, 6 Jun 2020 13:39:46 -0400
+Subject: [PATCH] Add CMake install targets
+
+Fixes: https://github.com/coelckers/prboom-plus/issues/70
+---
+ prboom2/CMakeLists.txt | 2 +-
+ prboom2/data/CMakeLists.txt | 2 ++
+ prboom2/src/CMakeLists.txt | 3 +++
+ 3 files changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/prboom2/CMakeLists.txt b/prboom2/CMakeLists.txt
+index 4aba6b94..932182b6 100644
+--- a/prboom2/CMakeLists.txt
++++ b/prboom2/CMakeLists.txt
+@@ -150,7 +150,7 @@ check_symbol_exists(SDL_JoystickGetAxis "SDL.h" HAVE_SDL_JOYSTICKGETAXIS)
+ set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES_PREV})
+ set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES_PREV})
+
+-set(DOOMWADDIR "${CMAKE_INSTALL_PREFIX}/share/games/doom" CACHE PATH "Path to install prboom.wad and look for other WAD files")
++set(DOOMWADDIR "${CMAKE_INSTALL_PREFIX}/share/games/doom" CACHE PATH "Path to look for WAD files")
+
+ option(SIMPLECHECKS "Enable checks which only impose significant overhead if a posible error is detected" ON)
+ option(ZONEIDCHECK "Enable id checks on zone blocks, to detect corrupted and illegally freed blocks" ON)
+diff --git a/prboom2/data/CMakeLists.txt b/prboom2/data/CMakeLists.txt
+index b855e9e5..33e1d873 100644
+--- a/prboom2/data/CMakeLists.txt
++++ b/prboom2/data/CMakeLists.txt
+@@ -362,3 +362,5 @@ add_custom_command(
+ DEPENDS rdatawad ${WAD_SRC}
+ )
+ add_custom_target(prboomwad DEPENDS ${WAD_DATA_PATH})
++set(WAD_INSTALL_PATH ${DOOMWADDIR} CACHE PATH "Path to install prboom.wad")
++install(FILES ${WAD_DATA_PATH} DESTINATION ${WAD_INSTALL_PATH} COMPONENT "PrBoom-Plus internal WAD")
+diff --git a/prboom2/src/CMakeLists.txt b/prboom2/src/CMakeLists.txt
+index b5a0f6bd..89505603 100644
+--- a/prboom2/src/CMakeLists.txt
++++ b/prboom2/src/CMakeLists.txt
+@@ -340,6 +340,8 @@ function(AddGameExecutable TARGET SOURCES)
+ COMMAND ${CMAKE_COMMAND} -E copy_if_different ${WAD_DATA_PATH} $<TARGET_FILE_DIR:prboom-plus>
+ )
+ endif()
++
++ install(TARGETS ${TARGET} COMPONENT "Game executable")
+ endfunction()
+
+ AddGameExecutable(prboom-plus "${PRBOOM_PLUS_SOURCES}")
+@@ -426,6 +428,7 @@ if(BUILD_SERVER AND SDL2_NET_FOUND)
+ RUNTIME_OUTPUT_DIRECTORY ${PRBOOM_OUTPUT_PATH}
+ )
+ ApplySDL2NetOptions(prboom-plus-game-server)
++ install(TARGETS prboom-plus-game-server COMPONENT "Game server executable")
+ endif()
+
+
+--
+2.26.2
+
diff --git a/games-fps/prboom-plus/metadata.xml b/games-fps/prboom-plus/metadata.xml
index 55581848150..aa68b85edb3 100644
--- a/games-fps/prboom-plus/metadata.xml
+++ b/games-fps/prboom-plus/metadata.xml
@@ -31,9 +31,10 @@
<flag name="portmidi">Enable support for MIDI via <pkg>media-libs/portmidi</pkg></flag>
<flag name="sdl2-image">Enable support for high-resolution texture support via <pkg>media-libs/sdl2-image</pkg></flag>
<flag name="sdl2-mixer">Enable support for MIDI via <pkg>media-libs/sdl2-mixer</pkg></flag>
+ <flag name="server">Build PrBoom-Plus server</flag>
</use>
<upstream>
<bugs-to>https://bugs.debian.org/prboom-plus</bugs-to>
- <doc lang="en">https://prboom-plus.sourceforge.net</doc>
+ <doc lang="en">https://github.com/coelckers/prboom-plus</doc>
</upstream>
</pkgmetadata>
diff --git a/games-fps/prboom-plus/prboom-plus-2.5.1.5.4540.1.ebuild b/games-fps/prboom-plus/prboom-plus-2.5.1.5.4540.1.ebuild
deleted file mode 100644
index 8ac28f7f6e9..00000000000
--- a/games-fps/prboom-plus/prboom-plus-2.5.1.5.4540.1.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 2019-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools desktop xdg
-
-MY_PV=$(ver_rs 4 "+svn" 5 "+dfsg")
-MY_P=${PN}-${MY_PV}
-DESCRIPTION="An enhanced clone of the classic first-person shooter Doom"
-HOMEPAGE="http://prboom-plus.sourceforge.net"
-SRC_URI="http://deb.debian.org/debian/pool/main/p/prboom-plus/${PN}_${MY_PV}.orig.tar.xz -> ${P}.tar.xz"
-
-LICENSE="GPL-2+ BSD BSD-with-disclosure LGPL-2.1+ MIT public-domain"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="dumb fluidsynth mad net +opengl +pcre portmidi sdl2-image +sdl2-mixer vorbis"
-REQUIRED_USE="sdl2-image? ( opengl )"
-
-DEPEND="
- media-libs/libsdl2[opengl?,joystick,sound,video]
- dumb? ( media-libs/dumb:= )
- fluidsynth? ( media-sound/fluidsynth:= )
- mad? ( media-libs/libmad )
- net? ( media-libs/sdl2-net )
- pcre? ( dev-libs/libpcre:3 )
- portmidi? ( media-libs/portmidi )
- sdl2-image? ( media-libs/sdl2-image )
- sdl2-mixer? ( media-libs/sdl2-mixer[midi] )
- vorbis? ( media-libs/libvorbis )"
-RDEPEND="${DEPEND}"
-
-S=${WORKDIR}/${MY_P}
-PATCHES=(
- "${FILESDIR}/${PN}-2.5.1.4-Remove-nonstandard-gamesdir-variable.patch"
-)
-
-src_prepare() {
- xdg_src_prepare
- eautoreconf
-}
-
-src_configure() {
- econf \
- --disable-cpu-opt \
- --disable-nonfree-graphics \
- $(use_enable opengl gl) \
- $(use_with dumb) \
- $(use_with fluidsynth) \
- $(use_with mad) \
- $(use_with net) \
- $(use_with pcre) \
- $(use_with portmidi) \
- $(use_with sdl2-image image) \
- $(use_with sdl2-mixer mixer) \
- $(use_with vorbis vorbisfile) \
- --with-waddir="${EPREFIX}/usr/share/doom"
-}
-
-src_install() {
- default
- doicon ICONS/${PN}.svg
- domenu ICONS/${PN}.desktop
-}
diff --git a/games-fps/prboom-plus/prboom-plus-2.5.1.7.82.ebuild b/games-fps/prboom-plus/prboom-plus-2.5.1.7.82.ebuild
new file mode 100644
index 00000000000..ec37137ed26
--- /dev/null
+++ b/games-fps/prboom-plus/prboom-plus-2.5.1.7.82.ebuild
@@ -0,0 +1,64 @@
+# Copyright 2019-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake desktop xdg
+
+MY_PV=$(ver_rs 4 "um+git")
+DESCRIPTION="An enhanced clone of the classic first-person shooter Doom"
+HOMEPAGE="https://github.com/coelckers/prboom-plus/"
+SRC_URI="http://deb.debian.org/debian/pool/main/p/prboom-plus/${PN}_${MY_PV}.orig.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+ GPL-3+ BSD BSD-2 BSD-with-disclosure CC-BY-3.0 CC0-1.0 LGPL-2.1+ MIT public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="dumb fluidsynth mad net +opengl +pcre portmidi sdl2-image +sdl2-mixer server vorbis zlib"
+REQUIRED_USE="server? ( net )"
+
+DEPEND="
+ media-libs/libsdl2[opengl?,joystick,sound,video]
+ dumb? ( media-libs/dumb:= )
+ fluidsynth? ( media-sound/fluidsynth:= )
+ mad? ( media-libs/libmad )
+ net? ( media-libs/sdl2-net )
+ pcre? ( dev-libs/libpcre:3 )
+ portmidi? ( media-libs/portmidi )
+ sdl2-image? ( media-libs/sdl2-image )
+ sdl2-mixer? ( media-libs/sdl2-mixer[midi] )
+ vorbis? ( media-libs/libvorbis )
+ zlib? ( sys-libs/zlib )"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${PN}-master/prboom2"
+
+src_prepare() {
+ eapply -p2 "${FILESDIR}"/prboom-plus-2.5.1.7.82-Add-CMake-install-targets.patch
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_GL="$(usex opengl)"
+ -DWITH_IMAGE="$(usex sdl2-image)"
+ -DWITH_MIXER="$(usex sdl2-mixer)"
+ -DWITH_NET="$(usex net)"
+ -DWITH_PCRE="$(usex pcre)"
+ -DWITH_ZLIB="$(usex zlib)"
+ -DWITH_MAD="$(usex mad)"
+ -DWITH_FLUIDSYNTH="$(usex fluidsynth)"
+ -DWITH_DUMB="$(usex dumb)"
+ -DWITH_VORBISFILE="$(usex vorbis)"
+ -DWITH_PORTMIDI="$(usex portmidi)"
+ -DDOOMWADDIR="${EPREFIX}/usr/share/doom"
+ -DWAD_INSTALL_PATH="${EPREFIX}/usr/share/doom"
+ -DBUILD_SERVER="$(usex server)"
+ )
+ cmake_src_configure
+}
+
+src_install() {
+ doicon -s scalable ICONS/${PN}.svg
+ domenu ICONS/${PN}.desktop
+ cmake_src_install
+}