packages feed

cabal-rpm 0.9.8 → 0.9.9

raw patch · 4 files changed

+23/−16 lines, 4 files

Files

ChangeLog view
@@ -1,3 +1,6 @@+* 0.9.9 (2016-01-25)+- couple of minor improvements for SUSE packaging+ * 0.9.8 (2015-10-08) - better %license logic - fix handling of versions without '.'
cabal-rpm.cabal view
@@ -1,5 +1,5 @@ Name:                cabal-rpm-Version:             0.9.8+Version:             0.9.9 Synopsis:            RPM packaging tool for Haskell Cabal-based packages Description:     This package provides a RPM packaging tool for Haskell Cabal-based packages.@@ -17,7 +17,7 @@ Author:              Jens Petersen <juhp@community.haskell.org>, Bryan O'Sullivan <bos@serpentine.com> Maintainer:          Jens Petersen <petersen@fedoraproject.org> Copyright:           2007-2008 Bryan O'Sullivan <bos@serpentine.com>,-                     2012-2015 Jens Petersen <petersen@fedoraproject.org>+                     2012-2016 Jens Petersen <petersen@fedoraproject.org> Category:            Distribution Build-type:          Simple Extra-source-files:  README.md ChangeLog man/cblrpm.1.md man/cblrpm.1
src/Commands/Spec.hs view
@@ -3,7 +3,7 @@ -- | -- Module      :  Commands.Spec -- Copyright   :  (C) 2007-2008  Bryan O'Sullivan---                (C) 2012-2015  Jens Petersen+--                (C) 2012-2016  Jens Petersen -- -- Maintainer  :  Jens Petersen <petersen@fedoraproject.org> -- Stability   :  alpha@@ -32,7 +32,7 @@ import Data.List        (groupBy, intercalate, isPrefixOf, isSuffixOf,                          sort, (\\)) import Data.Maybe       (fromMaybe)-import Data.Time.Clock  (UTCTime, getCurrentTime)+import Data.Time.Clock  (getCurrentTime) import Data.Time.Format (formatTime) import Data.Version     (showVersion) @@ -58,13 +58,15 @@ import qualified Paths_cabal_rpm (version)  -defaultRelease :: FilePath -> UTCTime -> IO String-defaultRelease cabalPath now = do+defaultRelease :: FilePath -> Distro -> IO String+defaultRelease cabalPath distro = do   let pkgDir = takeDirectory cabalPath   scmRepo <- isScmDir pkgDir-  return $ if scmRepo-           then formatTime defaultTimeLocale "0.%Y%m%d" now-           else "1"+  if scmRepo+    then do+    now <- getCurrentTime+    return $ formatTime defaultTimeLocale "0.%Y%m%d" now+    else return $ if (distro == SUSE) then "0" else "1"  rstrip :: (Char -> Bool) -> String -> String rstrip p = reverse . dropWhile p . reverse@@ -80,15 +82,11 @@       verbose = rpmVerbosity flags       hasExec = hasExes pkgDesc       hasLib = hasLibs pkgDesc-  now <- getCurrentTime-  defRelease <- defaultRelease cabalPath now   (pkgname, binlib) <- getPkgName mspec pkgDesc (rpmBinary flags)   let pkg_name = if pkgname == name then "%{name}" else "%{pkg_name}"       basename | binlib = "%{pkg_name}"                | hasExecPkg = name                | otherwise = "ghc-%{pkg_name}"-      version = packageVersion pkg-      release = fromMaybe defRelease (rpmRelease flags)       specFile = fromMaybe "" mdest </> pkgname ++ ".spec"       hasExecPkg = binlib || (hasExec && not hasLib)   -- run commands before opening file to prevent empty file on error@@ -119,6 +117,7 @@   if distro /= SUSE     then put "# https://fedoraproject.org/wiki/Packaging:Haskell"     else do+    now <- getCurrentTime     let year = formatTime defaultTimeLocale "%Y" now     put "#"     put $ "# spec file for package " ++ pkgname@@ -178,6 +177,9 @@   --   putDef "debug_package" "%{nil}"   --   putNewline +  defRelease <- defaultRelease cabalPath distro+  let version = packageVersion pkg+      release = fromMaybe defRelease (rpmRelease flags)   putHdr "Name" (if binlib then "%{pkg_name}" else basename)   putHdr "Version" version   putHdr "Release" $ release ++ (if distro == SUSE then [] else "%{?dist}")@@ -205,7 +207,8 @@   unless (null $ alldeps ++ extraTestDeps) $ do     put "# Begin cabal-rpm deps:"     mapM_ (putHdr "BuildRequires") alldeps-    when (any (\ d -> d `elem` map showDep ["template-haskell", "hamlet"]) deps) $+    when (distro /= SUSE &&+          any (\ d -> d `elem` map showDep ["template-haskell", "hamlet"]) deps) $       putHdr "ExclusiveArch" "%{ghc_arches_with_ghci}"     unless (null extraTestDeps) $ do       put "%if %{with tests}"@@ -349,6 +352,7 @@    put "%changelog"   unless (distro == SUSE) $ do+    now <- getCurrentTime     let date = formatTime defaultTimeLocale "%a %b %e %Y" now     put $ "*" +-+ date +-+ "Fedora Haskell SIG <haskell@lists.fedoraproject.org> - " ++ version ++ "-" ++ release     put $ "- spec file generated by cabal-rpm-" ++ showVersion Paths_cabal_rpm.version
src/Dependencies.hs view
@@ -1,6 +1,6 @@ -- | -- Module      :  Dependencies--- Copyright   :  (C) 2012-2015  Jens Petersen+-- Copyright   :  (C) 2012-2016  Jens Petersen -- -- Maintainer  :  Jens Petersen <petersen@fedoraproject.org> -- Stability   :  alpha@@ -123,7 +123,7 @@                 -> String           -- ^self                 -> [String]         -- ^depends testsuiteDependencies pkgDesc self =-  map showDep . delete self . filter excludedPkgs . nub . map depName $ concatMap targetBuildDepends $ map testBuildInfo $ testSuites pkgDesc+  map showDep . delete self . filter excludedPkgs . nub . map depName $ concatMap (targetBuildDepends . testBuildInfo) (testSuites pkgDesc)  missingPackages :: PackageDescription -> IO [String] missingPackages pkgDesc = do