Add color output.
This commit is contained in:
parent
24dd73e85e
commit
d4791a75ce
37
Makefile
37
Makefile
|
@ -1,6 +1,11 @@
|
||||||
PORT := 1234
|
PORT := 1234
|
||||||
CHECK := diff -q
|
CHECK := diff -q
|
||||||
MKDIR_P := mkdir -p
|
MKDIR_P := mkdir -p
|
||||||
|
ECHO := echo -e
|
||||||
|
NC := \033[0m
|
||||||
|
RED := \033[0;31m
|
||||||
|
GREEN := \033[0;32m
|
||||||
|
YELLOW := \033[1;33m
|
||||||
|
|
||||||
CC := lcc
|
CC := lcc
|
||||||
CFLAGS := -nostdlib
|
CFLAGS := -nostdlib
|
||||||
|
@ -25,30 +30,46 @@ executables := $(addprefix build/,$(tests))
|
||||||
logs := $(addprefix build/,$(addsuffix .log,$(tests)))
|
logs := $(addprefix build/,$(addsuffix .log,$(tests)))
|
||||||
checks := $(addprefix check-,$(tests))
|
checks := $(addprefix check-,$(tests))
|
||||||
|
|
||||||
.PHONY: all logs test mkdirs clean clean-logs $(checks)
|
.PHONY: all build logs test gen-test mkdirs clean clean-logs $(checks)
|
||||||
|
|
||||||
all: logs
|
all: logs
|
||||||
|
|
||||||
|
build: mkdirs $(executables)
|
||||||
|
|
||||||
logs: mkdirs $(logs)
|
logs: mkdirs $(logs)
|
||||||
|
|
||||||
|
gen-test: clean-logs logs test
|
||||||
|
|
||||||
test: mkdirs $(checks)
|
test: mkdirs $(checks)
|
||||||
|
|
||||||
mkdirs:
|
mkdirs:
|
||||||
$(MKDIR_P) build
|
@$(MKDIR_P) build
|
||||||
|
|
||||||
clean: clean-logs
|
clean: clean-logs
|
||||||
$(RM) $(executables)
|
@$(RM) $(executables)
|
||||||
|
|
||||||
clean-logs:
|
clean-logs:
|
||||||
$(RM) $(logs)
|
@$(RM) $(logs)
|
||||||
|
|
||||||
$(executables): build/%: src/%.s
|
$(executables): build/%: src/%.s
|
||||||
$(CC) $(CFLAGS) -o $@ $<
|
@$(ECHO) " $(GREEN)build $(NC)$*"
|
||||||
|
@$(CC) $(CFLAGS) -o $@ $<
|
||||||
|
|
||||||
$(logs): build/%.log: build/% src/%.gdb
|
$(logs): build/%.log: build/% src/%.gdb
|
||||||
$(GDB_SERVER) $(GDB_SERVER_ARGS) $< &
|
@$(ECHO) " $(GREEN)gen $(NC)$*.log"
|
||||||
$(GDB) $(GDB_ARGS) -ex 'file $<' $(GDB_BPS) \
|
@$(GDB_SERVER) $(GDB_SERVER_ARGS) $< &> /dev/null &
|
||||||
|
@$(GDB) $(GDB_ARGS) -ex 'file $<' $(GDB_BPS) \
|
||||||
-ex 'target remote :$(PORT)' -x src/$*.gdb > $@
|
-ex 'target remote :$(PORT)' -x src/$*.gdb > $@
|
||||||
|
|
||||||
|
.ONESHELL:
|
||||||
$(checks): check-%: build/%.log src/%.log
|
$(checks): check-%: build/%.log src/%.log
|
||||||
$(CHECK) $^
|
@$(ECHO) -n " $(GREEN)check $(NC)$*"
|
||||||
|
$(CHECK) $^ &> /dev/null
|
||||||
|
if [ $$? -eq 0 ]
|
||||||
|
then
|
||||||
|
$(ECHO) " $(GREEN)OK!$(NC)"
|
||||||
|
true
|
||||||
|
else
|
||||||
|
$(ECHO) " $(RED)FAIL!$(NC)"
|
||||||
|
false
|
||||||
|
fi
|
||||||
|
|
Loading…
Reference in New Issue