@@ -45,9 +45,10 @@ generateBuildModule flags pkg lbi = do
4545 withLibLBI pkg lbi $ \lib libcfg -> do
4646 let libBI = libBuildInfo lib
4747
48− -- Lib sources and includes
49− let iArgs = map ("-i"++) $ hsSourceDirs libBI
50− let includeArgs = map ("-I"++) $ includeDirs libBI
48+ -- modules
49+ let modules = exposedModules lib ++ otherModules libBI
50+ -- it seems that doctest is happy to take in module names, not actual files!
51+ let module_sources = modules
5152
5253 -- We need the directory with library's cabal_macros.h!
5354#if MIN_VERSION_Cabal(1,25,0)
@@ -56,6 +57,10 @@ generateBuildModule flags pkg lbi = do
5657 let libAutogenDir = autogenModulesDir lbi
5758#endif
5859
60+ -- Lib sources and includes
61+ let iArgs = map ("-i"++) $ libAutogenDir : hsSourceDirs libBI
62+ let includeArgs = map ("-I"++) $ includeDirs libBI
63+
5964 -- CPP includes, i.e. include cabal_macros.h
6065 let cppFlags = [ "-optP-include", "-optP" ++ libAutogenDir ++ "/cabal_macros.h" ]
6166
@@ -82,8 +87,8 @@ generateBuildModule flags pkg lbi = do
8287 , "flags :: [String]"
8388 , "flags = " ++ show (iArgs ++ includeArgs ++ dbFlags ++ cppFlags)
8489 , ""
85− , "src_dirs :: [String]"
86− , "src_dirs = " ++ show (hsSourceDirs libBI)
90+ , "module_sources :: [String]"
91+ , "module_sources = " ++ show (map display module_sources)
8792 ]
8893 where
8994 -- we do this check in Setup, as then doctests don't need to depend on Cabal