From 34069a2faeefec2d11f7d8224b95dad77b428fe3 Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Tue, 3 May 2022 12:40:43 -0400 Subject: rts/ghc.mk: Only build StgCRunAsm.S when it is needed Previously the make build system unconditionally included StgCRunAsm.S in the link, meaning that the RTS would require an execstack unnecessarily. Fixes #21478. --- rts/ghc.mk | 3 +++ 1 file changed, 3 insertions(+) diff --git a/rts/ghc.mk b/rts/ghc.mk index 36a82f9f2c..0e56515a56 100644 --- a/rts/ghc.mk +++ b/rts/ghc.mk @@ -57,8 +57,11 @@ ifneq "$(PORTING_HOST)" "YES" # unregisterised builds use the mini interpreter ifneq "$(GhcUnregisterised)" "YES" +# use StgCRunAsm.S on ppc, ppc64, s390x, and riscv64 +ifneq "$(findstring $(TargetArch_CPP), ppc) $(findstring $(TargetArch_CPP), ppc64) $(findstring $(TargetArch_CPP), s390x) $(findstring $(TargetArch_CPP), riscv64)" "" rts_S_SRCS += rts/StgCRunAsm.S endif +endif # select adjustor implementation. This much match the logic in rts.cabal.in. ifneq "$(CLEANING)" "YES" -- cgit v1.2.1