Compare commits

...

2 Commits

2 changed files with 9 additions and 5 deletions

View File

@ -1,4 +1,4 @@
FROM alpine:3.19.0
FROM alpine:3.19.1
RUN apk add make g++
@ -17,6 +17,6 @@ RUN chown -R saundersp /home/saundersp/sorting_algorithms
USER saundersp
RUN make -j $(nproc)
RUN make -j "$(nproc)"
ENTRYPOINT ["bin/data"]

View File

@ -21,11 +21,11 @@ all: $(EXEC)
$(OBJ_DIR):
@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 $<
@$(CC) $(CFLAGS) -c $< -o $@
$(EXEC): $(OBJ)
$(EXEC): $(OBJ) | check-cc-works
@echo Linking objects files to $@
@$(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
debug: $(EXEC) | check-gdb-works
@gdb -q -tui $(EXEC) -x copies
@gdb -q -tui $(EXEC)
check: $(EXEC) | check-valgrind-works
@valgrind -q -s --leak-check=full --show-leak-kinds=all $(EXEC)
@ -53,6 +53,10 @@ mrproper: clean
.PHONY: check-env
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
check-gprof2dot-works:
@gprof2dot --help >/dev/null 2>&1 || (echo 'Please install gprof2dot.' && exit 1)