1include config.mak 2 3VERSION_FILE = ChangeLog 4 5DIRS = src data filter icons man menu scripts 6 7ifeq ($(ECHO),) 8ECHO := $(shell whereis -b echo | awk '{print $$2}') 9ifeq ($(ECHO),) 10ECHO = echo 11endif 12endif 13 14ifeq ($(USE_I18N),Y) 15DIRS += po 16endif 17 18.PHONY: all 19all: 20 @for d in $(DIRS); do $(ECHO) -e "\x1b[1;33m** processing $$d\x1b[0m"; \ 21 $(MAKE) -C $$d || exit 1; \ 22 done 23 24.PHONY: install 25install: 26 @for d in $(DIRS); do $(ECHO) -e "\x1b[1;32m** installing $$d\x1b[0m"; \ 27 $(MAKE) -C $$d install || exit 1; \ 28 done 29 install -d "$(DOC_DIR)"; \ 30 install -m 644 $(VERSION_FILE) "$(DOC_DIR)" 31 32.PHONY: uninstall 33uninstall: 34 @for d in $(DIRS); do $(ECHO) -e "\x1b[1;32m** uninstalling $$d\x1b[0m"; \ 35 $(MAKE) -C $$d uninstall || exit 1; \ 36 done 37 38.PHONY: clean 39clean: 40 @touch src/.depend 41 @for d in $(DIRS); do $(ECHO) -e "\x1b[1;31m** cleanup $$d\x1b[0m"; \ 42 $(MAKE) -C $$d clean; \ 43 done 44 45.PHONY: distclean 46distclean: 47 @$(MAKE) clean 48 @rm -f config.mak 49 50config.mak: $(VERSION_FILE) configure 51 @$(ECHO) "regenerate $@ ..." 52 ./configure 53 54.PHONY: clang-format 55clang-format: 56 clang-format --version 57 clang-format -i {src,data}/*.[ch] \ 58 src/{gtk-im,im-client,modules}/*.[ch] \ 59 src/qt5-im/*.h \ 60 src/qt5-im/*.cpp \ 61 --verbose 62