c-uebungen/Assignment_007/solution/Makefile

38 lines
827 B
Makefile

# Makefile for the project
OUTPUT_DIR = output
.PHONY: all
all: $(OUTPUT_DIR) $(OUTPUT_DIR)/encrypt $(OUTPUT_DIR)/decrypt $(OUTPUT_DIR)/test runtest
.PHONY: clean
clean:
rm $(OUTPUT_DIR)/*.o $(OUTPUT_DIR)/encrypt $(OUTPUT_DIR)/test $(OUTPUT_DIR)/decrypt
rmdir $(OUTPUT_DIR)
$(OUTPUT_DIR):
mkdir $(OUTPUT_DIR)
$(OUTPUT_DIR)/crypto.o: crypto.c crypto.h
cc -o $@ -c $<
$(OUTPUT_DIR)/main.o: main.c crypto.h
cc -o $@ -c $<
$(OUTPUT_DIR)/test.o: test.c crypto.h
cc -o $@ -c $<
$(OUTPUT_DIR)/encrypt: $(OUTPUT_DIR)/main.o $(OUTPUT_DIR)/crypto.o
cc -o $@ $^
$(OUTPUT_DIR)/decrypt: $(OUTPUT_DIR)/main.o $(OUTPUT_DIR)/crypto.o
cc -o $@ $^
$(OUTPUT_DIR)/test: $(OUTPUT_DIR)/test.o $(OUTPUT_DIR)/crypto.o
cc -o $@ $^
.PHONY: runtest
runtest: $(OUTPUT_DIR)/test
@echo "Running tests"
@echo "---------------------"
$<