CC ?= cc

.PHONY: header check-header check-abi check-c-header check-c-link check-c-lmdb build-wasm check-wasm-exports check

header:
	./header.sh

check-header:
	./header.sh --check

check-abi:
	./header.sh --check-abi

check-c-header:
	$(CC) -std=c11 -Wall -Wextra -Werror -fsyntax-only -I. tests/header_smoke.c

check-c-link:
	CC="$(CC)" ./tests/link_smoke.sh

check-c-lmdb:
	CC="$(CC)" sh ./tests/lmdb_work.sh

build-wasm:
	cargo build -p lace-ffi --release --target wasm32-unknown-unknown --features compiler

check-wasm-exports: build-wasm
	node tests/check_wasm_exports.mjs

check: check-header check-abi check-c-header check-c-link check-wasm-exports
