From 63184a71277aa15608659ad20f45b7b0fe9746bc Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Wed, 21 Jul 2021 09:22:06 -0400 Subject: rts: Don't declare libCffi as bundled when using system libffi Previously the rts's cabal file would claim that it bundled libffi, even if we are using the system's libffi. Fixes #19869. --- rts/rts.cabal.in | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'rts/rts.cabal.in') diff --git a/rts/rts.cabal.in b/rts/rts.cabal.in index ded2f15509..c46873e205 100644 --- a/rts/rts.cabal.in +++ b/rts/rts.cabal.in @@ -12,6 +12,8 @@ flag libdl default: @CabalHaveLibdl@ flag ffi default: @CabalHaveLibffi@ +flag use-system-libffi + default: @CabalUseSystemLibFFI@ flag libffi-adjustors default: @CabalLibffiAdjustors@ flag need-pthread @@ -57,10 +59,14 @@ library -- expects the unit-id to be -- set without version ghc-options: -this-unit-id rts - if os(windows) - extra-bundled-libraries: Cffi-6 - else - extra-bundled-libraries: Cffi + + -- If we are using an in-tree libffi then we must declare it as a bundled + -- library to ensure that Cabal installs it. + if !flag(use-system-libffi) + if os(windows) + extra-bundled-libraries: Cffi-6 + else + extra-bundled-libraries: Cffi -- The make build system does something special in config.mk.in -- for generating profiled, debugged, etc builds of those -- cgit v1.2.1