
Hi everyone, I've got another problem in our – admittedly complex – build process (for context, see [0]). Anyway, I'm struggling with the following: I have an 'out' folder which contains .hi and .o files from previous compilation stages. I now want to compile a bunch of .hs files which depend on the modules from previous stages. I can just say ghc -c -iout -outputdir out File1.hs File2.hs ... which works nicely if File*.hs are independent of each other, or are already topologically sorted wrt dependencies. If not, compilation of 'File1.hs' will fail when importing 'File2'. However, I can't make it to work if I don't know their precise ordering in advance. I tried ghc -c --make -iout -outputdir out ... but apparently '--make' makes GHC ignore .hi files in the 'out' folder. (Not even '-hidir' makes it respect them.) Reading a bit further, I discovered the '-M' flag, however, not only does it output Makefile-formatted output, it also ignores .hi files. Is there any way to get the dependency discovery of '--make' without the rest? Or alternatively, to get '--make' to not just respect source files [1]? I know I could probably make it work if I made a package out of the previous build products, but I really want to avoid that in order to not increase the build complexity even further. Cheers Lars [0] http://article.gmane.org/gmane.comp.lang.haskell.cafe/113016 [1] After reading the section on "the search path" (§4.7.3, https://downloads.haskell.org/~ghc/7.6.3/docs/html/users_guide/separate-comp...), that doesn't seem to be possible.