summaryrefslogtreecommitdiff
path: root/algo1w3/makefile
blob: c414a313649844e1b15bb49fd5c434c80c043a86 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
CPP = g++
LD = g++
CC = gcc
RM = rm -f
TARGET = main
OUTPUT_ZIP = Huiswerk_2180996.zip

LFLAGS += -lstdc++

SRCS += $(wildcard *.cpp)
SRCS += $(wildcard *.c)
OBJS := $(SRCS)
OBJS := $(patsubst %.cpp,%.o, $(OBJS))
OBJS := $(patsubst %.c,%.o, $(OBJS))

.PHONY: clean compile_commands zip

all: $(TARGET)

%.o: %.c
	$(CC) -c $(CFLAGS) $< -o $@

%.o: %.cpp
	$(CPP) -c $(CFLAGS) $< -o $@

$(TARGET): $(OBJS)
	$(LD) $^ $(LFLAGS) -o $@

clean:
	$(RM) $(TARGET) $(OBJS) $(OUTPUT_ZIP)

compile_commands: clean
	compiledb make -Bn

zip: all
	zip -q $(OUTPUT_ZIP) makefile $(wildcard *.cpp) $(wildcard *.h) $(wildcard *.hpp) $(wildcard *.c) $(wildcard *.svg)