[arch-haskell] [magnus@therning.org: Some patches for cabal2arch]
Don Stewart
dons at galois.com
Thu Jun 18 17:41:31 EDT 2009
Does anyone have a policy document they can point to for the following:
"No package should ever be listed in both depends and makedepends."
Cheers,
Don
----- Forwarded message from Magnus Therning <magnus at therning.org> -----
Date: Thu, 04 Jun 2009 22:50:00 +0100
From: Magnus Therning <magnus at therning.org>
To: Don Stewart <dons at galois.com>
Subject: Some patches for cabal2arch
Enjoy.
/M
--
Magnus Therning (OpenPGP: 0xAB4DFBA4)
magnus@therning.org Jabber: magnus@therning.org
http://therning.org/magnus identi.ca|twitter: magthe
Sat May 30 10:13:23 BST 2009 magnus at therning.org
* Replacing all occurances of $startdir/{pkg,src}
$startdir should never be used in PKGBUILD, instead $pkgdir and
$srcdir should be used instead. Apparently there is no guarantee that
$startdir/{pkg,src}==${pkg,src}dir.
Sat May 30 10:33:51 BST 2009 magnus at therning.org
* Use Control.OldException explicitly
Thu Jun 4 22:42:14 BST 2009 magnus at therning.org
* Clean up depends/makedepends
No package should ever be listed in both depends and makedepends.
For packages with only executables:
makedepends = buildDepends
depends = ['gmp'] ++ clibs
For packages with only libs:
makedepends = []
depends = buildDepends
For packages with both executables and libs:
makedepends = []
depends = buildDepends ++ ['gmp'] ++ clibs
New patches:
[Replacing all occurances of $startdir/{pkg,src}
magnus at therning.org**20090530091323
Ignore-this: aa69185376663346b3710c7a80a8d388
$startdir should never be used in PKGBUILD, instead $pkgdir and
$srcdir should be used instead. Apparently there is no guarantee that
$startdir/{pkg,src}==${pkg,src}dir.
] {
hunk ./Main.hs 525
++ (display name </> display vers </> display name <-> display vers <.> "tar.gz")
, arch_build =
- [ "cd $startdir/src/" </> display name <-> display vers
+ [ "cd ${srcdir}/" </> display name <-> display vers
, "runhaskell Setup configure --prefix=/usr || return 1"
, "runhaskell Setup build || return 1"
] ++
hunk ./Main.hs 535
then
["runhaskell Setup register --gen-script || return 1"
,"runhaskell Setup unregister --gen-script || return 1"
- ,"install -D -m744 register.sh $startdir/pkg/usr/share/haskell/$pkgname/register.sh"
- , "install -m744 unregister.sh $startdir/pkg/usr/share/haskell/$pkgname/unregister.sh"
+ ,"install -D -m744 register.sh ${pkgdir}/usr/share/haskell/$pkgname/register.sh"
+ , "install -m744 unregister.sh ${pkgdir}/usr/share/haskell/$pkgname/unregister.sh"
]
else [])
++
hunk ./Main.hs 540
- ["runhaskell Setup copy --destdir=$startdir/pkg || return 1"]
+ ["runhaskell Setup copy --destdir=${pkgdir} || return 1"]
++
(if not (null (licenseFile cabal)) && license cabal `notElem` [GPL,LGPL]
then ["install -D -m644 " ++ licenseFile cabal ++
hunk ./Main.hs 544
- " $startdir/pkg/usr/share/licenses/$pkgname/LICENSE || return 1" ]
+ " ${pkgdir}/usr/share/licenses/$pkgname/LICENSE || return 1" ]
else [])
-- if its a library:
}
[Use Control.OldException explicitly
magnus at therning.org**20090530093351
Ignore-this: 89ac5a923e7bb3d072adc8f39bfad4c9
] {
hunk ./Main.hs 41
import Control.Monad
import Control.Concurrent
-import Control.Exception
-import qualified Control.Exception as C
+import qualified Control.OldException as C
import Data.List
import Data.Maybe
hunk ./Main.hs 64
main :: IO ()
main =
- bracket
+ C.bracket
-- We do all our work in a temp directory
(do cwd <- getCurrentDirectory
etmp <- myReadProcess "mktemp" ["-d"] []
hunk ./Main.hs 868
-- Safe wrapper for getEnv
getEnvMaybe :: String -> IO (Maybe String)
-getEnvMaybe name = handle (const $ return Nothing) (Just `fmap` getEnv name)
+getEnvMaybe name = C.handle (const $ return Nothing) (Just `fmap` getEnv name)
------------------------------------------------------------------------
hunk ./cabal2arch.cabal 23
if flag(small_base)
build-depends:
- base < 4,
+ base,
pretty,
process,
directory,
}
[Clean up depends/makedepends
magnus at therning.org**20090604214214
Ignore-this: 3781e18ed593d5b31a927b22e8755168
No package should ever be listed in both depends and makedepends.
For packages with only executables:
makedepends = buildDepends
depends = ['gmp'] ++ clibs
For packages with only libs:
makedepends = []
depends = buildDepends
For packages with both executables and libs:
makedepends = []
depends = buildDepends ++ ['gmp'] ++ clibs
] hunk ./Main.hs 500
-- All Hackage packages depend on GHC at build time
-- All Haskell libraries are prefixed with "haskell-"
- , arch_makedepends = my_makedepends
+ , arch_makedepends = if hasLibrary
+ then ArchList []
+ else my_makedepends
, arch_depends =
(if not (isLibrary)
Context:
[Update versions for 6.10.2
Don Stewart <dons at galois.com>**20090503220339
Ignore-this: 9c7065402eb4b0fa40cb98d78257b1e8
]
[Don't die on meta packages
Don Stewart <dons at galois.com>**20090503220326
Ignore-this: 865718094cb482a99e6d218eaffe8bca
]
[bump
Don Stewart <dons at galois.com>**20090120060802]
[more stuff
Don Stewart <dons at galois.com>**20090118204158]
[tweaks
Don Stewart <dons at galois.com>**20090115012123]
[Update list to match ghc 6.10
Don Stewart <dons at galois.com>**20090115012027]
[Fix type errors
Don Stewart <dons at galois.com>**20081211003027
Ignore-this: b04864e1a4ef3f82d14d84a36f8159d9
]
[Bump
Don Stewart <dons at galois.com>**20081211002459
Ignore-this: 68ee33c3a389cd2b4be843078c2a2363
]
[Changes for compatability with Cabal>=1.6
Asgaroth <asgaroth_ at gmx.de>**20081210181517]
[Bump
Don Stewart <dons at galois.com>**20080912223231]
[Typo correction in String Constant
Matthew William Cox <matt at mattcox.ca>**20080824050628]
[more notes
Don Stewart <dons at galois.com>**20080819003802]
[require cabal > 1.4.0.0
Don Stewart <dons at galois.com>**20080816214330]
[typo
Don Stewart <dons at galois.com>**20080809221828]
[typo
Don Stewart <dons at galois.com>**20080809221819]
[Add Cabal as always required
Don Stewart <dons at galois.com>**20080809221600]
[libraries have a "runtime" dep on other libraires
Don Stewart <dons at galois.com>**20080731043213]
[more tewaks
Don Stewart <dons at galois.com>**20080710232737]
[bump
Don Stewart <dons at galois.com>**20080704172433]
[more apps
Don Stewart <dons at galois.com>**20080704172421]
[Add mozembed
Don Stewart <dons at galois.com>**20080624224843]
[more stuf
Don Stewart <dons at galois.com>**20080622182333]
[Add C dependencies support
Don Stewart <dons at galois.com>**20080621231902]
[more stuff
Don Stewart <dons at galois.com>**20080621192207]
[more stuff
Don Stewart <dons at galois.com>**20080619214200]
[bump
Don Stewart <dons at galois.com>**20080619154829]
[bump version
Don Stewart <dons at galois.com>**20080619005235]
[more libs
Don Stewart <dons at galois.com>**20080619005042]
[titles, fftw
Don Stewart <dons at galois.com>**20080619001858]
[nub
Don Stewart <dons at galois.com>**20080618055140]
[more stuff
Don Stewart <dons at galois.com>**20080618014217]
[incorrect bump
Don Stewart <dons at galois.com>**20080618002208]
[more libraries
Don Stewart <dons at galois.com>**20080618001954]
[Handle missing LICENSE files
Don Stewart <dons at galois.com>**20080617214806]
[fix bug with quoting in pkgdesc.
Don Stewart <dons at galois.com>**20080617210705]
[more libs
Don Stewart <dons at galois.com>**20080617001133]
[more libs, new env var
Don Stewart <dons at galois.com>**20080616215343]
[bump version
Don Stewart <dons at galois.com>**20080616180921]
[add gtk2hs support
Don Stewart <dons at galois.com>**20080616180845]
[Enough to build 250 libraries
Don Stewart <dons at galois.com>**20080616075512]
[Add more rules for C libraries
Don Stewart <dons at galois.com>**20080616013917]
[some more libraries
Don Stewart <dons at galois.com>**20080616001949]
[depend on new puremd5
Don Stewart <dons at galois.com>**20080613235859]
[Determine canonical name for C libraries
Don Stewart <dons at galois.com>**20080613211325]
[always use hackage url
Don Stewart <dons at galois.com>**20080613053013]
[0.3.1
Don Stewart <dons at galois.com>**20080613045331]
[depend on stable pureMD5
Don Stewart <dons at galois.com>**20080613045238]
[add missing libraries and bump version
Don Stewart <dons at galois.com>**20080613041415]
[bump version
Don Stewart <dons at galois.com>**20080613010106]
[lowercase
Don Stewart <dons at galois.com>**20080613000828]
[typo
Don Stewart <dons at galois.com>**20080613000354]
[tweaks
Don Stewart <dons at galois.com>**20080613000100]
[Bump version, now produces valid libraries
Don Stewart <dons at galois.com>**20080612232452]
[Finish off beta version
Don Stewart <dons at galois.com>**20080612224944]
[more notes
Don Stewart <dons at galois.com>**20080612063850]
[add build() generation and correct version dep printing
Don Stewart <dons at galois.com>**20080612043420]
[Initial stab at cabal2arch
Don Stewart <dons at galois.com>**20080612012022]
Patch bundle hash:
60a5d14760663bdbbf06e3616119f857ed3a768f
----- End forwarded message -----
More information about the arch-haskell
mailing list