monolisa-nerdfont-patch/Makefile

58 lines
1.4 KiB
Makefile
Raw Normal View History

2022-08-12 13:37:15 -05:00
ARGS ?= -c
OK_TYPES := otf ttf woff woff2
NF_SRC := $(shell find src -type f)
ML_TYPES := $(shell find MonoLisa -mindepth 1 -type d -printf "%f ")
UNKNOWN := $(filter-out $(OK_TYPES),$(ML_TYPES))
$(if $(UNKNOWN),$(error unknown font type in ./MonoLisa: $(UNKNOWN)))
2022-09-05 18:37:47 -05:00
msg = $(call tprint,{a.bold}==>{a.end} {a.b_magenta}$(1){a.end} {a.bold}<=={a.end})
## patch | add nerd fonts to MonoLisa
2022-08-12 13:37:15 -05:00
.PHONY: patch
patch: $(addprefix patch-,$(ML_TYPES))
patch-%: ./bin/font-patcher
2022-09-05 18:37:47 -05:00
$(call msg, Patching MonoLisa $* Files)
2022-08-12 13:37:15 -05:00
@./bin/patch-monolisa $* $(ARGS)
2022-09-05 18:37:47 -05:00
## update-fonts | move fonts and update fc-cache
2022-08-12 13:37:15 -05:00
.PHONY: update-fonts
update-fonts:
2022-09-05 18:37:47 -05:00
$(call msg,Adding Fonts To System)
2022-08-12 13:37:15 -05:00
@./bin/update-fonts
@fc-cache -f -v
2022-09-05 18:37:47 -05:00
## check | check fc-list for MonoLisa
2022-08-12 13:37:15 -05:00
.PHONY: check
check:
2022-09-05 18:37:47 -05:00
$(call msg, Checking System for Fonts)
2022-08-12 13:37:15 -05:00
@fc-list | grep "MonoLisa"
2022-09-05 18:37:47 -05:00
## update-src | update nerd fonts source
2022-08-12 13:37:15 -05:00
.PHONY: update-src
update-src:
2022-09-05 18:37:47 -05:00
$(call msg,Updating Source Files)
2022-08-12 13:37:15 -05:00
@./bin/update-src
2022-09-05 18:37:47 -05:00
## lint | check shell scripts
2022-08-12 13:37:15 -05:00
.PHONY: lint
lint:
@shfmt -w -s $(shell shfmt -f bin/)
2022-09-05 18:37:47 -05:00
## clean | remove patched fonts
2022-08-12 13:37:15 -05:00
.PHONY: clean
clean:
@rm -r patched/*
2022-09-05 18:37:47 -05:00
define USAGE
{a.b_green}Update MonoLisa with Nerd Fonts! {a.end}
{a.$(HEADER_COLOR)}usage{a.end}:
make <recipe>
endef
-include .task.mk
$(if $(filter help,$(MAKECMDGOALS)),.task.mk: ; curl -fsSL https://raw.githubusercontent.com/daylinmorgan/task.mk/v22.9.5/task.mk -o .task.mk)