build-rug:
	@cargo build -r --no-default-features --features cli,rug

build-dashu:
	@cargo build -r --no-default-features --features cli,dashu

# Could only compile with dashu as backend for wasm.
build-wasm:
	@wasm-pack build \
		--scope breezewhite_yo \
		--target web \
		--no-default-features \
		--features wasm,dashu
	@cp README_WASM.md pkg/README.md
	@cp -r pkg gh_page/

build-py:
	@maturin build --no-default-features --features py,rug

install:
	@cargo install --path .

install-py:
	@maturin develop --no-default-features --features py,rug

publish-all: publish-rug publish-dashu publish-wasm publish-py

publish-rug:
	@cargo publish --no-default-features --features cli,rug

publish-dashu:
	@cargo publish --no-default-features --features cli,dashu

publish-wasm:
	@wasm-pack publish --access=public

publish-py:
	@maturin publish --no-default-features --features py,rug

check:
	@cargo check
	@cargo check --no-default-features --features cli,dashu
	@cargo check --no-default-features --features cli,wasm,dashu

test:
	@cargo test
	@cargo test --no-default-features --features cli,dashu

test-py:
	@python -c "import apcn; print(apcn.pi(100, False))"
