.PHONY: build-deps
build-deps:
	@echo "🔨 Installing Build Dependencies"
	brew install caarlos0/tap/svu
	cargo install --locked cargo-set-version

.PHONY: bump
bump:
	@echo "🚀 Bumping Version"
	cargo-set-version set-version $(shell svu patch --strip-prefix)
	git add Cargo.toml
	git commit -m "chore: bump version to $(shell svu patch --strip-prefix)"
	git push
	git tag $(shell svu patch)
	git push --tags

.PHONY: release-dry
release-dry:
	goreleaser build --clean --timeout 60m --snapshot --skip=validate

.PHONY: release
release: bump
	goreleaser --clean --timeout 60m --skip=validate

.PHONY: test
test:
	cargo test 

.PHONY: test-verbose
test-verbose:
	cargo test -- --nocapture

.PHONY: run
run:
	cargo run --release tests/kernel.release_vs_kernel.release.BinDiff

.PHONY: example
example:
	cargo run --example=binexport tests/kernel.release.t6020.BinExport

.PHONY: publish-test
publish-test:
	cargo publish --dry-run --allow-dirty

.PHONY: publish
publish:
	cargo publish --allow-dirty

.PHONY: clean
clean:
	cargo clean
	