Date: Thu, 14 Nov 2013 17:47:01 GMT From: Dominic Fandrey <kamikaze@bsdforen.de> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/183959: [maintainer-update] games/ioquake3 games/ioquake3-server Message-ID: <201311141747.rAEHl1ox024938@oldred.freebsd.org> Resent-Message-ID: <201311141750.rAEHo02I077955@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 183959 >Category: ports >Synopsis: [maintainer-update] games/ioquake3 games/ioquake3-server >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: maintainer-update >Submitter-Id: current-users >Arrival-Date: Thu Nov 14 17:50:00 UTC 2013 >Closed-Date: >Last-Modified: >Originator: Dominic Fandrey >Release: stable/10 >Organization: private >Environment: FreeBSD mobileKamikaze.norad 10.0-BETA3 FreeBSD 10.0-BETA3 #0 r257904: Sun Nov 10 02:09:34 CET 2013 root@mobileKamikaze.norad:/usr/obj/HP6510b-10/amd64/usr/src/sys/HP6510b-10 amd64 >Description: games/ioquake3 and games/ioquake3-server do not build on i386 due to clang variable scope issues in combination with inline assembler. >How-To-Repeat: # cd /usr/ports/games/ioquake3 # make ARCH=i386 >Fix: The proposed fix simply renders the offending static variable global. This is bad style, but can be done safely, because there are no extern declarations referring to it. Patch attached with submission follows: Index: games/ioquake3/files/patch-code-qcommon-vm_x86.c =================================================================== --- games/ioquake3/files/patch-code-qcommon-vm_x86.c (revision 333755) +++ games/ioquake3/files/patch-code-qcommon-vm_x86.c (working copy) @@ -1,5 +1,5 @@ --- code/qcommon/vm_x86.c.orig 2008-08-18 01:22:06.000000000 +0200 -+++ code/qcommon/vm_x86.c 2010-11-27 14:01:33.000000000 +0100 ++++ code/qcommon/vm_x86.c 2013-11-14 11:44:27.000000000 +0100 @@ -36,7 +36,25 @@ /* need this on NX enabled systems (i386 with PAE kernel or @@ -27,3 +27,15 @@ #define VM_X86_MMAP #endif +@@ -90,7 +108,11 @@ + static void (*const asmCallPtr)(void) = AsmCall; + + ++#ifdef __clang__ ++ int callMask = 0; ++#else + static int callMask = 0; ++#endif + + static int instruction, pass; + static int lastConst = 0; >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201311141747.rAEHl1ox024938>