
Hi Ivan,
Now, the vast majority of Haskell packages doesn't use Setup.hs [...].
As far as I'm aware, Setup.hs is still required/recommended [...].
you are right, of course. I expressed myself poorly, and I am sorry about that. What I meant to say is that the majority of Haskell packages doesn't add any custom code to Setup.hs. Rather, these packages ship the standard version of that file, which typically looks like this: | module Main (main) where | | import Distribution.Simple | | main :: IO () | main = defaultMain Now, since the majority of packages ship that file, it may look like Setup.hs is a generic standard component that looks the same in *all* packages. However, there are packages that ship Setup.hs files that look very different. The "gtk" package is an impressive example for that.
Cabal itself still uses Setup.[l]hs [...].
Yes, that is true. Cabal must use the Setup.hs file, because that file is actually the main build driver for the package. The know-how encoded in that file determines how the package is built. I hope this clarifies the issue. Take care, Peter