ports/118254: [patch] games/gnubg unbreak fix build with GCC 4.2 + adopt maintainship
Pietro Cerutti
gahr at gahr.ch
Sun Nov 25 23:20:02 UTC 2007
>Number: 118254
>Category: ports
>Synopsis: [patch] games/gnubg unbreak fix build with GCC 4.2 + adopt maintainship
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Sun Nov 25 23:20:01 UTC 2007
>Closed-Date:
>Last-Modified:
>Originator: Pietro Cerutti
>Release: FreeBSD 8.0-CURRENT i386
>Organization:
>Environment:
System: FreeBSD 8.0-CURRENT #12: Tue Nov 20 17:46:40 CET 2007
root at gahrtop.localhost:/usr/obj/usr/src/sys/MSI1034
>Description:
The following patch:
- fixes the build with GCC 4.2
- removes warnings
- gives maintainship to me
>How-To-Repeat:
cd /usr/ports/games/gnubg && make
>Fix:
--- _gnubg.diff begins here ---
--- Makefile.orig 2007-11-25 23:45:45.000000000 +0100
+++ Makefile 2007-11-25 23:46:00.000000000 +0100
@@ -17,7 +17,7 @@
DIST_SUBDIR= ${PORTNAME}
EXTRACT_ONLY= ${DISTNAME}.tar.gz
-MAINTAINER= ports at FreeBSD.org
+MAINTAINER= gahr at gahr.ch
COMMENT= GNU Backgammon
LIB_DEPENDS= gdbm.3:${PORTSDIR}/databases/gdbm \
@@ -69,10 +69,6 @@
.include <bsd.port.pre.mk>
-.if ${OSVERSION} >= 700042
-BROKEN= Broken with gcc 4.2
-.endif
-
.if ${ARCH} == "sparc64"
BROKEN= does not compile on sparc64
.endif
--- /dev/null 2007-11-25 23:33:19.000000000 +0100
+++ files/patch-eval.c 2007-11-25 23:02:29.000000000 +0100
@@ -0,0 +1,11 @@
+--- eval.c.orig 2007-11-25 23:01:11.000000000 +0100
++++ eval.c 2007-11-25 23:02:20.000000000 +0100
+@@ -798,7 +798,7 @@
+ if( !fstat( h, &st ) &&
+ ( p = mmap( NULL, st.st_size, PROT_READ | PROT_WRITE,
+ MAP_PRIVATE, h, 0 ) ) ) {
+- ( (float *) p ) += 2; /* skip magic number and version */
++ p += 2; /* skip magic number and version */
+ fReadWeights =
+ ( p = NeuralNetCreateDirect( &nnContact, p ) ) &&
+ ( p = NeuralNetCreateDirect( &nnRace, p ) ) &&
--- /dev/null 2007-11-25 23:33:19.000000000 +0100
+++ files/patch-htmlimages.c 2007-11-25 23:07:48.000000000 +0100
@@ -0,0 +1,10 @@
+--- htmlimages.c.orig 2007-11-25 23:07:11.000000000 +0100
++++ htmlimages.c 2007-11-25 23:07:24.000000000 +0100
+@@ -30,6 +30,7 @@
+ #endif
+
+ #include <stdio.h>
++#include <stdlib.h>
+ #include <string.h>
+
+ #if HAVE_SYS_TYPES_H
--- /dev/null 2007-11-25 23:33:19.000000000 +0100
+++ files/patch-lib_neuralnet.c 2007-11-25 23:00:49.000000000 +0100
@@ -0,0 +1,46 @@
+--- lib/neuralnet.c.orig 2007-11-25 22:55:20.000000000 +0100
++++ lib/neuralnet.c 2007-11-25 23:00:22.000000000 +0100
+@@ -384,15 +384,17 @@
+
+ return 0;
+ }
+-extern void *NeuralNetCreateDirect( neuralnet *pnn, void *p ) {
++extern void *NeuralNetCreateDirect( neuralnet *pnn, void *v_p ) {
++ int *p = v_p;
++ float *fp = v_p;
+
+ pnn->cInput = *( ( (int *) p )++ );
+ pnn->cHidden = *( ( (int *) p )++ );
+ pnn->cOutput = *( ( (int *) p )++ );
+ pnn->nTrained = *( ( (int *) p )++ );
+ pnn->fDirect = TRUE;
+- pnn->rBetaHidden = *( ( (float *) p )++ );
+- pnn->rBetaOutput = *( ( (float *) p )++ );
++ pnn->rBetaHidden = *( ( fp )++ );
++ pnn->rBetaOutput = *( ( fp )++ );
+
+ if( pnn->cInput < 1 || pnn->cHidden < 1 || pnn->cOutput < 1 ||
+ pnn->nTrained < 0 || pnn->rBetaHidden <= 0.0 ||
+@@ -402,14 +404,14 @@
+ return NULL;
+ }
+
+- pnn->arHiddenWeight = p;
+- ( (float *) p ) += pnn->cInput * pnn->cHidden;
+- pnn->arOutputWeight = p;
+- ( (float *) p ) += pnn->cHidden * pnn->cOutput;
+- pnn->arHiddenThreshold = p;
+- ( (float *) p ) += pnn->cHidden;
+- pnn->arOutputThreshold = p;
+- ( (float *) p ) += pnn->cOutput;
++ pnn->arHiddenWeight = fp;
++ fp += pnn->cInput * pnn->cHidden;
++ pnn->arOutputWeight = fp;
++ fp += pnn->cHidden * pnn->cOutput;
++ pnn->arHiddenThreshold = fp;
++ fp += pnn->cHidden;
++ pnn->arOutputThreshold = fp;
++ fp += pnn->cOutput;
+
+ pnn->savedBase = malloc( pnn->cHidden * sizeof( float ) );
+ pnn->savedIBase = malloc( pnn->cInput * sizeof( float ) );
--- /dev/null 2007-11-25 23:33:19.000000000 +0100
+++ files/patch-rollout.h 2007-11-25 23:06:15.000000000 +0100
@@ -0,0 +1,11 @@
+--- rollout.h.orig 2007-11-25 23:05:53.000000000 +0100
++++ rollout.h 2007-11-25 23:06:00.000000000 +0100
+@@ -59,8 +59,6 @@
+
+ } rolloutstat;
+
+-extern int nSkip;
+-
+ typedef void
+ (rolloutprogressfunc) ( float arOutput[][ NUM_ROLLOUT_OUTPUTS ],
+ float arStdDev[][ NUM_ROLLOUT_OUTPUTS ],
--- _gnubg.diff ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list