Date: Fri, 16 Sep 2005 20:08:07 +0200 (CEST) From: Jean-Yves Lefort <jylefort@FreeBSD.org> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/86220: games/flightgear: ignore SIGFPE Message-ID: <20050916180807.12220C78D@jsite.lefort.net> Resent-Message-ID: <200509161810.j8GIADPC052999@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 86220 >Category: ports >Synopsis: games/flightgear: ignore SIGFPE >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: update >Submitter-Id: current-users >Arrival-Date: Fri Sep 16 18:10:13 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Jean-Yves Lefort >Release: FreeBSD 5.4-RELEASE i386 >Organization: >Environment: System: FreeBSD jsite.lefort.net 5.4-RELEASE FreeBSD 5.4-RELEASE #0: Wed Jul 27 11:27:58 CEST 2005 jylefort@jsite.lefort.net:/usr/obj/usr/src/sys/JSITE i386 >Description: Flightgear often crashes because it triggers a floating point exception in the nvidia GL library. The problem can be worked around by ignoring SIGFPE. >How-To-Repeat: >Fix: diff -ruN /usr/ports/games/flightgear/Makefile flightgear/Makefile --- /usr/ports/games/flightgear/Makefile Thu Sep 15 01:29:14 2005 +++ flightgear/Makefile Thu Sep 15 20:51:49 2005 @@ -7,6 +7,7 @@ PORTNAME= FlightGear PORTVERSION= 0.9.8 +PORTREVISION= 1 CATEGORIES= games MASTER_SITES= ftp://ftp.flightgear.org/pub/fgfs/Source/ \ ftp://ftp.de.flightgear.org/pub/fgfs/Source/ diff -ruN /usr/ports/games/flightgear/files/patch-src_Main_bootstrap.cxx flightgear/files/patch-src_Main_bootstrap.cxx --- /usr/ports/games/flightgear/files/patch-src_Main_bootstrap.cxx Thu Jan 1 01:00:00 1970 +++ flightgear/files/patch-src_Main_bootstrap.cxx Thu Sep 15 20:51:34 2005 @@ -0,0 +1,20 @@ +--- src/Main/bootstrap.cxx.orig Thu Sep 15 20:48:39 2005 ++++ src/Main/bootstrap.cxx Thu Sep 15 20:51:05 2005 +@@ -28,6 +28,8 @@ + #if defined(__linux__) && defined(__i386__) + # include <fpu_control.h> + # include <signal.h> ++#elif defined(__FreeBSD__) ++# include <signal.h> + #endif + + #include <stdlib.h> +@@ -144,6 +146,8 @@ + // Enable floating-point exceptions for Linux/x86 + #if defined(__linux__) && defined(__i386__) + initFPE(); ++#elif defined(__FreeBSD__) ++ signal(SIGFPE, SIG_IGN); + #endif + + #if defined(sgi) >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050916180807.12220C78D>