Running a full bulk build on an apple M2, I see lots of failures due
to code generated by lang/gcc/8,-f95 not being BT compliant, resulting
in SIGILL crashes. Moving to lang/gcc/11 may help fix this, but we're
not there yet.
The bulk of those failures is easily fixed by the diff below. I think
it's cleaner to address this in a single place instead of sprinkling
USE_NOBTCFI-aarch64 everywhere. The diffs to bump the g95 consumers
are not included.
Feedback & oks welcome.
Index: fortran.port.mk
===================================================================
RCS file: /cvs/ports/infrastructure/mk/fortran.port.mk,v
diff -u -p -r1.17 fortran.port.mk
--- fortran.port.mk 27 Aug 2019 14:30:38 -0000 1.17
+++ fortran.port.mk 10 Jan 2025 16:52:52 -0000
@@ -13,6 +13,8 @@ MODGCC4_LANGS += fortran
MODFORTRAN_BUILD_DEPENDS += ${MODGCC4_FORTRANDEP}
MODFORTRAN_LIB_DEPENDS += ${MODGCC4_FORTRANLIBDEP}
MODFORTRAN_WANTLIB += ${MODGCC4_FORTRANWANTLIB}
+# XXX revisit when we move to lang/gcc/11
+USE_NOBTCFI-aarch64 ?= Yes
.elif ${MODFORTRAN_COMPILER:L} == "flang"
MODFORTRAN_BUILD_DEPENDS += lang/flang/flang
MODFORTRAN_LIB_DEPENDS += lang/flang/flang
--
jca