.PHONY: build-nvidia build-ascend vendor-nvidia vendor-ascend clean stubgen format

build-nvidia:
	@echo "🛠️ Building Python extension (nvidia) ..."
	DEEPINFER_ACCELERATOR=nvidia bash ./scripts/build.sh build
	@echo "✅ Python extension is successfully built"

build-ascend:
	@echo "🛠️ Building Python extension (ascend) ..."
	DEEPINFER_ACCELERATOR=ascend bash ./scripts/build.sh build
	@echo "✅ Python extension is successfully built"

vendor-nvidia:
	@echo "🔧 Building vendored operators in vendor/ (nvidia) ..."
	DEEPINFER_ACCELERATOR=nvidia bash ./scripts/build_vendor.sh

vendor-ascend:
	@echo "🔧 Building vendored operators in vendor/ (ascend) ..."
	DEEPINFER_ACCELERATOR=ascend bash ./scripts/build_vendor.sh

clean:
	@echo "🗑️ Cleaning build artifacts ..."
	bash ./scripts/build.sh clean
	rm -rf deepinfer/*.so
	@echo "✅ Artifacts cleaned"

stubgen:
	bash ./scripts/gen_stub.sh

format:
	ruff check --fix && ruff format
	bash scripts/format_csrc.sh
