CC = gcc
CFLAGS = -Wall -Wextra -O2 -Iinclude
LDFLAGS = -lm

SRC = src/tea_cipher.c src/static_cipher.c src/map_cipher.c src/rc4_cipher.c \
      src/key_derivation.c src/qmc_decryptor.c
OBJ = $(SRC:src/%.c=build/%.o)

all: build/qmc_test

build/qmc_test: $(OBJ) test/test_qmc.c
	@mkdir -p build
	$(CC) $(CFLAGS) -o $@ test/test_qmc.c $(OBJ) $(LDFLAGS)

build/%.o: src/%.c
	@mkdir -p build
	$(CC) $(CFLAGS) -c -o $@ $<

clean:
	rm -rf build

.PHONY: all clean
