CC = gcc
INCLUDE = -Iinclude
CFLAGS = -O3 -fomit-frame-pointer -funroll-loops -ffast-math -Wall
LIBS = -lfmod-3.5 -lpng -lldpng -lfmod -lalpkttf -lz `allegro-config --libs`

tetris: obj/config.o obj/consola.o obj/editor.o obj/gfx.o obj/gui.o obj/juego.o obj/jugador.o obj/main.o obj/menu.o obj/sis_part.o obj/tetris.o
	$(CC) -s -o tetris obj/config.o obj/consola.o obj/editor.o obj/gfx.o obj/gui.o obj/juego.o obj/jugador.o obj/main.o obj/menu.o obj/sis_part.o obj/tetris.o $(LIBS)

obj/config.o: src/config.cpp
	$(CC) $(CFLAGS) $(INCLUDE) -o obj/config.o -c src/config.cpp

obj/consola.o: src/consola.cpp
	$(CC) $(CFLAGS) $(INCLUDE) -o obj/consola.o -c src/consola.cpp

obj/editor.o: src/editor.cpp
	$(CC) $(CFLAGS) $(INCLUDE) -o obj/editor.o -c src/editor.cpp

obj/gfx.o: src/gfx.cpp
	$(CC) $(CFLAGS) $(INCLUDE) -o obj/gfx.o -c src/gfx.cpp

obj/gui.o: src/gui.cpp
	$(CC) $(CFLAGS) $(INCLUDE) -o obj/gui.o -c src/gui.cpp

obj/juego.o: src/juego.cpp
	$(CC) $(CFLAGS) $(INCLUDE) -o obj/juego.o -c src/juego.cpp

obj/jugador.o: src/jugador.cpp
	$(CC) $(CFLAGS) $(INCLUDE) -o obj/jugador.o -c src/jugador.cpp

obj/main.o: src/main.cpp
	$(CC) $(CFLAGS) $(INCLUDE) -o obj/main.o -c src/main.cpp

obj/menu.o: src/menu.cpp
	$(CC) $(CFLAGS) $(INCLUDE) -o obj/menu.o -c src/menu.cpp

obj/sis_part.o: src/sis_part.cpp
	$(CC) $(CFLAGS) $(INCLUDE) -o obj/sis_part.o -c src/sis_part.cpp

obj/tetris.o: src/tetris.cpp
	$(CC) $(CFLAGS) $(INCLUDE) -o obj/tetris.o -c src/tetris.cpp

clean:
	rm obj/*.o
