Hi ports,

> http://build-failures.rhaalovely.net/aarch64/2019-04-12/games/dungeon-crawl.log

The code doesn't take account of archs where char is unsigned by
default. This also occurs with ports-gcc-8 on macppc. 

I've quick fixed the "faulty" code, it builds on macppc, i played a bit
without issues. 

Any comment? 


Charlène. 


Index: Makefile
===================================================================
RCS file: /cvs/ports/games/dungeon-crawl/Makefile,v
retrieving revision 1.12
diff -u -p -r1.12 Makefile
--- Makefile    25 Nov 2018 21:06:38 -0000      1.12
+++ Makefile    16 Apr 2019 12:39:31 -0000
@@ -9,7 +9,7 @@ DISTNAME=       dc400b26-src
 EXTRACT_SUFX=  .tbz2
 V=             4.0.0b26
 PKGNAME=       dungeon-crawl-$V
-REVISION =     4
+REVISION =     5
 
 BUILD_DEPENDS+=        archivers/bzip2
 
Index: patches/patch-source_direct_cc
===================================================================
RCS file: patches/patch-source_direct_cc
diff -N patches/patch-source_direct_cc
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-source_direct_cc      16 Apr 2019 12:39:31 -0000
@@ -0,0 +1,18 @@
+$OpenBSD$
+
+ppc, arm: fix the build where char is unsigned by default
+
+Index: source/direct.cc
+--- source/direct.cc.orig
++++ source/direct.cc
+@@ -44,8 +44,8 @@
+ 
+ // x and y offsets in the following order:
+ // SW, S, SE, W, E, NW, N, NE
+-static const char xcomp[9] = { -1, 0, 1, -1, 0, 1, -1, 0, 1 };
+-static const char ycomp[9] = { 1, 1, 1, 0, 0, 0, -1, -1, -1 };
++static const signed char xcomp[9] = { -1, 0, 1, -1, 0, 1, -1, 0, 1 };
++static const signed char ycomp[9] = { 1, 1, 1, 0, 0, 0, -1, -1, -1 };
+ static const char dirchars[19] = { "b1j2n3h4.5l6y7k8u9" };
+ static const char DOSidiocy[10] = { "OPQKSMGHI" };
+ static const char *aim_prompt = "Aim (move cursor or -/+/=, change mode with 
CTRL-F, select with . or >)";
Index: patches/patch-source_mon-util_h
===================================================================
RCS file: patches/patch-source_mon-util_h
diff -N patches/patch-source_mon-util_h
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-source_mon-util_h     16 Apr 2019 12:39:31 -0000
@@ -0,0 +1,25 @@
+$OpenBSD$
+
+ppc, arm: fix build where char is unsigned by default
+
+Index: source/mon-util.h
+--- source/mon-util.h.orig
++++ source/mon-util.h
+@@ -115,7 +115,7 @@ struct monsterentry
+ 
+     unsigned short charclass PACKED;     //
+ 
+-    char holiness PACKED;       // -1=holy,0=normal,1=undead,2=very very evil
++    signed char holiness PACKED;       // -1=holy,0=normal,1=undead,2=very 
very evil
+ 
+     short resist_magic PACKED;  // (positive is ??)
+     // max damage in a turn is total of these four?
+@@ -144,7 +144,7 @@ struct monsterentry
+     // 0=no zombie, 1=small zombie (z) 107, 2=_BIG_ zombie (Z) 108
+     char zombie_size PACKED;
+   // 0-12: see above, -1=random one of (0-7)
+-    char shouts PACKED;
++    signed char shouts PACKED;
+   // AI things?
+     char intel PACKED;          // 0=none, 1=worst...4=best
+ 

Reply via email to