An experiment using a Rust framework to build a Media Collection manager.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Makefile 1.3KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. # The default make command
  2. DEFAULT = help
  3. # Use 'VERBOSE=1' to echo all commands, for example 'make help VERBOSE=1'.
  4. ifdef VERBOSE
  5. Q :=
  6. else
  7. Q := @
  8. endif
  9. GRAPH_SRC=$(wildcard design/*.gv)
  10. GRAPH_SVG=$(patsubst %.gv,%.svg,$(GRAPH_SRC))
  11. GRAPH_IMG=$(patsubst %.gv,%.png,$(GRAPH_SRC))
  12. all: $(DEFAULT)
  13. help:
  14. $(Q)echo "make run - Runs executable"
  15. $(Q)echo "make build - Builds main executable"
  16. $(Q)echo "make lib - Builds library"
  17. $(Q)echo "make test - Runs all tests"
  18. $(Q)echo "make bench - Benchmarks library internally and externally"
  19. $(Q)echo "make bench-internal - Benchmarks library internally"
  20. $(Q)echo "make bench-external - Benchmarks library externally"
  21. $(Q)echo "make doc - Builds documentation for library"
  22. $(Q)echo "make git-ignore - Setup files to be ignored by Git"
  23. $(Q)echo "make examples - Builds examples"
  24. $(Q)echo "make clean - Deletes binaries and documentation.
  25. .PHONY: build run test bench doc examples graphs clean
  26. build:
  27. cargo build
  28. run:
  29. cargo run
  30. clean:
  31. cargo clean
  32. doc:
  33. cargo doc
  34. test:
  35. cargo test
  36. graphs-png: $(GRAPH_IMG)
  37. design/%.png: design/%.gv
  38. dot -Tpng $^ -o $@
  39. graphs: $(GRAPH_SVG) graphs-png
  40. design/%.svg: design/%.gv
  41. dot -Tsvg $^ -o $@