summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulian Ospald <hasufell@gentoo.org>2012-07-20 21:20:00 +0000
committerJulian Ospald <hasufell@gentoo.org>2012-07-20 21:20:00 +0000
commit87c9c910a96d6b8102f427179861e73ed267bbfe (patch)
treef2edba7c7123242cafd5b68c5a5d27d2fe6a181b /games-engines/odamex
parentMask next Calligra rc (diff)
downloadhistorical-87c9c910a96d6b8102f427179861e73ed267bbfe.tar.gz
historical-87c9c910a96d6b8102f427179861e73ed267bbfe.tar.bz2
historical-87c9c910a96d6b8102f427179861e73ed267bbfe.zip
initial import with Mike Wood wrt bug #197228
Package-Manager: portage-2.2.0_alpha120/cvs/Linux x86_64
Diffstat (limited to 'games-engines/odamex')
-rw-r--r--games-engines/odamex/ChangeLog8
-rw-r--r--games-engines/odamex/Manifest19
-rw-r--r--games-engines/odamex/files/odamex-0.6.1-build.patch212
-rw-r--r--games-engines/odamex/metadata.xml36
-rw-r--r--games-engines/odamex/odamex-0.6.1.ebuild96
5 files changed, 371 insertions, 0 deletions
diff --git a/games-engines/odamex/ChangeLog b/games-engines/odamex/ChangeLog
new file mode 100644
index 000000000000..f397fcf11e19
--- /dev/null
+++ b/games-engines/odamex/ChangeLog
@@ -0,0 +1,8 @@
+# ChangeLog for games-engines/odamex
+# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/games-engines/odamex/ChangeLog,v 1.1 2012/07/20 21:20:00 hasufell Exp $
+
+ 20 Jul 2012; Julian Ospald <hasufell@gentoo.org>
+ +files/odamex-0.6.1-build.patch, +metadata.xml:
+ initial import with Mike Wood wrt bug #197228
+
diff --git a/games-engines/odamex/Manifest b/games-engines/odamex/Manifest
new file mode 100644
index 000000000000..048eb1dbbb0f
--- /dev/null
+++ b/games-engines/odamex/Manifest
@@ -0,0 +1,19 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
+AUX odamex-0.6.1-build.patch 5903 SHA256 9654f26beaf684831347a2970ab959b27561b9772595a4a900ce589683a5b062 SHA512 29df1ad3f86dbf6e1dc92c2c01ce3e223ed0d38eb1fe8c1e1a06c2d158f67330f68e7fa542770fe0bf68ce8d8785371959f391cf98b8334b40fd0b9cb4b635c3 WHIRLPOOL 67d757cd882831fd86a007081d465183d184a4f06f3bd7d930b634bcc6b5124c2c793ef891420a77a243e686cc46a53a9f0a44bdf65e2902187aba76aeb6491a
+DIST odamex-src-0.6.1.tar.bz2 7522333 SHA256 d7758141d00510eae55132a2376326560a206c772da3d604666dc2c62009f861 SHA512 bb506ec912dbd63e68be2f1ef3ae7c0bdd800ac39ab56ddeb270c707584c1a34c83a729ef9bf3f8a5d24599b220d526ca9559fc9a2e3c561af3fe3ab134aa7f9 WHIRLPOOL 31d4adc826a3a2ffa1d5c9e3872edb6a702c9b6695f268ecba324fb27aa8f29db05d525972fbdafc1c5c8c58d991b2600674bb9ff674cf3d6991d3d3ba82a68d
+EBUILD odamex-0.6.1.ebuild 2166 SHA256 93c92e91630c9d6cf2c5b287bd68ab885cf317b292a9f1356cfc831ffed9b052 SHA512 9d8161e4f614d3c1d3fd2b77abfc0b815dddb1b51e1fdcd57a686cf48654f0e5157114565ef441d41be64ed8e21ab7ea19bffe147f428f93d2ff60f4d80ce343 WHIRLPOOL c63ed00279809393c6ac79945d9d10370a3701f65cb261fb9f7a36d071908ea594f72390f6024022e01c9e242cb83a3162ee2e6f12394840081313905d450546
+MISC ChangeLog 365 SHA256 d306bdff1c4f86e32e2b21c36c422c71f5c592d181e9732b42ad3926a0a17194 SHA512 ff88a51f59a6b728bf769c98f7f4b1e2e7ce12f4c7e10e778ebf2410a90a8ae3e3609281cdd2e4775c01bea9192f6943821a71eb114adab457130367970d97ea WHIRLPOOL a62d49a96252d55f4a59ca7053f75304bddd705f7ea2fcc7b4da5297935f50e4842a383ec0418e86ee1b8619133cf985f23dc0ad66c6ac320c0781e810a4c723
+MISC metadata.xml 1409 SHA256 a34f34c1a8940990b36b4e2b90b438aa20bd27248379bd25ad6d1fb5fb2d005c SHA512 46a7870945deac5e43b90f5c25c5d742c10926356a0f122bf7c8f79cd0f814e81a8560b4317ecc5f2bbe1807867667e2840529432fd58d6c5f547db453bb33be WHIRLPOOL 7ad416d13c6052026ab76d9c50810a708c70af7ea44450ca422dfd9ede924b41e2f4a71a4ab5c6ce2c66507a7b8282c6bfeaed278dec65c5a2cc11968ea8eabc
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.19 (GNU/Linux)
+
+iQEcBAEBCAAGBQJQCcqTAAoJEFpvPKfnPDWz01IH/iyQTw4kbJM1sKy0eR7QG6+w
+S3Ez8FdcgzqWI413ysjLXq1jGZwdP6h3VmwX16QINZcIW3BGzdZwRt5FIkZjoe4U
++/u/i5Cem8Ph0+1S1T1S5vhuGNnh58OA8zmlzOv3sPoxF7H/3gsSSNfze3rxjsF8
+ZsTxOB0MG5X2Yuby/gkZwmc4T2Ko0KlYeyTP/EubHnhdTQTWsOOL6sXL1RVMoFcL
+5Y/COTk7u4UbzUSEADA/fcYgJs3DSc4mmxcwn0QsKDaCA+rDEArgP6Xmb89kvx8k
+K8Zh0x6TO60rUk1H8COu+FpJ8FcLqE6rU1R7/kcoCdxYCyBEkrn4ZU0xHEA3c9w=
+=Crv2
+-----END PGP SIGNATURE-----
diff --git a/games-engines/odamex/files/odamex-0.6.1-build.patch b/games-engines/odamex/files/odamex-0.6.1-build.patch
new file mode 100644
index 000000000000..152d19211200
--- /dev/null
+++ b/games-engines/odamex/files/odamex-0.6.1-build.patch
@@ -0,0 +1,212 @@
+From: Julian Ospald <hasufell@gentoo.org>
+Date: Sun Jul 15 10:08:51 UTC 2012
+Subject: build system
+
+a. add install rules and make paths modifiable
+b. add odamex.wad install destination to wad search path
+c. add various cmake options
+d. use CMAKE_BINDIR as default bin patch in odalauncher
+
+--- odamex-src-0.6.1/CMakeLists.txt
++++ odamex-src-0.6.1/CMakeLists.txt
+@@ -2,6 +2,26 @@
+ project(Odamex)
+ cmake_minimum_required(VERSION 2.8)
+
++# cmake modules
++include( CMakeDependentOption )
++include( GNUInstallDirs )
++
++# options
++option(BUILD_CLIENT "Build client target" 1)
++option(BUILD_SERVER "Build server target" 1)
++option(BUILD_MASTER "Build master server target" 1)
++cmake_dependent_option( BUILD_ODALAUNCH "Build odalaunch target" 1 BUILD_CLIENT 0 )
++cmake_dependent_option( ENABLE_PORTMIDI "Enable portmidi support" 1 BUILD_CLIENT 0 )
++
++configure_file (
++ "${PROJECT_SOURCE_DIR}/config.h.in"
++ "${PROJECT_BINARY_DIR}/config.h"
++ )
++
++include_directories(
++ ${PROJECT_BINARY_DIR}
++)
++
+ set(PROJECT_VERSION 0.6.1)
+ set(PROJECT_COPYRIGHT "2006-2012")
+
+@@ -40,13 +60,31 @@
+ set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules)
+
+ # Subdirectories for individual projects
+-add_subdirectory(client)
+-add_subdirectory(server)
+-add_subdirectory(master)
+-add_subdirectory(odalaunch)
++if(BUILD_CLIENT)
++ add_subdirectory(client)
++endif()
++if(BUILD_SERVER)
++ add_subdirectory(server)
++endif()
++if(BUILD_MASTER)
++ add_subdirectory(master)
++endif()
++if(BUILD_ODALAUNCH)
++ add_subdirectory(odalaunch)
++endif()
++
++if(NOT BUILD_CLIENT AND NOT BUILD_SERVER AND NOT BUILD_MASTER)
++ message(FATAL_ERROR "No target chosen, doing nothing.")
++endif()
++
+
+ # Disable the ag-odalaunch target completely: -DNO_AG-ODALAUNCH_TARGET
+ # This is only really useful when setting up a universal build.
+ if(NOT NO_AG-ODALAUNCH_TARGET)
+ add_subdirectory(ag-odalaunch)
+ endif()
++
++# global install rules
++if(UNIX)
++ install(FILES odamex.wad DESTINATION ${CMAKE_INSTALL_DATADIR})
++endif()
+--- odamex-src-0.6.1/client/CMakeLists.txt
++++ odamex-src-0.6.1/client/CMakeLists.txt
+@@ -52,7 +52,7 @@
+
+ # Portmidi configuration
+ find_package(PortMidi)
+-if(PortMidi_FOUND)
++if(PortMidi_FOUND AND ENABLE_PORTMIDI)
+ include_directories(${PortMidi_INCLUDE_DIR})
+ ADD_DEFINITIONS(-DPORTMIDI ${PortMidi_CFLAGS})
+ else()
+@@ -141,5 +141,8 @@
+ " )
+ endif()
+
++ # UNIX install rules
++ elseif(UNIX)
++ install( TARGETS odamex DESTINATION ${CMAKE_INSTALL_BINDIR} )
+ endif()
+ endif()
+--- odamex-src-0.6.1/master/CMakeLists.txt
++++ odamex-src-0.6.1/master/CMakeLists.txt
+@@ -12,3 +12,9 @@
+ elseif(SOLARIS)
+ target_link_libraries(odamast socket nsl)
+ endif()
++
++# install rules
++if(UNIX)
++ install( TARGETS odamast DESTINATION ${CMAKE_INSTALL_BINDIR} )
++endif()
++
+--- odamex-src-0.6.1/odalaunch/CMakeLists.txt
++++ odamex-src-0.6.1/odalaunch/CMakeLists.txt
+@@ -61,3 +61,9 @@
+ )
+ endif()
+ endif()
++
++# install rules
++if(UNIX)
++ install( TARGETS odalaunch DESTINATION ${CMAKE_INSTALL_BINDIR} )
++endif()
++
+--- odamex-src-0.6.1/server/CMakeLists.txt
++++ odamex-src-0.6.1/server/CMakeLists.txt
+@@ -39,3 +39,8 @@
+ elseif(SOLARIS)
+ target_link_libraries(odasrv socket nsl)
+ endif()
++
++# install rules
++if(UNIX)
++ install( TARGETS odasrv DESTINATION ${CMAKE_INSTALL_BINDIR} )
++endif()
+--- /dev/null
++++ odamex-src-0.6.1/config.h.in
+@@ -0,0 +1,7 @@
++#ifndef CONFIG_H
++#define CONFIG_H
++
++#define CMAKE_WADDIR "@CMAKE_INSTALL_DATADIR@"
++#define CMAKE_BINDIR "@CMAKE_INSTALL_BINDIR@"
++
++#endif
+--- odamex-src-0.6.1/client/src/d_main.cpp
++++ odamex-src-0.6.1/client/src/d_main.cpp
+@@ -25,6 +25,7 @@
+ //-----------------------------------------------------------------------------
+
+ #include "version.h"
++#include "config.h"
+
+ #include <sstream>
+ #include <string>
+@@ -836,6 +837,7 @@
+ D_AddSearchDir(dirs, getenv("DOOMWADPATH"), separator);
+ D_AddSearchDir(dirs, getenv("HOME"), separator);
+ D_AddSearchDir(dirs, waddirs.cstring(), separator);
++ D_AddSearchDir(dirs, CMAKE_WADDIR, separator);
+
+ dirs.erase(std::unique(dirs.begin(), dirs.end()), dirs.end());
+
+--- odamex-src-0.6.1/server/src/d_main.cpp
++++ odamex-src-0.6.1/server/src/d_main.cpp
+@@ -25,6 +25,7 @@
+ //-----------------------------------------------------------------------------
+
+ #include "version.h"
++#include "config.h"
+
+ #include <sstream>
+ #include <string>
+@@ -628,9 +629,9 @@
+ D_AddSearchDir(dirs, Args.CheckValue("-waddir"), separator);
+ D_AddSearchDir(dirs, getenv("DOOMWADDIR"), separator);
+ D_AddSearchDir(dirs, getenv("DOOMWADPATH"), separator);
+- D_AddSearchDir(dirs, getenv("HOME"), separator);
+- D_AddSearchDir(dirs, waddirs.cstring(), separator);
+-
++ D_AddSearchDir(dirs, getenv("HOME"), separator);
++ D_AddSearchDir(dirs, waddirs.cstring(), separator);
++ D_AddSearchDir(dirs, CMAKE_WADDIR, separator);
+
+ dirs.erase(std::unique(dirs.begin(), dirs.end()), dirs.end());
+
+--- odamex-src-0.6.1/odalaunch/src/dlg_main.cpp
++++ odamex-src-0.6.1/odalaunch/src/dlg_main.cpp
+@@ -27,6 +27,7 @@
+ #include "str_utils.h"
+
+ #include "md5.h"
++#include "config.h"
+
+ #include <wx/settings.h>
+ #include <wx/menu.h>
+@@ -42,6 +43,7 @@
+ #include <wx/process.h>
+ #include <wx/toolbar.h>
+ #include <wx/xrc/xmlres.h>
++#include <wx/string.h>
+
+ #ifdef __WXMSW__
+ #include <windows.h>
+@@ -190,10 +192,12 @@
+ }
+ #endif
+
++ const char *cmake_bindir_str = CMAKE_BINDIR;
++ wxString cmake_bindir = wxString::FromAscii(cmake_bindir_str);
+ launchercfg_s.get_list_on_start = 1;
+ launchercfg_s.show_blocked_servers = 0;
+ launchercfg_s.wad_paths = wxGetCwd();
+- launchercfg_s.odamex_directory = wxGetCwd();
++ launchercfg_s.odamex_directory = cmake_bindir;
+
+ m_LstCtrlServers = XRCCTRL(*this, "Id_LstCtrlServers", LstOdaServerList);
+ m_LstCtrlPlayers = XRCCTRL(*this, "Id_LstCtrlPlayers", LstOdaPlayerList);
diff --git a/games-engines/odamex/metadata.xml b/games-engines/odamex/metadata.xml
new file mode 100644
index 000000000000..403b5348bbb7
--- /dev/null
+++ b/games-engines/odamex/metadata.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <maintainer>
+ <email>hasufell@gentoo.org</email>
+ <name>Julian Ospald</name>
+ <description>Maintainer, assign bugs to him</description>
+ </maintainer>
+ <maintainer>
+ <email>mwoodj@knology.net</email>
+ <name>Mike Wood</name>
+ <description>Proxy maintainer. CC him on bugs</description>
+ </maintainer>
+ <use>
+ <flag name="odalaunch">Build the wxwidgets based launcher.</flag>
+ <flag name="master">Build master server target (advertises odamex server list)</flag>
+ <flag name="portmidi">Enable portmidi support.</flag>
+ <flag name="server">Build server target.</flag>
+ </use>
+ <upstream>
+ <changelog>http://odamex.net/changelog.php</changelog>
+ <doc lang="en">http://odamex.net/wiki/Odamex</doc>
+ <bugs-to>http://odamex.net/bugs/</bugs-to>
+ </upstream>
+ <longdescription lang="en">
+ Odamex is a free and open source port for the classic
+ first-person-shooter Doom. Odamex's goal is to emulate the feel of and
+ retain many aspects of the original Doom executables while offering a
+ broader expanse of security features, personal configuration, gameplay
+ options, and editing features. Odamex can run on a wide range of
+ operating systems and hardware, so players should be able to play
+ on almost any platform.
+ </longdescription>
+</pkgmetadata>
+
diff --git a/games-engines/odamex/odamex-0.6.1.ebuild b/games-engines/odamex/odamex-0.6.1.ebuild
new file mode 100644
index 000000000000..d56751a0eed6
--- /dev/null
+++ b/games-engines/odamex/odamex-0.6.1.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/games-engines/odamex/odamex-0.6.1.ebuild,v 1.1 2012/07/20 21:20:00 hasufell Exp $
+
+EAPI=4
+WX_GTK_VER="2.8"
+inherit cmake-utils eutils gnome2-utils wxwidgets games
+
+MY_P=${PN}-src-${PV}
+DESCRIPTION="An online multiplayer, free software engine for Doom and Doom II"
+HOMEPAGE="http://odamex.net/"
+SRC_URI="mirror://sourceforge/${PN}/Odamex/${PV}/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="dedicated +odalaunch master portmidi server"
+
+RDEPEND="
+ !dedicated? (
+ >=media-libs/libsdl-1.2.9[X,audio,joystick,video]
+ >=media-libs/sdl-mixer-1.2.6
+ odalaunch? ( x11-libs/wxGTK:${WX_GTK_VER}[X] )
+ portmidi? ( media-libs/portmidi )
+ )"
+DEPEND="${RDEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-build.patch
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_BINDIR="${GAMES_BINDIR}"
+ -DCMAKE_INSTALL_DATADIR="${GAMES_DATADIR}"/${PN}
+ $(cmake-utils_use_build master MASTER)
+ )
+
+ if use dedicated ; then
+ mycmakeargs+=(
+ -DBUILD_CLIENT=OFF
+ -DBUILD_ODALAUNCH=OFF
+ -DBUILD_SERVER=ON
+ -DENABLE_PORTMIDI=OFF
+ )
+ else
+ mycmakeargs+=(
+ -DBUILD_CLIENT=ON
+ $(cmake-utils_use_build odalaunch ODALAUNCH)
+ $(cmake-utils_use_build server SERVER)
+ $(cmake-utils_use_enable portmidi PORTMIDI)
+ )
+ fi
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ if ! use dedicated ; then
+ newicon -s 128 "${S}/media/icon_${PN}_128.png" "${PN}.png"
+ make_desktop_entry ${PN}
+
+ if use odalaunch ; then
+ newicon -s 128 "${S}/media/icon_odalaunch_128.png" "odalaunch.png"
+ make_desktop_entry odalaunch "Odamex Launcher" odalaunch
+ fi
+ fi
+
+ prepgamesdirs
+}
+
+pkg_preinst() {
+ games_pkg_preinst
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ einfo
+ elog "This is just the engine, you will need doom resource files in order to play."
+ elog "Check: http://odamex.net/wiki/FAQ#What_data_files_are_required.3F"
+ einfo
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}