All Projects → yurydelendik → Wasmception

yurydelendik / Wasmception

Minimal C/C++ language toolset for building wasm files

Labels

Projects that are alternatives of or similar to Wasmception

I2c Master Lib
This is an I2C master library I wrote for use with AVR 8 bit microcontrollers
Stars: ✭ 122 (-5.43%)
Mutual labels:  makefile
3dshomebrew
3DS homebrew tutorial
Stars: ✭ 126 (-2.33%)
Mutual labels:  makefile
Openelec.tv
OpenELEC - The living room PC for everyone
Stars: ✭ 1,595 (+1136.43%)
Mutual labels:  makefile
Pkgsrc
[Please switch to NetBSD/pkgsrc] Automatically updated conversion of the "pkgsrc" module from anoncvs.netbsd.org
Stars: ✭ 123 (-4.65%)
Mutual labels:  makefile
Easymake
A handy makefile for simple C/C++ applications
Stars: ✭ 125 (-3.1%)
Mutual labels:  makefile
Webnn
🧠 Web Neural Network API
Stars: ✭ 126 (-2.33%)
Mutual labels:  makefile
Genericmakefile
A generic makefile for use with small/medium C and C++ projects.
Stars: ✭ 1,587 (+1130.23%)
Mutual labels:  makefile
Buildroot
Buildroot Environment for multiple TV WebKit ports using EGL and GLESv2, supporting WebGL, Canvas, HTML5 Video as a texture and more. One of the target devices supported is the Raspberry PI 2.
Stars: ✭ 127 (-1.55%)
Mutual labels:  makefile
Onl
Please visit the Open Compute Project repository
Stars: ✭ 125 (-3.1%)
Mutual labels:  makefile
Mls Protocol
MLS protocol
Stars: ✭ 127 (-1.55%)
Mutual labels:  makefile
Quickref.dev
Quickref.dev community sources
Stars: ✭ 124 (-3.88%)
Mutual labels:  makefile
Executors
A proposal for a executor programming model for ISO C++
Stars: ✭ 124 (-3.88%)
Mutual labels:  makefile
Hackable Consumer Hardware
List of hackable consumer hardware products
Stars: ✭ 127 (-1.55%)
Mutual labels:  makefile
Mmake
Mmake is a small program which wraps make to provide additional functionality, such as user-friendly help output, remote includes, and eventually more. It otherwise acts as a pass-through to standard make.
Stars: ✭ 1,593 (+1134.88%)
Mutual labels:  makefile
Csvlint
library and command line tool that validates a CSV file
Stars: ✭ 127 (-1.55%)
Mutual labels:  makefile
Chromium Headless Remote
🐳 Dockerized Chromium in headless remote debugging mode
Stars: ✭ 122 (-5.43%)
Mutual labels:  makefile
Base
Minimal BusyBox Docker container
Stars: ✭ 126 (-2.33%)
Mutual labels:  makefile
Killmesoftly
Kill processes The Right Way.
Stars: ✭ 128 (-0.78%)
Mutual labels:  makefile
Embedded Ide
IDE for C embedded development centered on bare-metal ARM systems
Stars: ✭ 127 (-1.55%)
Mutual labels:  makefile
Biscuitos
Common scripts to build BiscuitOS
Stars: ✭ 128 (-0.78%)
Mutual labels:  makefile

NOTE: this project is archived in favor of WASI SDK.

wasmception

Minimal toolset for building wasm files

Export functions

Use linker's --export parameter to specify exports (with clang use -Wl,--export, e.g. -Wl,--export=foo,--export=bar). The use of __attribute__ ((visibility ("default"))) is no longer preferable way to make methods visible -- --export-dynamic needs to be added.

Compile C file

$(WASMCEPTION)/dist/bin/clang --sysroot=$(WASMCEPTION)/sysroot/ hi.c -o hi.wasm -nostartfiles -Wl,--no-entry,--export=foo

Compile C++ file

$(WASMCEPTION)/dist/bin/clang++ --sysroot=$(WASMCEPTION)/sysroot/ hi.cpp -o hi.wasm -nostartfiles -Wl,--no-entry,--export=bar -fno-exceptions

Required main and _start functions

The -nostartfiles will not require you to define the main function, but will be looking for the _start function: use -Wl,--no-entry clang (linker) option to avoid specified entry point. As alternative, you can add void _start() {} (or extern "C" void _start() { } in C++) to make linker happy due to -nostartfiles.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].