CARGO ?= cargo
CARGO_FLAGS ?=
TEST_FLAGS ?=
SHIM_DIR := feral-ipopt-shim
.PHONY: all build release test bench lint fmt fmt-check clippy check doc \
ipopt hs071 shim-clean clean distclean help
all: build
build:
$(CARGO) build $(CARGO_FLAGS)
release:
$(CARGO) build --release $(CARGO_FLAGS)
test:
$(CARGO) test $(CARGO_FLAGS) -- $(TEST_FLAGS)
bench:
$(CARGO) run --bin bench --release $(CARGO_FLAGS)
check:
$(CARGO) check --all-targets $(CARGO_FLAGS)
fmt:
$(CARGO) fmt --all
fmt-check:
$(CARGO) fmt --all -- --check
clippy:
$(CARGO) clippy --all-targets $(CARGO_FLAGS) -- -D warnings
lint: fmt-check clippy
doc:
$(CARGO) doc --no-deps --open $(CARGO_FLAGS)
ipopt:
$(MAKE) -C $(SHIM_DIR) all
hs071:
$(MAKE) -C $(SHIM_DIR) hs071-feral
shim-clean:
$(MAKE) -C $(SHIM_DIR) clean
clean:
$(CARGO) clean
distclean: clean shim-clean
help:
@sed -n 's/^# \{0,1\}//p' Makefile | sed -n '1,30p'