packages feed

shake-language-c 0.6.4 → 0.7.0

raw patch · 6 files changed

+18/−14 lines, 6 filesdep ~shake

Dependency ranges changed: shake

Files

CHANGELOG.md view
@@ -1,5 +1,11 @@ # Changelog for shake-language-c +## [v0.7.0][]++* Add `arm64` ARM version+* Add support for `arm64` to OSX toolchains+* Fix compilation error with GHC 7.10 (#25)+ ## [v0.6.4][]  * Fix Android toolchain definition for `x86` architecture
shake-language-c.cabal view
@@ -13,7 +13,7 @@ -- limitations under the License.  Name:         shake-language-c-Version:      0.6.4+Version:      0.7.0 Synopsis:     Utilities for cross-compiling with Shake Description:  This library provides <http://hackage.haskell.org/package/shake Shake> utilities for cross-compiling @C@, @C++@ and @ObjC@ code for various target platforms. Currently supported target platforms are Android, iOS, Linux, MacOS X, Windows\/MinGW and Google Portable Native Client (PNaCl). Supported host platforms are MacOS X, Linux and Windows. Category:     Development@@ -61,7 +61,7 @@     , data-default-class     , fclabels >= 2     , process-    , shake >= 0.10+    , shake >= 0.14     , split     , unordered-containers 
src/Development/Shake/Language/C/Host/OSX.hs view
@@ -16,7 +16,7 @@   getHostToolChain ) where -import Control.Applicative hiding ((*>))+import Control.Applicative import Development.Shake import Development.Shake.Language.C.Target import Development.Shake.Language.C.Target.OSX
src/Development/Shake/Language/C/Rules.hs view
@@ -91,7 +91,7 @@     f1 <- get ToolChain.defaultBuildFlags tc     f2 <- getBuildFlags     return $ f2 . f1 $ mempty-  result *> \_ -> do+  result %> \_ -> do     tc <- cachedToolChain ()     flags <- cachedBuildFlags ()     objs <- cachedObjects ()@@ -101,7 +101,7 @@       flags       objs       result-  (dropTrailingPathSeparator objectsDir ++ "//*.o") *> \obj -> do+  (dropTrailingPathSeparator objectsDir ++ "//*.o") %> \obj -> do     tc <- cachedToolChain ()     flags <- cachedBuildFlags ()     -- Compute source file name from object file name
src/Development/Shake/Language/C/Target.hs view
@@ -59,6 +59,7 @@   | Armv6   | Armv7   | Armv7s+  | Arm64   deriving (Eq, Show)  -- | Target architecture.@@ -91,6 +92,7 @@ -- -- The idea is that several such values can be combined to form more complex build directory hierarchies. This can be important for disambiguating build product paths in Shake rules. class ToBuildPrefix a where+  -- | Convert a value to a (unique) build directory prefix.   toBuildPrefix :: a -> FilePath  instance ToBuildPrefix Platform where@@ -99,14 +101,9 @@ instance ToBuildPrefix Arch where   toBuildPrefix arch =     case arch of-      X86 I386   -> "i386"-      X86 I686   -> "i686"-      X86 X86_64 -> "x86_64"-      Arm Armv5  -> "armv5"-      Arm Armv6  -> "armv6"-      Arm Armv7  -> "armv7"-      Arm Armv7s -> "armv7s"-      LLVM_IR    -> "llvm_ir"+      X86 version -> map toLower (show version)+      Arm version -> map toLower (show version)+      _           -> map toLower (show arch)  instance ToBuildPrefix Target where    toBuildPrefix target =
src/Development/Shake/Language/C/Target/OSX.hs view
@@ -38,7 +38,7 @@   , universalBinary ) where -import           Control.Applicative hiding ((*>))+import           Control.Applicative import           Data.List (stripPrefix) import           Data.List.Split (splitOn) import           Data.Maybe@@ -62,6 +62,7 @@     Arm Armv6  -> "armv6"     Arm Armv7  -> "armv7"     Arm Armv7s -> "armv7s"+    Arm Arm64  -> "arm64"     _          -> error $ "Unsupported OSX target architecture " ++ show arch  archFlags :: Target -> [String]