gerbilPackages-unstable.smug-gerbil: init at 2019-12-24

This commit is contained in:
Francois-Rene Rideau 2020-09-25 21:19:24 -04:00
parent 078d667f9e
commit 8ff03048f9
2 changed files with 36 additions and 4 deletions

View File

@ -1,4 +1,4 @@
{ pkgs, gccStdenv, callPackage, fetchFromGitHub }: { pkgs, lib, gccStdenv, callPackage, fetchFromGitHub }:
# See ../gambit/build.nix regarding gccStdenv # See ../gambit/build.nix regarding gccStdenv
rec { rec {
@ -9,6 +9,7 @@ rec {
gerbil-poo = callPackage ./gerbil-poo.nix { }; gerbil-poo = callPackage ./gerbil-poo.nix { };
gerbil-persist = callPackage ./gerbil-persist.nix { }; gerbil-persist = callPackage ./gerbil-persist.nix { };
gerbil-ethereum = callPackage ./gerbil-ethereum.nix { }; gerbil-ethereum = callPackage ./gerbil-ethereum.nix { };
smug-gerbil = callPackage ./smug-gerbil.nix { };
}; };
# Use this function in any package that uses Gerbil libraries, to define the GERBIL_LOADPATH. # Use this function in any package that uses Gerbil libraries, to define the GERBIL_LOADPATH.
@ -23,6 +24,7 @@ rec {
gambit-params ? pkgs.gambit-support.stable-params, gambit-params ? pkgs.gambit-support.stable-params,
gerbilInputs ? [], gerbilInputs ? [],
buildInputs ? [], buildInputs ? [],
buildScript ? "./build.ss",
softwareName ? ""} : softwareName ? ""} :
let buildInputs_ = buildInputs; in let buildInputs_ = buildInputs; in
gccStdenv.mkDerivation rec { gccStdenv.mkDerivation rec {
@ -33,8 +35,8 @@ rec {
set -e ; set -e ;
if [ -n "${version-path}.ss" ] ; then if [ -n "${version-path}.ss" ] ; then
echo -e '(import :clan/versioning${builtins.concatStringsSep "" echo -e '(import :clan/versioning${builtins.concatStringsSep ""
(map (x : if x.passthru.version-path != "" (map (x : lib.optionalString (x.passthru.version-path != "")
then " :${x.passthru.gerbil-package}/${x.passthru.version-path}" else "") " :${x.passthru.gerbil-package}/${x.passthru.version-path}")
gerbilInputs) gerbilInputs)
})\n(register-software "${softwareName}" "v${git-version}")\n' > "${passthru.version-path}.ss" })\n(register-software "${softwareName}" "v${git-version}")\n' > "${passthru.version-path}.ss"
fi fi
@ -50,7 +52,7 @@ rec {
buildPhase = '' buildPhase = ''
runHook preBuild runHook preBuild
./build.ss ${buildScript}
runHook postBuild runHook postBuild
''; '';

View File

@ -0,0 +1,30 @@
{ pkgs, lib, fetchFromGitHub, gerbil-unstable, gerbil-support, gambit-support }:
gerbil-support.gerbilPackage {
pname = "smug-gerbil";
version = "unstable-2019-12-24";
git-version = "95d60d4";
gerbil-package = "drewc/smug";
gerbil = gerbil-unstable;
gerbilInputs = [];
buildInputs = [];
gambit-params = gambit-support.unstable-params;
version-path = ""; #"version";
softwareName = "Smug-Gerbil";
src = fetchFromGitHub {
owner = "drewc";
repo = "smug-gerbil";
rev = "95d60d486c1603743c6d3c525e6d5f5761b984e5";
sha256 = "0ys07z78gq60z833si2j7xa1scqvbljlx1zb32vdf32f1b27c04j";
};
meta = {
description = "Super Monadic Über Go-into : Parsers and Gerbil Scheme";
homepage = "https://github.com/drewc/smug-gerbil";
license = lib.licenses.mit;
platforms = lib.platforms.unix;
maintainers = with lib.maintainers; [ fare ];
};
buildScript = ''
for i in primitive simple tokens smug ; do gxc -O $i.ss ; done
'';
}