Took a look into the recurring failure of VICE on aarch64.  It's failing due
to an LLVM issue.  This problem also effected NDK on Android and LLVM fixed
it in version 11.0.0

https://reviews.llvm.org/D76312

The options seem to be to backport the fix to base LLVM, backport to ports
LLVM, or just use ports gcc on aarch64.  The last option being the least
invasive, that's what I've gone with below.

I'm not sure if there is an easier switch in the ports system than using an
.if block as I have.

Compiles and runs on PBP...slowly.

Tim.


Index: Makefile
===================================================================
RCS file: /cvs/ports/emulators/vice/Makefile,v
retrieving revision 1.21
diff -u -p -r1.21 Makefile
--- Makefile    12 Jan 2021 19:14:53 -0000      1.21
+++ Makefile    16 Jan 2021 19:00:04 -0000
@@ -8,13 +8,21 @@ CATEGORIES =          emulators
 
 HOMEPAGE =             http://vice-emu.sourceforge.net/
 
+REVISION =             0
+
 # GPLv2+
 PERMIT_PACKAGE =       Yes
 
 WANTLIB += ${COMPILER_LIBCXX} SDL2 SDL2_image c iconv intl m png
 WANTLIB += readline z
 
+# Workaround for a bug in LLVM < 11.0.0
+# https://reviews.llvm.org/D76312
+.if ${MACHINE_ARCH} == "aarch64"
+COMPILER =             ports-gcc base-gcc
+.else
 COMPILER =             base-clang ports-gcc base-gcc
+.endif
 
 MASTER_SITES =         ${MASTER_SITE_SOURCEFORGE:=vice-emu/}
 

Reply via email to