Makefile : now checks if CC compiler is installed and executable
This commit is contained in:
parent
0da832aa8b
commit
6011177dd4
10
Makefile
10
Makefile
@ -21,11 +21,11 @@ all: $(EXEC)
|
|||||||
$(OBJ_DIR):
|
$(OBJ_DIR):
|
||||||
@mkdir -v $@
|
@mkdir -v $@
|
||||||
|
|
||||||
$(OBJ_DIR)/%.$(OBJ_EXT): $(SRC_DIR)/%.cpp $(SRC_DIR)/%.hpp | $(OBJ_DIR)
|
$(OBJ_DIR)/%.$(OBJ_EXT): $(SRC_DIR)/%.cpp $(SRC_DIR)/%.hpp | $(OBJ_DIR) check-cc-works
|
||||||
@echo Compiling $<
|
@echo Compiling $<
|
||||||
@$(CC) $(CFLAGS) -c $< -o $@
|
@$(CC) $(CFLAGS) -c $< -o $@
|
||||||
|
|
||||||
$(EXEC): $(OBJ)
|
$(EXEC): $(OBJ) | check-cc-works
|
||||||
@echo Linking objects files to $@
|
@echo Linking objects files to $@
|
||||||
@$(CC) $(CFLAGS) $^ -o $@
|
@$(CC) $(CFLAGS) $^ -o $@
|
||||||
|
|
||||||
@ -36,7 +36,7 @@ profile: start | check-gprof-works check-gprof2dot-works
|
|||||||
@gprof $(EXEC) gmon.out | gprof2dot | dot -Tpng -o output.png
|
@gprof $(EXEC) gmon.out | gprof2dot | dot -Tpng -o output.png
|
||||||
|
|
||||||
debug: $(EXEC) | check-gdb-works
|
debug: $(EXEC) | check-gdb-works
|
||||||
@gdb -q -tui $(EXEC) -x copies
|
@gdb -q -tui $(EXEC)
|
||||||
|
|
||||||
check: $(EXEC) | check-valgrind-works
|
check: $(EXEC) | check-valgrind-works
|
||||||
@valgrind -q -s --leak-check=full --show-leak-kinds=all $(EXEC)
|
@valgrind -q -s --leak-check=full --show-leak-kinds=all $(EXEC)
|
||||||
@ -53,6 +53,10 @@ mrproper: clean
|
|||||||
.PHONY: check-env
|
.PHONY: check-env
|
||||||
check-env: check-gprof2dot-works check-gprof-works check-gdb-works check-valgrind-works check-r2-works
|
check-env: check-gprof2dot-works check-gprof-works check-gdb-works check-valgrind-works check-r2-works
|
||||||
|
|
||||||
|
.PHONY: check-cc-works
|
||||||
|
check-cc-works:
|
||||||
|
@${CC} --help >/dev/null 2>&1 || (echo 'Please install a valid CC compiler.' && exit 1)
|
||||||
|
|
||||||
.PHONY: check-gprof2dot-works
|
.PHONY: check-gprof2dot-works
|
||||||
check-gprof2dot-works:
|
check-gprof2dot-works:
|
||||||
@gprof2dot --help >/dev/null 2>&1 || (echo 'Please install gprof2dot.' && exit 1)
|
@gprof2dot --help >/dev/null 2>&1 || (echo 'Please install gprof2dot.' && exit 1)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user