TARGET=doorchallenge

CC:=gcc
LD:=$(CC)

LDLIBS=
LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro
CFLAGS=-Wall \
	-Wextra \
	-Winit-self \
	-Wuninitialized \
	-Wfloat-equal \
	-Wint-to-pointer-cast \
	-pedantic \
	-O2 \
	-fstack-protector-strong

all: $(TARGET)

$(TARGET): challenge/challenge.o
	$(LD) $(LDFLAGS) -o $@ $^ $(LDLIBS)

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

clean:
	$(RM) -rf challenge/*.o $(TARGET)