summaryrefslogtreecommitdiffstats
path: root/Makefile
blob: 25a36a1737d1424bce85232483ded849776f9cd9 (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
PROG = collection
OBJS = main.o collection.o linkedlist.o variablearray.o
CC = g++
DBGFLAGS = -g -O0
ifdef DEBUG
    CFLAGS = $(DBGFLAGS) -D DEBUG -std=c++98 -pedantic-errors -Wall
else
    CFLAGS = -O2 -std=c++98 -Wall
endif
LDFLAGS = -lm

$(PROG): $(OBJS)
	$(CC) $(LDFLAGS) $(OBJS) -o $@

main.o: %.o: %.cpp collection.h linkedlist.h
	$(CC) -c $(CFLAGS) $<

collection.o: %.o: %.cpp %.h
	$(CC) -c $(CFLAGS) $<

linkedlist.o: %.o: %.cpp %.h collection.h
	$(CC) -c $(CFLAGS) $<

variablearray.o: %.o: %.cpp %.h collection.h
	$(CC) -c $(CFLAGS) $<

.PHONY: clean

clean:
	@rm -f ./$(OBJS) ./$(PROG)