Skip site navigation (1)Skip section navigation (2)
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>