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
+