From 1a849a6b3479a58f1101abadfe1995f4098f5354 Mon Sep 17 00:00:00 2001 From: Julian T Date: Mon, 2 Mar 2020 18:57:28 +0100 Subject: Added makefile and removed debug printing --- Makefile | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Makefile (limited to 'Makefile') diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..96789b8 --- /dev/null +++ b/Makefile @@ -0,0 +1,38 @@ +CC=gcc + +# Enable debugging +CFLAGS=-ggdb + +# We need math +LDFLAGS=-lm + +# Output and build options +BINARY=raytrace +BUILD_DIR=build + +# Input files +c_files=$(wildcard *.c) +OBJ=$(patsubst %.c, $(BUILD_DIR)/%.o, $(c_files)) + +# Build rules +# $@ is the %.o file and $^ is the %.c file +$(BUILD_DIR)/%.o: %.c + mkdir -p $(dir $@) + $(CC) -c -o $@ $^ $(CFLAGS) + +# $@ becomes left part thus linked +$(BINARY): $(OBJ) + $(CC) -o $@ $^ $(LDFLAGS) + +.PHONY: run show clean + +# This will also generate the image +run: $(BINARY) + ./$(BINARY) | convert - test.png + +show: run + xdg-open test.png + +clean: + rm -f $(OBJ) $(BINARY) + rmdir $(BUILD_DIR) -- cgit v1.2.3