#!/usr/bin/runghc
\begin{code}
import Distribution.Simple(defaultMainWithHooks ,simpleUserHooks ,preConf)
import Distribution.Simple.Setup(ConfigFlags)
import Distribution.PackageDescription.Parse(writeHookedBuildInfo)
import Distribution.PackageDescription
(HookedBuildInfo ,BuildInfo(extraLibs ,ccOptions) ,emptyBuildInfo)
import System.Info(os)
main = defaultMainWithHooks simpleUserHooks{ preConf=configure }
where
configure:: [String]-> ConfigFlags-> IO HookedBuildInfo
configure args flags = do
let binfo | os == "mingw32" =
emptyBuildInfo{ extraLibs=["odbc32"]
, ccOptions=["-Dmingw32_HOST_OS"] }
| otherwise = emptyBuildInfo{ extraLibs=["odbc"] }
hbi = (Just binfo ,[])
writeHookedBuildInfo "ODBC.buildinfo" hbi
return hbi
\end{code}