Skip to content

Commit

Permalink
Update extra-lib-dirs from Setup.hs.
Browse files Browse the repository at this point in the history
  • Loading branch information
jakubfijalkowski committed Apr 16, 2015
1 parent 93f8643 commit 395b838
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 2 deletions.
23 changes: 22 additions & 1 deletion Setup.hs
@@ -1,11 +1,15 @@
import Distribution.PackageDescription hiding (Flag)
import Data.Maybe
import Distribution.PackageDescription hiding (Flag)
import Distribution.Simple
import Distribution.Simple.LocalBuildInfo
import Distribution.Simple.Setup
import Distribution.Simple.Utils
import System.Directory

main = defaultMainWithHooks simpleUserHooks
{
preConf = makeExtLib
, confHook = \a f -> confHook simpleUserHooks a f >>= updateExtraLibDirs
}

makeExtLib :: Args -> ConfigFlags -> IO HookedBuildInfo
Expand All @@ -14,3 +18,20 @@ makeExtLib _ flags = do
rawSystemExit verbosity "env"
["make", "--directory=ext_lib"]
return emptyHookedBuildInfo

updateExtraLibDirs :: LocalBuildInfo -> IO LocalBuildInfo
updateExtraLibDirs localBuildInfo = do
let packageDescription = localPkgDescr localBuildInfo
lib = fromJust $ library packageDescription
libBuild = libBuildInfo lib
dir <- getCurrentDirectory
return localBuildInfo {
localPkgDescr = packageDescription {
library = Just $ lib {
libBuildInfo = libBuild {
extraLibDirs = (dir ++ "/ext_lib/lib") :
extraLibDirs libBuild
}
}
}
}
1 change: 0 additions & 1 deletion haskell-and-cpp.cabal
Expand Up @@ -16,7 +16,6 @@ library
hs-source-dirs: src
default-language: Haskell2010
extra-libraries: ext, stdc++
extra-lib-dirs: ext_lib/lib

test-suite test
hs-source-dirs: test
Expand Down

0 comments on commit 395b838

Please sign in to comment.