From owner-freebsd-ports-bugs@FreeBSD.ORG Thu May 8 16:30:00 2014 Return-Path: Delivered-To: freebsd-ports-bugs@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 931E4F57 for ; Thu, 8 May 2014 16:30:00 +0000 (UTC) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6F88C652 for ; Thu, 8 May 2014 16:30:00 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.8/8.14.8) with ESMTP id s48GU09v034007 for ; Thu, 8 May 2014 16:30:00 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.8/8.14.8/Submit) id s48GU0Xd034006; Thu, 8 May 2014 16:30:00 GMT (envelope-from gnats) Resent-Date: Thu, 8 May 2014 16:30:00 GMT Resent-Message-Id: <201405081630.s48GU0Xd034006@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Sender Ghost Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B6322ADA for ; Thu, 8 May 2014 16:23:51 +0000 (UTC) Received: from cgiserv.freebsd.org (cgiserv.freebsd.org [IPv6:2001:1900:2254:206a::50:4]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 978B55E7 for ; Thu, 8 May 2014 16:23:51 +0000 (UTC) Received: from cgiserv.freebsd.org ([127.0.1.6]) by cgiserv.freebsd.org (8.14.8/8.14.8) with ESMTP id s48GNpJo040244 for ; Thu, 8 May 2014 16:23:51 GMT (envelope-from nobody@cgiserv.freebsd.org) Received: (from nobody@localhost) by cgiserv.freebsd.org (8.14.8/8.14.8/Submit) id s48GNp54040241; Thu, 8 May 2014 16:23:51 GMT (envelope-from nobody) Message-Id: <201405081623.s48GNp54040241@cgiserv.freebsd.org> Date: Thu, 8 May 2014 16:23:51 GMT From: Sender Ghost To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Subject: ports/189478: [PATCH] games/warsow: Update to v1.5 X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 May 2014 16:30:00 -0000 >Number: 189478 >Category: ports >Synopsis: [PATCH] games/warsow: Update to v1.5 >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: update >Submitter-Id: current-users >Arrival-Date: Thu May 08 16:30:00 UTC 2014 >Closed-Date: >Last-Modified: >Originator: Sender Ghost >Release: FreeBSD 10.0-RELEASE >Organization: >Environment: >Description: Patch to update games/warsow port from 1.0.3 to 1.5 version. Updated games/warsow-data port (to 1.5 version) required to run: ports/189477 This version uses XInput2 for input code, which might require further patch to use other native characters alongside with English. >How-To-Repeat: >Fix: Patch attached with submission follows: diff -ruN warsow.orig/Makefile warsow/Makefile --- warsow.orig/Makefile 2014-04-16 22:28:47.000000000 +0400 +++ warsow/Makefile 2014-05-08 19:41:12.000000000 +0400 @@ -2,12 +2,11 @@ # $FreeBSD: head/games/warsow/Makefile 351411 2014-04-16 18:28:47Z zeising $ PORTNAME= warsow -PORTVERSION= 1.0.3 -PORTREVISION= 1 +PORTVERSION= 1.5 CATEGORIES= games -MASTER_SITES= SF/warsow.mirror/Warsow%201.02 \ - http://www.warsow.net:1337/~warsow/${PORTVERSION:R}${PORTVERSION:E}/ -DISTNAME= ${PORTNAME}_${PORTVERSION:R}${PORTVERSION:E}_sdk +MASTER_SITES= SF/warsow.mirror/Warsow%20${PORTVERSION} \ + http://www.warsow.net:1337/~warsow/${PORTVERSION}/ +DISTNAME= ${PORTNAME}_15_sdk DIST_SUBDIR= ${PORTNAME} MAINTAINER= danfe@FreeBSD.org @@ -16,28 +15,29 @@ LICENSE= GPLv2 LIB_DEPENDS= libcurl.so:${PORTSDIR}/ftp/curl -RUN_DEPENDS= ${DATADIR}/basewsw/data0_10.pk3:${PORTSDIR}/games/warsow-data +RUN_DEPENDS= ${DATADIR}/basewsw/data0_15.pk3:${PORTSDIR}/games/warsow-data ONLY_FOR_ARCHS= i386 amd64 MAKE_JOBS_UNSAFE=yes -USES= dos2unix gmake -DOS2UNIX_FILES= ui/as/asbind.h +USES= gmake -WRKSRC= ${WRKDIR}/${DISTNAME}/source +WRKSRC= ${WRKDIR}/source/source ALL_TARGET= game angelwrap RELEASEDIR= ${WRKSRC}/release -AS_SDK_DIR= ${WRKSRC}/../libsrcs/angelscript/angelSVN/sdk +AS_SDK_DIR= ${WRKSRC}/../libsrcs/angelscript/sdk PLIST_FILES= %%DATADIR%%/basewsw/game_${ARCH}.so \ %%DATADIR%%/libs/angelwrap_${ARCH}.so PLIST_DIRS= %%DATADIR%%/libs -OPTIONS_DEFINE= CLIENT SERVER QF OPENAL IRC CIN TV_SRV -OPTIONS_DEFAULT= CLIENT SERVER QF OPENAL IRC CIN TV_SRV +OPTIONS_DEFINE= CLIENT SERVER FTLIB REF_GL QF OPENAL IRC CIN TV_SRV +OPTIONS_DEFAULT= CLIENT SERVER FTLIB REF_GL QF OPENAL IRC CIN TV_SRV CLIENT_DESC= Build game client SERVER_DESC= Build dedicated server +FTLIB_DESC= Build FreeType library module +REF_GL_DESC= Build reference OpenGL module QF_DESC= Build Qf sound module OPENAL_DESC= Build OpenAL sound module IRC_DESC= Build IRC client module @@ -47,25 +47,35 @@ .include .if ${PORT_OPTIONS:MCLIENT} -LIB_DEPENDS+= libjpeg.so:${PORTSDIR}/graphics/jpeg \ - libpng15.so:${PORTSDIR}/graphics/png \ - libfreetype.so:${PORTSDIR}/print/freetype2 -PATCH_DEPENDS= ${DATADIR}/basewsw/ui_porkui.pk3:${PORTSDIR}/games/warsow-data -USE_GL= gl -USE_SDL= sdl -USE_XORG= xinerama xxf86dga xrandr +USE_XORG= xi xrandr + ALL_TARGET+= cgame ui client PLIST_FILES+= bin/warsow %%DATADIR%%/basewsw/cgame_${ARCH}.so \ %%DATADIR%%/basewsw/ui_${ARCH}.so \ - %%DATADIR%%/basewsw/ui/porkui/template.rml \ share/pixmaps/warsow128x128.xpm -PLIST_DIRS+= %%DATADIR%%/basewsw/ui \ - %%DATADIR%%/basewsw/ui/porkui DESKTOP_ENTRIES="Warsow" "${COMMENT}" \ "${PREFIX}/share/pixmaps/warsow128x128.xpm" "${PORTNAME}" \ "Game;" false +. if ${PORT_OPTIONS:MFTLIB} || ${PORT_OPTIONS:MREF_GL} +LIB_DEPENDS+= libpng15.so:${PORTSDIR}/graphics/png +. endif + +. if ${PORT_OPTIONS:MFTLIB} +LIB_DEPENDS+= libfreetype.so:${PORTSDIR}/print/freetype2 +ALL_TARGET+= ftlib +PLIST_FILES+= %%DATADIR%%/libs/ftlib_${ARCH}.so +. endif + +. if ${PORT_OPTIONS:MREF_GL} +USE_GL= gl +USE_XORG+= xinerama +LIB_DEPENDS+= libjpeg.so:${PORTSDIR}/graphics/jpeg +ALL_TARGET+= ref_gl +PLIST_FILES+= %%DATADIR%%/libs/ref_gl_${ARCH}.so +. endif + . if ${PORT_OPTIONS:MQF} || ${PORT_OPTIONS:MOPENAL} LIB_DEPENDS+= libvorbisfile.so:${PORTSDIR}/audio/libvorbis . endif @@ -104,20 +114,12 @@ PLIST_FILES+= bin/wswtv_server .endif -pre-patch: .SILENT -.if ${PORT_OPTIONS:MCLIENT} - ${MKDIR} ${RELEASEDIR}/basewsw - ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ${DATADIR}/basewsw/ui_porkui.pk3 --include="ui/porkui/template.rml" -C ${RELEASEDIR}/basewsw ${EXTRACT_AFTER_ARGS} -.endif - post-patch: .SILENT # Unmute build and link commands, respect CFLAGS ${REINPLACE_CMD} -e 's|@$$(DO_CC|$$(DO_CC| ; /> Linking $$@/d ; \ s|-O2 -fno-strict-aliasing -ffast-math -funroll-loops ||; \ s| -msse2||' \ ${WRKSRC}/Makefile - ${REINPLACE_CMD} -e 's|-g ||' \ - ${AS_SDK_DIR}/angelscript/projects/gnuc/makefile # Adjust architecture names, get rid of ``freebsd_'' prefix ${REINPLACE_CMD} -e 's/x86_64/amd64/ ; s/freebsd_//' \ ${WRKSRC}/gameshared/q_arch.h @@ -129,11 +131,6 @@ # ${DATADIR} base path instead of pack file(s) ${REINPLACE_CMD} -e 's|pure \&\& !FS_IsPureFile|0 \&\& !FS_IsPureFile|' \ ${WRKSRC}/qcommon/library.c -# Fix issue with utf8 characters for console and -# return checks for delete character (ASCII code 127) from 0.62 version - ${REINPLACE_CMD} -e '/x11display.ic = 0;/d; \ - s|Key_CharEvent( key, wc );|if ( wc != 127 ) Key_CharEvent( key, wc );|' \ - ${WRKSRC}/unix/unix_input.c do-install: .for b in ${PLIST_FILES:Mbin/*:T} diff -ruN warsow.orig/distinfo warsow/distinfo --- warsow.orig/distinfo 2014-03-09 19:13:14.000000000 +0400 +++ warsow/distinfo 2014-05-07 11:35:21.000000000 +0400 @@ -1,2 +1,2 @@ -SHA256 (warsow/warsow_1.03_sdk.tar.gz) = 98cd7aa25707f9baf97a8e1feb78e1874b6b5dd95af759bf5edda10bc62ed97c -SIZE (warsow/warsow_1.03_sdk.tar.gz) = 63908911 +SHA256 (warsow/warsow_15_sdk.tar.gz) = 277bbe87744352ee02476dc1bf9258ed5b204345b1b8eb394442dcec6a956949 +SIZE (warsow/warsow_15_sdk.tar.gz) = 89175325 diff -ruN warsow.orig/files/patch-Makefile warsow/files/patch-Makefile --- warsow.orig/files/patch-Makefile 2014-03-09 19:13:14.000000000 +0400 +++ warsow/files/patch-Makefile 2014-05-08 20:04:08.000000000 +0400 @@ -1,13 +1,13 @@ ---- Makefile.orig 2012-12-02 21:36:10.000000000 +0400 -+++ Makefile 2014-02-06 06:54:02.000000000 +0400 -@@ -50,21 +50,13 @@ +--- Makefile.orig 2014-05-02 01:12:05.000000000 +0400 ++++ Makefile 2014-05-07 12:00:03.000000000 +0400 +@@ -54,21 +54,13 @@ else CC?=gcc CXX?=g++ -LD=gcc --LXX?=g++ +-LXX=g++ +LD=$(CC) -+LXX?=$(CXX) ++LXX=$(CXX) AR=ar RANLIB=ranlib @@ -21,10 +21,10 @@ -ARCH?=$(BASE_ARCH) -endif - - SHARED_LIBRARY_EXTENSION=so - endif - -@@ -210,10 +202,11 @@ + ifeq ($(ARCH),x86_64) + BITS?=64 + else +@@ -246,10 +238,11 @@ CFLAGS_TV_SERVER=-DDEDICATED_ONLY -DTV_SERVER_ONLY -DC_ONLY -DTV_MODULE_HARD_LINKED LDFLAGS_COMMON=$(LDFLAGS) @@ -32,13 +32,12 @@ +LXXFLAGS_COMMON=$(LDFLAGS)#-lstdc++ -lsupc++ # disabled for Clang ifeq ($(OS),FreeBSD) --LDFLAGS_COMMON+= -L/usr/local/lib -lm -pthread -+LDFLAGS_COMMON+= -L$(LOCALBASE)/lib -lm -pthread + LDFLAGS_COMMON+= -L$(LOCALBASE)/lib -lm +LXXFLAGS_COMMON+= -L$(LOCALBASE)/lib else - LDFLAGS_COMMON+= -L/usr/local/lib -ldl -lm -O1 -Wl,--as-needed + LDFLAGS_COMMON+= -L$(LOCALBASE)/lib -lm -ldl -O1 -Wl,--as-needed endif -@@ -298,12 +291,9 @@ +@@ -358,12 +351,9 @@ ###################################################################################################### # Helper functions ###################################################################################################### diff -ruN warsow.orig/files/patch-release_basewsw_ui_porkui_template.rml warsow/files/patch-release_basewsw_ui_porkui_template.rml --- warsow.orig/files/patch-release_basewsw_ui_porkui_template.rml 2014-03-09 19:13:14.000000000 +0400 +++ warsow/files/patch-release_basewsw_ui_porkui_template.rml 1970-01-01 03:00:00.000000000 +0300 @@ -1,37 +0,0 @@ ---- release/basewsw/ui/porkui/template.rml.orig 2012-07-19 18:39:24.000000000 +0400 -+++ release/basewsw/ui/porkui/template.rml 2014-02-06 07:52:43.000000000 +0400 -@@ -135,32 +135,9 @@ - } - } - -- String menuloc; -- void animOpenMenu( String menu ) // This function automatically animates the content away and opens a new menu after that. -+ void animOpenMenu( String menu ) // Don't animate on FreeBSD, as the program will crash for some reason... - { -- if( menu.length() <= 0 ) -- return; -- -- URL currentURL( window.document.URL ); -- String currentDocFilename = currentURL.getFileName() + '.' + currentURL.getFileExtension(); -- if( currentDocFilename == menu ) { -- // FIXME: not sure this works correct in all cases of valid input URL -- return; -- } -- -- menuloc = menu; -- -- Element @body = @window.document.body; -- Element @content = @body.getElementById( "leftside" ); -- if( @content == null ) -- return; -- -- MoveAnimation anim( content, ANIMATION_DURATION_FAST, ANIM_ORIGIN, ANIM_LEFT, EASE_IN, animOpenMenuCallback ); -- } -- -- void animOpenMenuCallback() -- { -- window.location = menuloc; -+ window.location = menu; - } - - void quitGame( Element @self, Event @ev ) diff -ruN warsow.orig/files/patch-ui_as_asbind.h warsow/files/patch-ui_as_asbind.h --- warsow.orig/files/patch-ui_as_asbind.h 2014-03-09 19:13:14.000000000 +0400 +++ warsow/files/patch-ui_as_asbind.h 1970-01-01 03:00:00.000000000 +0300 @@ -1,78 +0,0 @@ ---- ui/as/asbind.h.orig 2012-07-21 13:38:20.000000000 +0400 -+++ ui/as/asbind.h 2014-02-06 06:32:49.000000000 +0400 -@@ -268,7 +268,7 @@ - } - - // throw ? -- template const char * typestr() { ctassert(); return "ERROR"; } -+ template const char * typestr(); - - template<> inline const char *typestr() { return "int"; } - template<> inline const char *typestr() { return "uint"; } -@@ -436,13 +436,7 @@ - // function string - - template --struct FunctionStringProxy { -- std::string operator()( const char *s ) -- { -- ctassert(); -- throw Exception( std::string("FunctionStringProxy base called with " ) + s ); -- } --}; -+struct FunctionStringProxy; - - template - struct FunctionStringProxy { -@@ -539,13 +533,7 @@ - - // method string - --template struct MethodStringProxy { -- std::string operator()( const char *s ) -- { -- ctassert(); -- throw Exception( std::string( "MethodStringProxy: base class called in " ) + s ); -- } --}; -+template struct MethodStringProxy; - - //== - -@@ -902,17 +890,8 @@ - // functor object to call script-function - - // first define structs to get/set arguments (struct to partial-specialize) --template struct SetArg { -- void operator()( asIScriptContext *ctx, int idx, T &t ) { -- ctassert(); -- } --}; --template struct GetArg { -- T operator()() { -- ctassert(); -- return T(); -- } --}; -+template struct SetArg; -+template struct GetArg; - - template<> struct SetArg { - void operator()( asIScriptContext *ctx, int idx, signed int &t ) { ctx->SetArgDWord( idx, t ); } -@@ -1042,15 +1021,7 @@ - //================= - - template --struct FunctionPtr : FunctionPtrBase { -- FunctionPtr( asIScriptFunction *fptr=NULL ) : FunctionPtrBase( fptr ) {} -- R operator()( void ) -- { -- ctassert(); -- throw std::runtime_error( "FunctionPtr baseclass called!" ); -- return R(); -- } --}; -+struct FunctionPtr; - - //== - >Release-Note: >Audit-Trail: >Unformatted: