From 702f7964373d9ffb1d550ee714bd723d8bb0c1a3 Mon Sep 17 00:00:00 2001 From: Matthew Pickering <matthewtpickering@gmail.com> Date: Mon, 29 Apr 2024 12:13:00 +0100 Subject: [PATCH] Make interface files and object files depend on inplace .conf file A potential fix for #24737 --- hadrian/src/Rules/Compile.hs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/hadrian/src/Rules/Compile.hs b/hadrian/src/Rules/Compile.hs index 473d2cf76ef4..d8ca9ab40634 100644 --- a/hadrian/src/Rules/Compile.hs +++ b/hadrian/src/Rules/Compile.hs @@ -218,6 +218,9 @@ compileHsObjectAndHi rs objpath = do ctxPath <- contextPath ctx (src, deps) <- lookupDependencies (ctxPath -/- ".dependencies") objpath need (src:deps) + -- The .conf file is needed when template-haskell is implicitly added as a dependency + -- when a module in the template-haskell package is compiled. (See #24737) + when (isLibrary (C.package ctx)) (need . (:[]) =<< pkgConfFile ctx) -- The .dependencies file lists indicating inputs. ghc will -- generally read more *.hi and *.hi-boot files (direct inputs). -- GitLab