Minor changes
This commit is contained in:
		
							
								
								
									
										47
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										47
									
								
								Makefile
									
									
									
									
									
								
							@@ -1,10 +1,10 @@
 | 
			
		||||
src_dir := ./src
 | 
			
		||||
docs_dir := ./docs
 | 
			
		||||
tests_dir := ./tests
 | 
			
		||||
build_dir := ./build
 | 
			
		||||
docs_build_dir := ./build/docs
 | 
			
		||||
SRC_DIR := ./src
 | 
			
		||||
DOCS_DIR := ./docs
 | 
			
		||||
TESTS_DIR := ./tests
 | 
			
		||||
BUILD_DIR := ./build
 | 
			
		||||
DOCS_BUILD_DIR := ./build/docs
 | 
			
		||||
 | 
			
		||||
.PHONY: help tests docs
 | 
			
		||||
.PHONY: help tests docs man install uninstall
 | 
			
		||||
 | 
			
		||||
all: man
 | 
			
		||||
 | 
			
		||||
@@ -14,35 +14,42 @@ help:
 | 
			
		||||
	@echo Available targets:
 | 
			
		||||
	@echo
 | 
			
		||||
	@echo 'help	print this help message'
 | 
			
		||||
	@echo 'test	run tests from $(tests_dir)'
 | 
			
		||||
	@echo 'tests	run tests from $(TESTS_DIR)'
 | 
			
		||||
	@echo 'lint	run shellcheck'
 | 
			
		||||
	@echo 'man	build manual pages from $(docs_dir)'
 | 
			
		||||
	@echo 'man	build manual pages from $(DOCS_DIR)'
 | 
			
		||||
	@echo
 | 
			
		||||
	@echo See README.md for more info.
 | 
			
		||||
 | 
			
		||||
test:
 | 
			
		||||
tests:
 | 
			
		||||
	# See bats(1), https://bats-core.readthedocs.io/en/latest/index.html
 | 
			
		||||
	for test in $(tests_dir)/*.bats; do \
 | 
			
		||||
	for test in $(TESTS_DIR)/*.bats; do \
 | 
			
		||||
		bats --verbose-run --print-output-on-failure "$$test"; \
 | 
			
		||||
	done
 | 
			
		||||
 | 
			
		||||
lint:
 | 
			
		||||
	shellcheck $(src_dir)/boring-backup
 | 
			
		||||
	shellcheck $(src_dir)/lib/*.sh
 | 
			
		||||
	shellcheck $(src_dir)/lib/handlers/sources/*.sh
 | 
			
		||||
	shellcheck $(src_dir)/lib/handlers/targets/*.sh
 | 
			
		||||
	shellcheck $(SRC_DIR)/boring-backup
 | 
			
		||||
	shellcheck $(SRC_DIR)/lib/*.sh
 | 
			
		||||
	shellcheck $(SRC_DIR)/lib/handlers/sources/*.sh
 | 
			
		||||
	shellcheck $(SRC_DIR)/lib/handlers/targets/*.sh
 | 
			
		||||
 | 
			
		||||
man: build_dir
 | 
			
		||||
	# See rst2man(1), rst2html(1),
 | 
			
		||||
	# https://docutils.sourceforge.io/docs/index.html
 | 
			
		||||
	rst2man $(docs_dir)/boring-backup.ru.1.rst \
 | 
			
		||||
		> $(docs_build_dir)/boring-backup.ru.1
 | 
			
		||||
	rst2man $(DOCS_DIR)/boring-backup.ru.1.rst \
 | 
			
		||||
		> $(DOCS_BUILD_DIR)/boring-backup.ru.1
 | 
			
		||||
	sed -e 's/.SH NAME/.SH ИМЯ/' \
 | 
			
		||||
		-e 's/.SH AUTHOR/.SH АВТОРЫ/' \
 | 
			
		||||
		-e 's/.SH COPYRIGHT/.SH АВТОРСКИЕ ПРАВА/' \
 | 
			
		||||
		-i $(docs_build_dir)/boring-backup.ru.1
 | 
			
		||||
	gzip -9 $(docs_build_dir)/boring-backup.ru.1
 | 
			
		||||
		-i $(DOCS_BUILD_DIR)/boring-backup.ru.1
 | 
			
		||||
	gzip -9 $(DOCS_BUILD_DIR)/boring-backup.ru.1
 | 
			
		||||
 | 
			
		||||
build_dir:
 | 
			
		||||
	mkdir -p $(build_dir)
 | 
			
		||||
	mkdir -p $(docs_build_dir)
 | 
			
		||||
	mkdir -p $(BUILD_DIR)
 | 
			
		||||
	mkdir -p $(DOCS_BUILD_DIR)
 | 
			
		||||
 | 
			
		||||
install:
 | 
			
		||||
	# install
 | 
			
		||||
 | 
			
		||||
uninstall:
 | 
			
		||||
	# uninstall
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user