Socket
Book a DemoInstallSign in
Socket

@grain/libiwasm

Package Overview
Dependencies
Maintainers
3
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@grain/libiwasm

The iwasm core from wasm-micro-runtime packaged for OCaml.

latest
npmnpm
Version
1.1.2
Version published
Maintainers
3
Created
Source

libiwasm

The iwasm core from wasm-micro-runtime packaged for OCaml.

This is just the low-level C library. If you are looking for OCaml bindings to WAMR, keep an eye out for our bindings!

Usage

Inside your dune file, you can depend on libiwasm as such:

(library
 (name wamr)
 (public_name wamr)
 (libraries libiwasm)
 (foreign_stubs
  (language c)
  (names wamr_stubs)
  (flags :standard)))

We also support the new dune ctypes stanza:

(library
 (name wamr)
 (libraries libiwasm)
 (flags
  (:standard -w -9-27-33))
 (ctypes
  (external_library_name wamr)
  (build_flags_resolver
   (vendored
    (c_flags :standard)
    (c_library_flags :standard)))
  (headers
   (preamble "#include \"%{lib:libiwasm:wasm_export.h}\""))
  (type_description
   (instance Type)
   (functor Wamr_type_description))
  (function_description
   (concurrency sequential)
   (instance Functions)
   (functor Wamr_function_description))
  (generated_types Types_generated)
  (generated_entry_point Wamr)))

Configuration

This project currently configures iwasm to support the needs of Grain, but we plan to support configuration through the substs field of our opam file once esy supports it.

The current configuration can be found in our CMakeLists file.

Contributing

You'll need Node.js and esy to build this project. You should be able to use Opam if you are more comfortable with it, but the core team does all development using esy.

dune will take care of compiling WAMR, so to build the project you'll only need to run:

esy

This will take a while. Once it's done, you can run the tests:

esy test

Keywords

wamr

FAQs

Package last updated on 16 Dec 2022

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts