Files
q-tools/py-packages/Makefile
2024-07-03 20:48:56 +03:00

41 lines
1.4 KiB
Makefile

.PHONY: help
help: ## *:・゚✧*:・゚✧ This help *:・゚✧*:・゚✧
@printf "\033[36;1m %14s \033[0;32;1m %s\033[0m\n" Target Description
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | \
awk ' \
BEGIN {FS = ":.*?## "}; \
{ if ( $$1 != "-") { \
printf "\033[31;1;40m[ \033[36;1;40m%14s \033[31;1;40m]\033[0;32;1m %s\033[0m\n", $$1, $$2 \
} else { \
printf " \033[0;33;1m=^= %-25s =^=\033[0m\n", $$2 \
} \
} \
'
clean: ## Clean build and .egg folder in py modules
find . -depth -type d -name __pycache__ -exec rm -vr \{\} \;
find . -depth -type d -name build -exec rm -vr \{\} \;
find . -depth -type d -name dist -exec rm -vr \{\} \;
find . -depth -type d -name '*.egg-info' -exec rm -vr \{\} \;
pipx: ## Install all packages with pipx
for module in *; do if [ -f $$module/setup.py ]; then pipx install $$module; fi; done
format: ## Reformat packages with black
for module in *; do if [ -f $$module/setup.py ]; then black $$module/; fi; done
tar-SimpleWebPage: clean ## Create package for SimpleWebPage
tar czf SimpleWebPage.tgz SimpleWebPage/
tar-TSVFilter: clean ## Create package for TSVFilter
tar czf TSVFilter.tgz TSVFilter/
tar-markslider: clean ## Create package for markslider
tar czf markslider.tgz markslider/
hatchling-build: ## Build packages with hatchling
for module in *; do if [ -f $$module/pyproject.toml ]; then cd $$module; hatchling build; cd ..; fi; done