diff options
author | Julian Ospald <hasufell@gentoo.org> | 2012-12-15 23:23:42 +0000 |
---|---|---|
committer | Julian Ospald <hasufell@gentoo.org> | 2012-12-15 23:23:42 +0000 |
commit | 04459e466ab6e62f603e2766630c7ddfc838015e (patch) | |
tree | 3bf4dfb0caef8b187b219f996ea951c26d3f0994 /games-engines | |
parent | Migrate to distutils-r1. (diff) | |
download | gentoo-2-04459e466ab6e62f603e2766630c7ddfc838015e.tar.gz gentoo-2-04459e466ab6e62f603e2766630c7ddfc838015e.tar.bz2 gentoo-2-04459e466ab6e62f603e2766630c7ddfc838015e.zip |
version bump
(Portage version: 2.2.0_alpha148/cvs/Linux x86_64, signed Manifest commit with key E73C35B3)
Diffstat (limited to 'games-engines')
-rw-r--r-- | games-engines/odamex/ChangeLog | 8 | ||||
-rw-r--r-- | games-engines/odamex/files/odamex-0.6.2-build.patch | 204 | ||||
-rw-r--r-- | games-engines/odamex/odamex-0.6.2.ebuild | 96 |
3 files changed, 307 insertions, 1 deletions
diff --git a/games-engines/odamex/ChangeLog b/games-engines/odamex/ChangeLog index 1fae40a0a30e..5e8aa3fad467 100644 --- a/games-engines/odamex/ChangeLog +++ b/games-engines/odamex/ChangeLog @@ -1,6 +1,12 @@ # 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.3 2012/09/23 08:04:24 phajdan.jr Exp $ +# $Header: /var/cvsroot/gentoo-x86/games-engines/odamex/ChangeLog,v 1.4 2012/12/15 23:23:42 hasufell Exp $ + +*odamex-0.6.2 (15 Dec 2012) + + 15 Dec 2012; Julian Ospald <hasufell@gentoo.org> +odamex-0.6.2.ebuild, + +files/odamex-0.6.2-build.patch: + version bump 23 Sep 2012; Pawel Hajdan jr <phajdan.jr@gentoo.org> odamex-0.6.1.ebuild: x86 stable wrt bug #432726 diff --git a/games-engines/odamex/files/odamex-0.6.2-build.patch b/games-engines/odamex/files/odamex-0.6.2-build.patch new file mode 100644 index 000000000000..f5a7905e3788 --- /dev/null +++ b/games-engines/odamex/files/odamex-0.6.2-build.patch @@ -0,0 +1,204 @@ +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.2/CMakeLists.txt ++++ odamex-src-0.6.2/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.2)
+ 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.2/client/CMakeLists.txt ++++ odamex-src-0.6.2/client/CMakeLists.txt +@@ -55,11 +55,11 @@ + "Path to PortMIDI base directory. Only necessary if you get errors about PortMIDI not being found, or if you want to use a different installation of PortMIDI.")
+ set(ENV{PORTMIDI_DIR} ${PORTMIDI_DIR})
+ find_package(PortMidi)
+-if(PORTMIDI_FOUND)
++if(PORTMIDI_FOUND AND ENABLE_PORTMIDI)
+ include_directories(${PORTMIDI_INCLUDE_DIR})
+ add_definitions(-DPORTMIDI)
+ else()
+- message(WARNING "PortMidi not found, client will not be built with PortMidi support.")
++ message(WARNING "PortMidi not found or disabled, client will not be built with PortMidi support.")
+ endif()
+
+ # Find Mac frameworks
+@@ -79,7 +79,7 @@ + ${CLIENT_SOURCES} ${CLIENT_HEADERS} ${CLIENT_WIN32_RESOURCES}
+ ${CLIENT_MAC_OBJC_SOURCES})
+ target_link_libraries(odamex ${SDL_LIBRARY} ${SDLMIXER_LIBRARY})
+- if(PORTMIDI_FOUND)
++ if(PORTMIDI_FOUND AND ENABLE_PORTMIDI)
+ target_link_libraries(odamex ${PORTMIDI_LIBRARIES})
+ endif()
+ if(WIN32)
+@@ -146,6 +146,8 @@ + ${CMAKE_CURRENT_BINARY_DIR}/odamex.app/Contents/MacOS/odamex)
+ " )
+ endif()
+-
++ # UNIX install rules
++ elseif(UNIX)
++ install( TARGETS odamex DESTINATION ${CMAKE_INSTALL_BINDIR} )
+ endif()
+ endif()
+--- odamex-src-0.6.2/master/CMakeLists.txt ++++ odamex-src-0.6.2/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.2/odalaunch/CMakeLists.txt ++++ odamex-src-0.6.2/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.2/server/CMakeLists.txt ++++ odamex-src-0.6.2/server/CMakeLists.txt +@@ -50,3 +50,8 @@ + target_link_libraries(odasrv socket nsl)
+ endif()
+ #endif()
++
++# install rules
++if(UNIX)
++ install( TARGETS odasrv DESTINATION ${CMAKE_INSTALL_BINDIR} )
++endif()
+--- /dev/null ++++ odamex-src-0.6.2/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.2/common/d_main.cpp ++++ odamex-src-0.6.2/common/d_main.cpp +@@ -23,6 +23,7 @@ + //-----------------------------------------------------------------------------
+
+ #include "version.h"
++#include "config.h"
+
+ #include <sstream>
+ #include <string>
+@@ -493,6 +494,7 @@ + D_AddSearchDir(dirs, getenv("DOOMWADDIR"), separator);
+ D_AddSearchDir(dirs, getenv("DOOMWADPATH"), separator);
+ D_AddSearchDir(dirs, getenv("HOME"), separator);
++ D_AddSearchDir(dirs, CMAKE_WADDIR, separator);
+
+ // [AM] Search additional paths based on platform
+ D_AddPlatformSearchDirs(dirs);
+--- odamex-src-0.6.2/odalaunch/src/dlg_main.cpp ++++ odamex-src-0.6.2/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/odamex-0.6.2.ebuild b/games-engines/odamex/odamex-0.6.2.ebuild new file mode 100644 index 000000000000..242d6ebf8987 --- /dev/null +++ b/games-engines/odamex/odamex-0.6.2.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.2.ebuild,v 1.1 2012/12/15 23:23:42 hasufell Exp $ + +EAPI=5 +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 +} |