Compare commits
2
Commits
a01b539433
...
030b36cd98
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
030b36cd98 | ||
|
|
bf2fc08ec4 |
@@ -20,7 +20,7 @@
|
|||||||
overlays = [
|
overlays = [
|
||||||
haskellNix.overlay
|
haskellNix.overlay
|
||||||
(final: prev: {
|
(final: prev: {
|
||||||
gyehoek-runtime = final.callPackage ./runtime {
|
gyehoek-wasm-runtime = final.callPackage ./wasm-runtime {
|
||||||
crane-lib = inputs.crane.mkLib final;
|
crane-lib = inputs.crane.mkLib final;
|
||||||
};
|
};
|
||||||
gyehoek = final.haskell-nix.project' {
|
gyehoek = final.haskell-nix.project' {
|
||||||
@@ -33,15 +33,16 @@
|
|||||||
pkgs.git # tasty uses git diff
|
pkgs.git # tasty uses git diff
|
||||||
];
|
];
|
||||||
in ''
|
in ''
|
||||||
export GYEHOEK_RUNTIME=${lib.getExe final.gyehoek-runtime}
|
export GYEHOEK_WASM_RUNTIME=${
|
||||||
|
lib.getExe final.gyehoek-wasm-runtime
|
||||||
|
}
|
||||||
export PATH=${lib.makeBinPath bin}:$PATH
|
export PATH=${lib.makeBinPath bin}:$PATH
|
||||||
export GYEHOEK_IN_NIX_BUILD=1
|
|
||||||
'';
|
'';
|
||||||
})];
|
})];
|
||||||
shell = {
|
shell = {
|
||||||
withHoogle = true;
|
withHoogle = true;
|
||||||
inputsFrom = [
|
inputsFrom = [
|
||||||
final.gyehoek-runtime
|
final.gyehoek-wasm-runtime
|
||||||
];
|
];
|
||||||
tools = {
|
tools = {
|
||||||
cabal = {};
|
cabal = {};
|
||||||
@@ -92,7 +93,7 @@
|
|||||||
hf.packages.${system} // lib.fix (packages: {
|
hf.packages.${system} // lib.fix (packages: {
|
||||||
gyehoek = hf.packages.${system}."gyehoek:exe:gyehoek";
|
gyehoek = hf.packages.${system}."gyehoek:exe:gyehoek";
|
||||||
default = packages.gyehoek;
|
default = packages.gyehoek;
|
||||||
inherit (pkgs) gyehoek-runtime;
|
inherit (pkgs) gyehoek-wasm-runtime;
|
||||||
}));
|
}));
|
||||||
|
|
||||||
devShells = each-system
|
devShells = each-system
|
||||||
|
|||||||
+8
-8
@@ -156,11 +156,11 @@ test-suite test
|
|||||||
default-language: GHC2024
|
default-language: GHC2024
|
||||||
|
|
||||||
-- https://github.com/martijnbastiaan/doctest-parallel/pull/66
|
-- https://github.com/martijnbastiaan/doctest-parallel/pull/66
|
||||||
test-suite doctest
|
-- test-suite doctest
|
||||||
import: ghcstuffs, ghcstuffs-dev
|
-- import: ghcstuffs, ghcstuffs-dev
|
||||||
type: exitcode-stdio-1.0
|
-- type: exitcode-stdio-1.0
|
||||||
hs-source-dirs: test
|
-- hs-source-dirs: test
|
||||||
main-is: doctest.hs
|
-- main-is: doctest.hs
|
||||||
build-depends:
|
-- build-depends:
|
||||||
, base
|
-- , base
|
||||||
, doctest-parallel >=0.1
|
-- , doctest-parallel >=0.1
|
||||||
|
|||||||
@@ -50,8 +50,8 @@ maybeBroken name broken = applyWhen (name `elem` broken) expectFail
|
|||||||
|
|
||||||
wasmTests :: List FilePath -> IO TestTree
|
wasmTests :: List FilePath -> IO TestTree
|
||||||
wasmTests files = do
|
wasmTests files = do
|
||||||
cmd <- getEnvDefault "GYEHOEK_RUNTIME"
|
cmd <- getEnvDefault "GYEHOEK_WASM_RUNTIME"
|
||||||
"runtime/target/debug/gyehoek-runtime"
|
"runtime/target/debug/gyehoek-wasm-runtime"
|
||||||
pure $ testGroup "wasm" $ files <&> \test ->
|
pure $ testGroup "wasm" $ files <&> \test ->
|
||||||
let testname = takeFileName test
|
let testname = takeFileName test
|
||||||
scmfile = test </> "source.scm"
|
scmfile = test </> "source.scm"
|
||||||
|
|||||||
+1
-8
@@ -7,11 +7,4 @@ import System.IO (stderr, hPutStrLn)
|
|||||||
|
|
||||||
|
|
||||||
main :: IO ()
|
main :: IO ()
|
||||||
main = do
|
main = mainFromCabal "gyehoek" =<< getArgs
|
||||||
nix <- maybe False null <$> lookupEnv "GYEHOEK_IN_NIX_BUILD"
|
|
||||||
if nix then do
|
|
||||||
hPutStrLn stderr "\
|
|
||||||
\skipping doctests in Nix build environment. \
|
|
||||||
\see https://github.com/pcapriotti/optparse-applicative/pull/408."
|
|
||||||
else
|
|
||||||
mainFromCabal "gyehoek" =<< getArgs
|
|
||||||
|
|||||||
+1
-1
@@ -663,7 +663,7 @@ dependencies = [
|
|||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "gyehoek-runtime"
|
name = "gyehoek-wasm-runtime"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"clap",
|
"clap",
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "gyehoek-runtime"
|
name = "gyehoek-wasm-runtime"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
|
|
||||||
@@ -4,10 +4,10 @@
|
|||||||
}:
|
}:
|
||||||
|
|
||||||
crane-lib.buildPackage (lib.fix (finalAttrs: {
|
crane-lib.buildPackage (lib.fix (finalAttrs: {
|
||||||
pname = "gyehoek-runtime";
|
pname = "gyehoek-wasm-runtime";
|
||||||
version = "0.1.0";
|
version = "0.1.0";
|
||||||
src = ./.;
|
src = ./.;
|
||||||
# cargoLock = ./Cargo.lock;
|
# cargoLock = ./Cargo.lock;
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
meta.mainProgram = "gyehoek-runtime";
|
meta.mainProgram = "gyehoek-wasm-runtime";
|
||||||
}))
|
}))
|
||||||
@@ -8,7 +8,7 @@ use clio::*;
|
|||||||
use clap::Parser;
|
use clap::Parser;
|
||||||
use wasmtime::*;
|
use wasmtime::*;
|
||||||
|
|
||||||
/// A runtime for Gyehoek scheme.
|
/// A Wasm runtime for Gyehoek scheme.
|
||||||
#[derive(Parser, Debug)]
|
#[derive(Parser, Debug)]
|
||||||
#[command(name = "gyehoek", version, about, long_about = None)]
|
#[command(name = "gyehoek", version, about, long_about = None)]
|
||||||
struct Args {
|
struct Args {
|
||||||
Reference in New Issue
Block a user