This project uses GNU Make to automate tasks.
- Use conventional directory variables with reasonable defaults.
- Use variables for the names of external programs like
fswatch, with reasonable defaults. - Use standard targets. Create separate Makefiles for sub-directories that have their own work.
- Add self-documenting
help, for relevant targets.
Manuals are written in Markdown. This project uses Pandoc to generate groff manual pages and
Markdown manuals in man/groff/ and man/markdown/, respectively. The Markdown manuals are
included in the repository, for ease of reading on GitHub.
There are a number of tasks to build the Golang code and to assist with development. Try make help to see what is available.
There isn't anything to build, since the programs are all scripts. However, there are conventional
targets to install symlinks to the user's PATH.
Makefiles include targets to ease the process of installing dependencies, via HomeBrew.
Makefiles include targets to ease the process of running various checks on project sources with
pre-commit.
Use the help target to list relevant targets in each Makefile:
# List targets in root Makefile
make help
# List targets for specific sources
make -C man help