cpkg 0.2.4.5 → 0.2.4.6
raw patch · 5 files changed
+165/−106 lines, 5 files
Files
- LICENSE +1/−1
- cpkg.cabal +2/−2
- dhall/cpkg-prelude.dhall +102/−72
- pkgs/pkg-set.dhall +59/−30
- src/Package/C/PackageSet.hs +1/−1
LICENSE view
@@ -1,4 +1,4 @@-Copyright Vanessa McHale (c) 2018-2019+Copyright Vanessa McHale (c) 2018-2020 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
cpkg.cabal view
@@ -1,9 +1,9 @@ cabal-version: 1.18 name: cpkg-version: 0.2.4.5+version: 0.2.4.6 license: BSD3 license-file: LICENSE-copyright: Copyright: (c) 2018-2019 Vanessa McHale+copyright: Copyright: (c) 2018-2020 Vanessa McHale maintainer: vamchale@gmail.com author: Vanessa McHale synopsis: Build tool for C
dhall/cpkg-prelude.dhall view
@@ -210,6 +210,27 @@ } os +let isMac =+ λ(os : types.OS)+ → merge+ { FreeBSD = False+ , OpenBSD = False+ , NetBSD = False+ , Solaris = False+ , Dragonfly = False+ , Linux = False+ , Darwin = True+ , Windows = False+ , Redox = False+ , Haiku = False+ , IOS = False+ , AIX = False+ , Hurd = False+ , Android = False+ , NoOs = False+ }+ os+ let mkLDFlagsGeneral = λ(libDirs : List Text) → λ(linkLibs : List Text)@@ -395,11 +416,25 @@ let modifyArgs = maybeAppend Text maybeHost + let mac = isMac cfg.buildOS++ let modifyProg =+ if mac++ then λ(x : List Text) → [ "${filename}" ] # x++ else λ(x : List Text) → x++ let program = if mac then "sh" else "./${filename}"+ in [ call ( defaultCall- ⫽ { program = "./${filename}"+ ⫽ { program = program , arguments =- modifyArgs [ "--prefix=${cfg.installDir}" ] # extraFlags+ modifyProg+ ( modifyArgs [ "--prefix=${cfg.installDir}" ]+ # extraFlags+ ) , environment = envVars linkLibs cfg } )@@ -669,14 +704,14 @@ → [ call { program = "cmake" , arguments =- [ "--build"- , "."- , "--config"- , "Release"- , "--"- , "-j"- , Natural/show cfg.cpus- ]+ [ "--build"+ , "."+ , "--config"+ , "Release"+ , "--"+ , "-j"+ , Natural/show cfg.cpus+ ] , environment = Some (cmakeEnv cfg) , procDir = Some "build" }@@ -687,7 +722,7 @@ → [ call { program = "cmake" , arguments =- [ "--build", ".", "--target", "install", "--config", "Release" ]+ [ "--build", ".", "--target", "install", "--config", "Release" ] , environment = Some (cmakeEnv cfg) , procDir = Some "build" }@@ -711,13 +746,12 @@ → [ call ( defaultCall ⫽ { program = "./autogen.sh"- , environment =- Some- ( [ mkAclocalPath cfg.shareDirs- , mkPkgConfigVar (cfg.shareDirs # cfg.linkDirs)- ]- # defaultPath cfg- )+ , environment = Some+ ( [ mkAclocalPath cfg.shareDirs+ , mkPkgConfigVar (cfg.shareDirs # cfg.linkDirs)+ ]+ # defaultPath cfg+ ) } ) ]@@ -839,18 +873,17 @@ in [ call ( defaultCall ⫽ { program = "ninja"- , environment =- Some- ( [ mkPkgConfigVar cfg.linkDirs- , mkPy3Path cfg.linkDirs- , libPath cfg- , mkLDRunPath cfg.linkDirs- , mkLDFlagsGeneral cfg.linkDirs linkLibs- , mkCFlags cfg- ]- # defaultPath cfg- # ldPreload- )+ , environment = Some+ ( [ mkPkgConfigVar cfg.linkDirs+ , mkPy3Path cfg.linkDirs+ , libPath cfg+ , mkLDRunPath cfg.linkDirs+ , mkLDFlagsGeneral cfg.linkDirs linkLibs+ , mkCFlags cfg+ ]+ # defaultPath cfg+ # ldPreload+ ) , procDir = Some "build" } )@@ -863,17 +896,16 @@ → [ call ( defaultCall ⫽ { program = "ninja"- , environment =- Some- ( [ mkPkgConfigVar cfg.linkDirs- , mkPy3Path cfg.linkDirs- , libPath cfg- , mkLDRunPath cfg.linkDirs- , mkLDFlags cfg.linkDirs- , mkCFlags cfg- ]- # defaultPath cfg- )+ , environment = Some+ ( [ mkPkgConfigVar cfg.linkDirs+ , mkPy3Path cfg.linkDirs+ , libPath cfg+ , mkLDRunPath cfg.linkDirs+ , mkLDFlags cfg.linkDirs+ , mkCFlags cfg+ ]+ # defaultPath cfg+ ) , arguments = [ "install" ] , procDir = Some "build" }@@ -928,17 +960,16 @@ ( defaultCall ⫽ { program = "python${major}" , arguments = [ "setup.py", "build" ]- , environment =- Some- ( [ { var = "PYTHONPATH"- , value =- "${cfg.installDir}/lib/python${versionString}/site-packages"- }- , mkPkgConfigVar cfg.linkDirs- , libPath cfg- ]- # defaultPath cfg- )+ , environment = Some+ ( [ { var = "PYTHONPATH"+ , value =+ "${cfg.installDir}/lib/python${versionString}/site-packages"+ }+ , mkPkgConfigVar cfg.linkDirs+ , libPath cfg+ ]+ # defaultPath cfg+ ) } ) ]@@ -962,22 +993,21 @@ ( defaultCall ⫽ { program = "python${major}" , arguments =- [ "setup.py"- , "install"- , "--prefix=${cfg.installDir}"- , "--optimize=1"- ]- , environment =- Some- ( [ { var = "PYTHONPATH"- , value =- "${cfg.installDir}/lib/python${versionString}/site-packages"- }- , mkPkgConfigVar cfg.linkDirs- , libPath cfg- ]- # defaultPath cfg- )+ [ "setup.py"+ , "install"+ , "--prefix=${cfg.installDir}"+ , "--optimize=1"+ ]+ , environment = Some+ ( [ { var = "PYTHONPATH"+ , value =+ "${cfg.installDir}/lib/python${versionString}/site-packages"+ }+ , mkPkgConfigVar cfg.linkDirs+ , libPath cfg+ ]+ # defaultPath cfg+ ) } ) ]@@ -1189,10 +1219,10 @@ ( defaultCall ⫽ { program = "make" , arguments =- [ "prefix=${cfg.installDir}"- , "PREFIX=${cfg.installDir}"- , "install"- ]+ [ "prefix=${cfg.installDir}"+ , "PREFIX=${cfg.installDir}"+ , "install"+ ] , environment = Some (buildEnv cfg) } )
pkgs/pkg-set.dhall view
@@ -15,7 +15,7 @@ ../dhall/cpkg-types.dhall sha256:caef717db41539eb7ded38d8cd676ba998bd387171ba3fd2db7fea9e8ee8f361 let prelude =- ../dhall/cpkg-prelude.dhall sha256:4eae9adcc22ceda96091f3fa560aa095dbf8de05f7cf0387061042a9f31d10ee+ ../dhall/cpkg-prelude.dhall sha256:908d9f80be0c4bc294b5bb4ae3e3b9245659800c20ea3510518d1b1b649ffaaf let gpgPackage = λ(x : { name : Text, version : List Natural })@@ -1503,18 +1503,18 @@ ( prelude.defaultCall ⫽ { program = "ninja" , environment = Some- [ prelude.mkPkgConfigVar cfg.linkDirs- , { var = "PATH"- , value =- prelude.mkPathVar cfg.binDirs- ++ ":${cfg.currentDir}/gdk-pixbuf-${fullVersion}/build/gdk-pixbuf:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"- }- , prelude.mkPy3Path cfg.linkDirs- , prelude.libPath cfg- , prelude.mkLDRunPath cfg.linkDirs- , prelude.mkLDFlags cfg.linkDirs- , prelude.mkCFlags cfg- ]+ [ prelude.mkPkgConfigVar cfg.linkDirs+ , { var = "PATH"+ , value =+ prelude.mkPathVar cfg.binDirs+ ++ ":${cfg.currentDir}/gdk-pixbuf-${fullVersion}/build/gdk-pixbuf:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"+ }+ , prelude.mkPy3Path cfg.linkDirs+ , prelude.libPath cfg+ , prelude.mkLDRunPath cfg.linkDirs+ , prelude.mkLDFlags cfg.linkDirs+ , prelude.mkCFlags cfg+ ] , arguments = [ "install" ] , procDir = Some "build" }@@ -3871,11 +3871,11 @@ { program = "autoreconf" , arguments = [ "-i" ] , environment = Some- [ { var = "PATH"- , value = prelude.mkPathVar cfg.binDirs- }- , prelude.mkAclocalPath cfg.shareDirs- ]+ [ { var = "PATH"+ , value = prelude.mkPathVar cfg.binDirs+ }+ , prelude.mkAclocalPath cfg.shareDirs+ ] , procDir = None Text } ]@@ -4637,11 +4637,11 @@ { program = "autoreconf" , arguments = [ "-i" ] , environment = Some- [ { var = "PATH"- , value = prelude.mkPathVar cfg.binDirs- }- , prelude.mkAclocalPath cfg.shareDirs- ]+ [ { var = "PATH"+ , value = prelude.mkPathVar cfg.binDirs+ }+ , prelude.mkAclocalPath cfg.shareDirs+ ] , procDir = None Text } ]@@ -4673,6 +4673,34 @@ , installCommand = prelude.installWithWrappers [ "luarocks" ] } +let star =+ λ(v : List Natural)+ → prelude.simplePackage { name = "star", version = v }+ ⫽ { pkgUrl =+ "https://downloads.sourceforge.net/s-tar/star-${prelude.showVersion+ v}.tar.bz2"+ , configureCommand = prelude.doNothing+ , installCommand =+ λ(cfg : types.BuildVars)+ → [ prelude.call+ ( prelude.defaultCall+ ⫽ { program = "make"+ , arguments =+ [ "DESTDIR=${cfg.installDir}", "install" ]+ , environment = Some (prelude.buildEnv cfg)+ }+ )+ , prelude.symlinkBinary "opt/schily/bin/star"+ ]+ # prelude.symlinkManpages+ [ { file = "opt/schily/share/man/man1/star.1", section = 1 }+ , { file = "opt/schily/share/man/man1/scpio.1"+ , section = 1+ }+ , { file = "opt/schily/share/man/man1/spax.1", section = 1 }+ ]+ }+ in [ alsa-lib [ 1, 1, 9 ] , apr [ 1, 7, 0 ] , apr-util [ 1, 6, 1 ]@@ -4731,7 +4759,7 @@ , gegl { version = [ 0, 4 ], patch = 16 } , gettext [ 0, 20, 1 ] , gexiv2 { version = [ 0, 12 ], patch = 0 }- , ghc [ 8, 8, 1 ]+ , ghc [ 8, 8, 3 ] , gperf [ 3, 1 ] , gperftools [ 2, 7 ] , giflib [ 5, 1, 4 ]@@ -4751,7 +4779,7 @@ , grep [ 3, 3 ] , gsl [ 2, 6 ] , gtk2 { version = [ 2, 24 ], patch = 32 }- , gtk3 { version = [ 3, 24 ], patch = 10 }+ , gtk3 { version = [ 3, 24 ], patch = 14 } , gzip [ 1, 10 ] , harfbuzz [ 2, 6, 4 ] , htop [ 2, 2, 0 ]@@ -4767,7 +4795,7 @@ , joe [ 4, 6 ] , json-c { version = [ 0, 13, 1 ], dateStr = "20180305" } , kbproto [ 1, 0, 7 ]- , krb5 [ 1, 17, 1 ]+ , krb5 [ 1, 18 ] , lapack [ 3, 8, 0 ] , lcms2 [ 2, 9 ] , leptonica [ 1, 78, 0 ]@@ -4874,14 +4902,14 @@ , musl [ 1, 1, 20 ] , nano [ 4, 3 ] , nasm [ 2, 14 ]- , ncurses [ 6, 1 ]+ , ncurses [ 6, 2 ] , nginx [ 1, 15, 7 ] , ninja [ 1, 9, 0 ] , node [ 12, 13, 0 ] , npth [ 1, 6 ] , nspr [ 4, 20 ] , openblas [ 0, 3, 2 ]- , opencv [ 4, 1, 0 ]+ , opencv [ 4, 2, 0 ] , openssh [ 7, 9 ] , openssl [ 1, 1, 1 ] , p11kit [ 0, 23, 16, 1 ]@@ -4913,14 +4941,15 @@ , readline [ 8, 0 ] , recordproto [ 1, 14, 2 ] , renderproto [ 0, 11, 1 ]- , ruby { version = [ 2, 6 ], patch = 3 }- , rustc [ 1, 40, 0 ]+ , ruby { version = [ 2, 7 ], patch = 0 }+ , rustc [ 1, 41, 1 ] , scour [ 0, 37 ] , scrnsaverproto [ 1, 2, 2 ] , sdl2 [ 2, 0, 10 ] , sed [ 4, 7 ] , shared-mime-info [ 1, 10 ] , sqlite { version = [ 3, 30, 1 ] }+ , star [ 1, 6 ] , subversion [ 1, 12, 2 ] , swig [ 3, 0, 12 ] , swi-prolog [ 8, 0, 3 ]
src/Package/C/PackageSet.hs view
@@ -24,7 +24,7 @@ defaultPackageSetDhall :: Maybe String -> IO PackageSetDhall defaultPackageSetDhall (Just pkSet) = input auto (T.pack pkSet)-defaultPackageSetDhall Nothing = input auto "https://raw.githubusercontent.com/vmchale/cpkg/7fded196b689de8c4b2278c8b55c35951cfef2df/pkgs/pkg-set.dhall sha256:8b29c6512aa4e5e31261fa60f5ed3e19ba7fe84a01c1e6ded7035d4c45610bcc"+defaultPackageSetDhall Nothing = input auto "https://raw.githubusercontent.com/vmchale/cpkg/ea4e5bb39364b6ef44b4c4fea69163263d59dde0/pkgs/pkg-set.dhall sha256:66f21b9803dc5ca046868eb10ea08c70102fc00da12471b46414f2335b928a7b" displayPackageSet :: Maybe String -> IO () displayPackageSet = putDoc . pretty <=< defaultPackageSetDhall