Add color output.
This commit is contained in:
parent
24dd73e85e
commit
d4791a75ce
37
Makefile
37
Makefile
|
@ -1,6 +1,11 @@
|
|||
PORT := 1234
|
||||
CHECK := diff -q
|
||||
MKDIR_P := mkdir -p
|
||||
ECHO := echo -e
|
||||
NC := \033[0m
|
||||
RED := \033[0;31m
|
||||
GREEN := \033[0;32m
|
||||
YELLOW := \033[1;33m
|
||||
|
||||
CC := lcc
|
||||
CFLAGS := -nostdlib
|
||||
|
@ -25,30 +30,46 @@ executables := $(addprefix build/,$(tests))
|
|||
logs := $(addprefix build/,$(addsuffix .log,$(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
|
||||
|
||||
build: mkdirs $(executables)
|
||||
|
||||
logs: mkdirs $(logs)
|
||||
|
||||
gen-test: clean-logs logs test
|
||||
|
||||
test: mkdirs $(checks)
|
||||
|
||||
mkdirs:
|
||||
$(MKDIR_P) build
|
||||
@$(MKDIR_P) build
|
||||
|
||||
clean: clean-logs
|
||||
$(RM) $(executables)
|
||||
@$(RM) $(executables)
|
||||
|
||||
clean-logs:
|
||||
$(RM) $(logs)
|
||||
@$(RM) $(logs)
|
||||
|
||||
$(executables): build/%: src/%.s
|
||||
$(CC) $(CFLAGS) -o $@ $<
|
||||
@$(ECHO) " $(GREEN)build $(NC)$*"
|
||||
@$(CC) $(CFLAGS) -o $@ $<
|
||||
|
||||
$(logs): build/%.log: build/% src/%.gdb
|
||||
$(GDB_SERVER) $(GDB_SERVER_ARGS) $< &
|
||||
$(GDB) $(GDB_ARGS) -ex 'file $<' $(GDB_BPS) \
|
||||
@$(ECHO) " $(GREEN)gen $(NC)$*.log"
|
||||
@$(GDB_SERVER) $(GDB_SERVER_ARGS) $< &> /dev/null &
|
||||
@$(GDB) $(GDB_ARGS) -ex 'file $<' $(GDB_BPS) \
|
||||
-ex 'target remote :$(PORT)' -x src/$*.gdb > $@
|
||||
|
||||
.ONESHELL:
|
||||
$(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