No description
Find a file
2022-10-20 14:38:19 -05:00
src roms: process RomHandler after construction 2022-10-20 14:38:19 -05:00
tests Refactor to use genodepkgs flake input, remove stale code 2021-02-18 22:54:18 +01:00
.gitignore Initial commit 2018-06-03 14:00:40 +02:00
flake.lock Refactor to use genodepkgs flake input, remove stale code 2021-02-18 22:54:18 +01:00
flake.nix Refactor to use genodepkgs flake input, remove stale code 2021-02-18 22:54:18 +01:00
genode.nimble signals: expose signal submission 2022-10-20 14:37:54 -05:00
LICENSE Initial commit 2018-06-03 14:00:40 +02:00
README.md Genode VFS networking 2018-11-19 15:48:52 +01:00

Genode platform library for Nim

This is a Nim library for interacting with the Genode OS.

Simply adding import genode to a project is also sufficient for passing the necessary compiler flags thru the toolchain.

A pattern for use with Nimble:

...
srcDir = "src"
bin    = @["foo"]

requires "nim >= 1.0.0", "genode"

task genode, "Build for Genode":
  exec "nim cpp --os:genode -d:posix -o:foo.genode src/foo"

This adds a task for building a Genode binary invoked by calling nimble genode through the shell. The compilier will invoke pkg-config and thus needs PKG_CONFIG_PATH set to point at the pkgconfig files supplied with a Genode SDK, so the command to use is probably closer to PKG_CONFIG_PATH="/opt/genode-sdk-x86_64/pkgconfig" nimble genode.

See https://github.com/ehmry/genode/releases/ for a compatible SDK.