
If you're working on a Haskell project that includes packages, and the packages are in subdirectories of the source tree, how do you "build"? In my case, I want to alter the "gloss" package so I unpacked it, changed the name to "customgloss" in the .cabal file, and installed. Meanwhile, I used the package-quallified import GHC feature. So I have to go into that subdirectory and run cabal install, let it recompile everything in there and copy it to the repository, then chdir back out and build/run my main program. How about a "make"-like way that knows if a source file in that package directory has changed, only recompiles the changed parts, and can put the output files in my directory tree with the source rather than copying to the machine repository? How do you normally go about developing a new version of a package? —John