# Project: RenegadeEx

NAME  = rex.exe

CC = i586-mingw32msvc-gcc
WINDRES = i586-mingw32msvc-windres
RES  = rex.res
OBJ  = rex.o tab_hook.o tab_results.o tab_search.o tab_settings.o lib_api.o lib_fileio.o lib_listview.o lib_misc.o lib_rex.o lib_search.o lib_memory.o $(RES)
LDFLAGS = -s -mwindows -lwsock32 -lcomctl32 -lpsapi
CFLAGS = -O2 -s

.PHONY: all

all: $(NAME)


clean:
	rm -f $(OBJ)

$(NAME): $(OBJ)
	$(CC) $(OBJ) -o $(NAME) $(LDFLAGS)

rex.res: rex.rc rex_gui.h
	$(WINDRES) -i rex.rc -J rc -o rex.res -O coff

rex.o: rex.c rex.h rex_gui.h _types.h
	$(CC) -c rex.c -o rex.o $(CFLAGS)

#Tabs

tab_hook.o: tab_hook.c rex.h rex_gui.h _types.h
	$(CC) -c tab_hook.c -o tab_hook.o $(CFLAGS)

tab_results.o: tab_results.c rex.h rex_gui.h _types.h
	$(CC) -c tab_results.c -o tab_results.o $(CFLAGS)

tab_search.o: tab_search.c rex.h rex_gui.h _types.h
	$(CC) -c tab_search.c -o tab_search.o $(CFLAGS)

tab_settings.o: tab_settings.c rex.h rex_gui.h _types.h
	$(CC) -c tab_settings.c -o tab_settings.o $(CFLAGS)

#Libraries

lib_api.o: lib_api.c rex.h _types.h
	$(CC) -c lib_api.c -o lib_api.o $(CFLAGS)

lib_fileio.o: lib_fileio.c rex.h _types.h
	$(CC) -c lib_fileio.c -o lib_fileio.o $(CFLAGS)

lib_listview.o: lib_listview.c rex.h _types.h
	$(CC) -c lib_listview.c -o lib_listview.o $(CFLAGS)

lib_memory.o: lib_memory.c rex.h _types.h
	$(CC) -c lib_memory.c -o lib_memory.o $(CFLAGS)

lib_misc.o: lib_misc.c lib_misc.h rex.h _types.h
	$(CC) -c lib_misc.c -o lib_misc.o $(CFLAGS)

lib_rex.o: lib_rex.c rex.h _types.h
	$(CC) -c lib_rex.c -o lib_rex.o $(CFLAGS)

lib_search.o: lib_search.c lib_search.h rex.h _types.h
	$(CC) -c lib_search.c -o lib_search.o $(CFLAGS)
