pakcs: 2.2.1 -> 3.6.0

authored by t4ccer and committed by sternenseemann df9e485b 94a417d7

+29 -48
-16
pkgs/development/compilers/pakcs/curry-base.nix
··· 1 - { mkDerivation, base, Cabal, containers, directory, extra, filepath 2 - , mtl, parsec, pretty, lib, time, transformers 3 - }: 4 - mkDerivation { 5 - pname = "curry-base"; 6 - version = "1.1.0"; 7 - src = ./.; 8 - libraryHaskellDepends = [ 9 - base containers directory extra filepath mtl parsec pretty time 10 - transformers 11 - ]; 12 - testHaskellDepends = [ base Cabal filepath mtl ]; 13 - homepage = "http://curry-language.org"; 14 - description = "Functions for manipulating Curry programs"; 15 - license = lib.licenses.bsd3; 16 - }
+12 -10
pkgs/development/compilers/pakcs/curry-frontend.nix
··· 1 - { mkDerivation, base, bytestring, Cabal, containers, curry-base 2 - , directory, extra, file-embed, filepath, mtl, network-uri, pretty 3 - , process, set-extra, lib, template-haskell, transformers 1 + { mkDerivation, base, binary, bytestring, Cabal, containers 2 + , directory, extra, file-embed, filepath, lib, mtl, network-uri 3 + , parsec, pretty, process, set-extra, template-haskell, time 4 + , transformers 4 5 }: 5 6 mkDerivation { 6 7 pname = "curry-frontend"; 7 - version = "1.0.4"; 8 + version = "2.1.0"; 8 9 src = ./.; 9 10 isLibrary = true; 10 11 isExecutable = true; 11 12 enableSeparateDataOutput = true; 12 13 libraryHaskellDepends = [ 13 - base bytestring containers curry-base directory extra file-embed 14 - filepath mtl network-uri pretty process set-extra template-haskell 15 - transformers 14 + base binary bytestring containers directory extra file-embed 15 + filepath mtl network-uri parsec pretty process set-extra 16 + template-haskell time transformers 16 17 ]; 17 - executableHaskellDepends = [ 18 - base bytestring containers curry-base directory extra file-embed 18 + executableHaskellDepends = [ base ]; 19 + testHaskellDepends = [ 20 + base bytestring Cabal containers directory extra file-embed 19 21 filepath mtl network-uri pretty process set-extra template-haskell 20 22 transformers 21 23 ]; 22 - testHaskellDepends = [ base Cabal curry-base filepath ]; 23 24 homepage = "http://curry-language.org"; 24 25 description = "Compile the functional logic language Curry to several intermediate formats"; 25 26 license = lib.licenses.bsd3; 27 + mainProgram = "curry-frontend"; 26 28 }
+17 -22
pkgs/development/compilers/pakcs/default.nix
··· 5 5 6 6 let 7 7 pname = "pakcs"; 8 - version = "2.2.1"; 8 + version = "3.6.0"; 9 9 10 10 # Don't switch to "Current release" without a reason, because its 11 11 # source updates without version bump. Prefer last from "Older releases" instead. 12 12 src = fetchurl { 13 13 url = "https://www.informatik.uni-kiel.de/~pakcs/download/pakcs-${version}-src.tar.gz"; 14 - sha256 = "1jyg29j8r8pgcin7ixdya6c3zzfjdi66rghpwrfnkk133fz4iz7s"; 14 + hash = "sha256-1r6jEY3eEGESKcAepiziVbxpIvQLtCS6l0trBU3SGGo="; 15 15 }; 16 16 17 17 curry-frontend = (haskellPackages.override { 18 18 overrides = self: super: { 19 - curry-base = haskell.lib.compose.overrideCabal (drv: { 20 - inherit src; 21 - postUnpack = "sourceRoot+=/frontend/curry-base"; 22 - }) (super.callPackage ./curry-base.nix {}); 23 19 curry-frontend = haskell.lib.compose.overrideCabal (drv: { 24 20 inherit src; 25 - postUnpack = "sourceRoot+=/frontend/curry-frontend"; 26 - }) (super.callPackage ./curry-frontend.nix {}); 21 + postUnpack = "sourceRoot+=/frontend"; 22 + }) (super.callPackage ./curry-frontend.nix { }); 27 23 }; 28 24 }).curry-frontend; 25 + 29 26 in stdenv.mkDerivation { 30 27 inherit pname version src; 31 28 ··· 41 38 ]; 42 39 43 40 preConfigure = '' 44 - # Since we can't expand $out in `makeFlags` 45 - #makeFlags="$makeFlags PAKCSINSTALLDIR=$out/pakcs" 46 - 47 - for file in currytools/cpm/src/CPM/Repository.curry \ 48 - currytools/cpm/src/CPM/Repository/CacheDB.curry \ 49 - scripts/compile-all-libs.sh \ 50 - scripts/cleancurry.sh \ 51 - examples/test.sh testsuite/test.sh lib/test.sh; do 41 + for file in examples/test.sh \ 42 + currytools/optimize/Makefile \ 43 + testsuite/test.sh \ 44 + scripts/cleancurry.sh \ 45 + scripts/compile-all-libs.sh; do 52 46 substituteInPlace $file --replace "/bin/rm" "rm" 53 47 done 54 48 '' ; 55 49 56 - # cypm new: EXISTENCE ERROR: source_sink 57 - # "/tmp/nix-build-pakcs-2.0.2.drv-0/pakcs-2.0.2/currytools/cpm/templates/LICENSE" 58 - # does not exist 59 - buildPhase = '' 50 + preBuild = '' 60 51 mkdir -p $out/pakcs 61 52 cp -r * $out/pakcs 62 - (cd $out/pakcs ; make -j$NIX_BUILD_CORES $makeFlags) 53 + cd $out/pakcs 63 54 ''; 64 55 65 56 installPhase = '' 57 + runHook preInstall 58 + 66 59 ln -s $out/pakcs/bin $out 67 60 68 61 mkdir -p $out/share/emacs/site-lisp ··· 75 68 # List of dependencies from currytools/cpm/src/CPM/Main.curry 76 69 wrapProgram $out/pakcs/bin/cypm \ 77 70 --prefix PATH ":" "${lib.makeBinPath [ curl git unzip gnutar coreutils sqlite ]}" 71 + 72 + runHook postInstall 78 73 ''; 79 74 80 75 meta = with lib; { ··· 94 89 with dynamic web pages, prototyping embedded systems). 95 90 ''; 96 91 97 - maintainers = with maintainers; [ ]; 92 + maintainers = with maintainers; [ t4ccer ]; 98 93 platforms = platforms.linux; 99 94 }; 100 95 }