packages feed

cabal-toolkit 0.0.2 → 0.0.3

raw patch · 3 files changed

+30/−1 lines, 3 files

Files

CHANGELOG.md view
@@ -1,5 +1,9 @@ # CHANGELOG for cabal-toolkit +## 0.0.3++* Add `Program`s for `cmake`/`make`/`ninja` for users who need to compile C/C++.+ ## 0.0.2  * Add `getGHCPackageDBFlags` for users working with GHC API.
cabal-toolkit.cabal view
@@ -3,7 +3,7 @@ -- see: https://github.com/sol/hpack  name:           cabal-toolkit-version:        0.0.2+version:        0.0.3 synopsis:       Helper functions for writing custom Setup.hs scripts. category:       Distribution stability:      alpha
src/Distribution/Simple/Toolkit.hs view
@@ -31,6 +31,10 @@   , getLBIProgramOutput   -- * Convenient functions for working with GHC API   , getGHCPackageDBFlags+  -- * Extra 'Program's+  , cmakeProgram+  , makeProgram+  , ninjaProgram   ) where  import Data.Binary@@ -41,6 +45,7 @@ import Distribution.Simple.LocalBuildInfo import Distribution.Simple.Program import Distribution.Simple.Setup+import Distribution.System import Distribution.Types.BuildInfo import Distribution.Types.PackageDescription import Distribution.Verbosity@@ -165,3 +170,23 @@     isSpecific (SpecificPackageDB _) = True     isSpecific _ = False +endOfFirstLineVersion :: Verbosity -> FilePath -> IO (Maybe Version)+endOfFirstLineVersion =+  findProgramVersion "--version" $ last . words . head . lines++cmakeProgram :: Program+cmakeProgram =+  (simpleProgram "cmake") {programFindVersion = endOfFirstLineVersion}++makeProgram :: Program+makeProgram =+  (simpleProgram $+   case buildOS of+     Windows -> "mingw32-make"+     _ -> "make")+  {programFindVersion = endOfFirstLineVersion}++ninjaProgram :: Program+ninjaProgram =+  (simpleProgram "ninja")+  {programFindVersion = findProgramVersion "--version" id}