pyo3/Makefile

34 lines
817 B
Makefile

.PHONY: test test_py3 publish clippy lint fmt
# Constants used in clippy target
CLIPPY_LINTS_TO_DENY := warnings
CLIPPY_LINTS_TO_ALLOW := clippy::new_ret_no_self
test:
cargo test
${MAKE} clippy
tox
for example in examples/*; do tox -e py -c $$example/tox.ini; done
test_py3:
tox -e py3
for example in examples/*; do tox -e py3 -c $$example/tox.ini; done
fmt:
cargo fmt --all -- --check
black . --check
clippy:
@touch src/lib.rs # Touching file to ensure that cargo clippy will re-check the project
cargo clippy --all-features --all-targets -- \
$(addprefix -D ,${CLIPPY_LINTS_TO_DENY}) \
$(addprefix -A ,${CLIPPY_LINTS_TO_ALLOW})
lint: fmt clippy
@true
publish: test
cargo publish --manifest-path pyo3-derive-backend/Cargo.toml
cargo publish --manifest-path pyo3cls/Cargo.toml
cargo publish