###################################
# M.A Software Makefile Generator #
###################################

CPP = arm-linux-c++
CC  = arm-linux-gcc
OBJ=src/escenas/tesc_final.cpp.o src/escenas/tesc_juego.cpp.o src/escenas/tesc_menu_principal.cpp.o src/escenas/tesc_seleccion_idioma.cpp.o src/escenas/tscreeninfo.cpp.o src/main/glaurung.cpp.o src/ma_allegro/loadpng/loadpng.cpp.o src/ma_allegro/loadpng/regpng.cpp.o src/ma_allegro/loadpng/savepng.cpp.o src/ma_allegro/maps/mapas.cpp.o src/ma_allegro/ma_allegro.cpp.o src/ma_allegro/tmabitmap.cpp.o src/ma_allegro/tmafont.cpp.o src/ma_allegro/tmagame.cpp.o src/ma_allegro/tmaimagebank.cpp.o src/ma_allegro/tmamidi.cpp.o src/ma_allegro/tmasound.cpp.o src/ma_allegro/tmasprite.cpp.o src/ma_allegro/utils/tmafilereader.cpp.o src/ma_allegro/utils/tmarandom.cpp.o src/ma_allegro/utils/tmarectangle.cpp.o src/ma_allegro/utils/tmastring.cpp.o src/ma_allegro/utils/tmavector.cpp.o src/sprites/tspriteabrecofre.cpp.o src/sprites/tspritearquero.cpp.o src/sprites/tspritebrujodragon.cpp.o src/sprites/tspriteburladero.cpp.o src/sprites/tspritecaballero.cpp.o src/sprites/tspriteflecha.cpp.o src/sprites/tspriteglaurung.cpp.o src/sprites/tspritelancero.cpp.o src/sprites/tspritemagma.cpp.o src/sprites/tspritemurcielago.cpp.o src/sprites/tspriteredham.cpp.o src/sprites/tspriteseleccion.cpp.o src/sprites/tspritespider.cpp.o src/sprites/tspritetemporizador.cpp.o
LINKOBJ=src/escenas/tesc_final.cpp.o src/escenas/tesc_juego.cpp.o src/escenas/tesc_menu_principal.cpp.o src/escenas/tesc_seleccion_idioma.cpp.o src/escenas/tscreeninfo.cpp.o src/main/glaurung.cpp.o src/ma_allegro/loadpng/loadpng.cpp.o src/ma_allegro/loadpng/regpng.cpp.o src/ma_allegro/loadpng/savepng.cpp.o src/ma_allegro/maps/mapas.cpp.o src/ma_allegro/ma_allegro.cpp.o src/ma_allegro/tmabitmap.cpp.o src/ma_allegro/tmafont.cpp.o src/ma_allegro/tmagame.cpp.o src/ma_allegro/tmaimagebank.cpp.o src/ma_allegro/tmamidi.cpp.o src/ma_allegro/tmasound.cpp.o src/ma_allegro/tmasprite.cpp.o src/ma_allegro/utils/tmafilereader.cpp.o src/ma_allegro/utils/tmarandom.cpp.o src/ma_allegro/utils/tmarectangle.cpp.o src/ma_allegro/utils/tmastring.cpp.o src/ma_allegro/utils/tmavector.cpp.o src/sprites/tspriteabrecofre.cpp.o src/sprites/tspritearquero.cpp.o src/sprites/tspritebrujodragon.cpp.o src/sprites/tspriteburladero.cpp.o src/sprites/tspritecaballero.cpp.o src/sprites/tspriteflecha.cpp.o src/sprites/tspriteglaurung.cpp.o src/sprites/tspritelancero.cpp.o src/sprites/tspritemagma.cpp.o src/sprites/tspritemurcielago.cpp.o src/sprites/tspriteredham.cpp.o src/sprites/tspriteseleccion.cpp.o src/sprites/tspritespider.cpp.o src/sprites/tspritetemporizador.cpp.o
LIBS = -static -L/usr/local/devkitPro/devkitGP2X/lib -lpng -lz -lalleg -lpthread -lm
BIN = glaurung
CXXFLAGS = $(CXXINCS) -g3 -I/usr/local/devkitPro/devkitGP2X/include
CFLAGS = $(INCS) -g3 -I/usr/local/devkitPro/devkitGP2X/include
RM = rm -f

.PHONY: all all-before all-after clean clean-custom

all: all-before glaurung all-after 

clean: clean-custom
	${RM} $(OBJ) $(BIN) 

$(BIN): $(OBJ)
	$(CPP) $(LINKOBJ) -o "glaurung" $(LIBS) 

src/escenas/tesc_final.cpp.o: src/escenas/tesc_final.cpp
	$(CPP) -c src/escenas/tesc_final.cpp -o src/escenas/tesc_final.cpp.o $(CXXFLAGS)

src/escenas/tesc_juego.cpp.o: src/escenas/tesc_juego.cpp
	$(CPP) -c src/escenas/tesc_juego.cpp -o src/escenas/tesc_juego.cpp.o $(CXXFLAGS)

src/escenas/tesc_menu_principal.cpp.o: src/escenas/tesc_menu_principal.cpp
	$(CPP) -c src/escenas/tesc_menu_principal.cpp -o src/escenas/tesc_menu_principal.cpp.o $(CXXFLAGS)

src/escenas/tesc_seleccion_idioma.cpp.o: src/escenas/tesc_seleccion_idioma.cpp
	$(CPP) -c src/escenas/tesc_seleccion_idioma.cpp -o src/escenas/tesc_seleccion_idioma.cpp.o $(CXXFLAGS)

src/escenas/tscreeninfo.cpp.o: src/escenas/tscreeninfo.cpp
	$(CPP) -c src/escenas/tscreeninfo.cpp -o src/escenas/tscreeninfo.cpp.o $(CXXFLAGS)

src/main/glaurung.cpp.o: src/main/glaurung.cpp
	$(CPP) -c src/main/glaurung.cpp -o src/main/glaurung.cpp.o $(CXXFLAGS)

src/ma_allegro/loadpng/loadpng.cpp.o: src/ma_allegro/loadpng/loadpng.cpp
	$(CPP) -c src/ma_allegro/loadpng/loadpng.cpp -o src/ma_allegro/loadpng/loadpng.cpp.o $(CXXFLAGS)

src/ma_allegro/loadpng/regpng.cpp.o: src/ma_allegro/loadpng/regpng.cpp
	$(CPP) -c src/ma_allegro/loadpng/regpng.cpp -o src/ma_allegro/loadpng/regpng.cpp.o $(CXXFLAGS)

src/ma_allegro/loadpng/savepng.cpp.o: src/ma_allegro/loadpng/savepng.cpp
	$(CPP) -c src/ma_allegro/loadpng/savepng.cpp -o src/ma_allegro/loadpng/savepng.cpp.o $(CXXFLAGS)

src/ma_allegro/maps/mapas.cpp.o: src/ma_allegro/maps/mapas.cpp
	$(CPP) -c src/ma_allegro/maps/mapas.cpp -o src/ma_allegro/maps/mapas.cpp.o $(CXXFLAGS)

src/ma_allegro/ma_allegro.cpp.o: src/ma_allegro/ma_allegro.cpp
	$(CPP) -c src/ma_allegro/ma_allegro.cpp -o src/ma_allegro/ma_allegro.cpp.o $(CXXFLAGS)

src/ma_allegro/tmabitmap.cpp.o: src/ma_allegro/tmabitmap.cpp
	$(CPP) -c src/ma_allegro/tmabitmap.cpp -o src/ma_allegro/tmabitmap.cpp.o $(CXXFLAGS)

src/ma_allegro/tmafont.cpp.o: src/ma_allegro/tmafont.cpp
	$(CPP) -c src/ma_allegro/tmafont.cpp -o src/ma_allegro/tmafont.cpp.o $(CXXFLAGS)

src/ma_allegro/tmagame.cpp.o: src/ma_allegro/tmagame.cpp
	$(CPP) -c src/ma_allegro/tmagame.cpp -o src/ma_allegro/tmagame.cpp.o $(CXXFLAGS)

src/ma_allegro/tmaimagebank.cpp.o: src/ma_allegro/tmaimagebank.cpp
	$(CPP) -c src/ma_allegro/tmaimagebank.cpp -o src/ma_allegro/tmaimagebank.cpp.o $(CXXFLAGS)

src/ma_allegro/tmamidi.cpp.o: src/ma_allegro/tmamidi.cpp
	$(CPP) -c src/ma_allegro/tmamidi.cpp -o src/ma_allegro/tmamidi.cpp.o $(CXXFLAGS)

src/ma_allegro/tmaogg.cpp.o: src/ma_allegro/tmaogg.cpp
	$(CPP) -c src/ma_allegro/tmaogg.cpp -o src/ma_allegro/tmaogg.cpp.o $(CXXFLAGS)

src/ma_allegro/tmasound.cpp.o: src/ma_allegro/tmasound.cpp
	$(CPP) -c src/ma_allegro/tmasound.cpp -o src/ma_allegro/tmasound.cpp.o $(CXXFLAGS)

src/ma_allegro/tmasprite.cpp.o: src/ma_allegro/tmasprite.cpp
	$(CPP) -c src/ma_allegro/tmasprite.cpp -o src/ma_allegro/tmasprite.cpp.o $(CXXFLAGS)

src/ma_allegro/utils/tmafilereader.cpp.o: src/ma_allegro/utils/tmafilereader.cpp
	$(CPP) -c src/ma_allegro/utils/tmafilereader.cpp -o src/ma_allegro/utils/tmafilereader.cpp.o $(CXXFLAGS)

src/ma_allegro/utils/tmarandom.cpp.o: src/ma_allegro/utils/tmarandom.cpp
	$(CPP) -c src/ma_allegro/utils/tmarandom.cpp -o src/ma_allegro/utils/tmarandom.cpp.o $(CXXFLAGS)

src/ma_allegro/utils/tmarectangle.cpp.o: src/ma_allegro/utils/tmarectangle.cpp
	$(CPP) -c src/ma_allegro/utils/tmarectangle.cpp -o src/ma_allegro/utils/tmarectangle.cpp.o $(CXXFLAGS)

src/ma_allegro/utils/tmastring.cpp.o: src/ma_allegro/utils/tmastring.cpp
	$(CPP) -c src/ma_allegro/utils/tmastring.cpp -o src/ma_allegro/utils/tmastring.cpp.o $(CXXFLAGS)

src/ma_allegro/utils/tmavector.cpp.o: src/ma_allegro/utils/tmavector.cpp
	$(CPP) -c src/ma_allegro/utils/tmavector.cpp -o src/ma_allegro/utils/tmavector.cpp.o $(CXXFLAGS)

src/sprites/tspriteabrecofre.cpp.o: src/sprites/tspriteabrecofre.cpp
	$(CPP) -c src/sprites/tspriteabrecofre.cpp -o src/sprites/tspriteabrecofre.cpp.o $(CXXFLAGS)

src/sprites/tspritearquero.cpp.o: src/sprites/tspritearquero.cpp
	$(CPP) -c src/sprites/tspritearquero.cpp -o src/sprites/tspritearquero.cpp.o $(CXXFLAGS)

src/sprites/tspritebrujodragon.cpp.o: src/sprites/tspritebrujodragon.cpp
	$(CPP) -c src/sprites/tspritebrujodragon.cpp -o src/sprites/tspritebrujodragon.cpp.o $(CXXFLAGS)

src/sprites/tspriteburladero.cpp.o: src/sprites/tspriteburladero.cpp
	$(CPP) -c src/sprites/tspriteburladero.cpp -o src/sprites/tspriteburladero.cpp.o $(CXXFLAGS)

src/sprites/tspritecaballero.cpp.o: src/sprites/tspritecaballero.cpp
	$(CPP) -c src/sprites/tspritecaballero.cpp -o src/sprites/tspritecaballero.cpp.o $(CXXFLAGS)

src/sprites/tspriteflecha.cpp.o: src/sprites/tspriteflecha.cpp
	$(CPP) -c src/sprites/tspriteflecha.cpp -o src/sprites/tspriteflecha.cpp.o $(CXXFLAGS)

src/sprites/tspriteglaurung.cpp.o: src/sprites/tspriteglaurung.cpp
	$(CPP) -c src/sprites/tspriteglaurung.cpp -o src/sprites/tspriteglaurung.cpp.o $(CXXFLAGS)

src/sprites/tspritelancero.cpp.o: src/sprites/tspritelancero.cpp
	$(CPP) -c src/sprites/tspritelancero.cpp -o src/sprites/tspritelancero.cpp.o $(CXXFLAGS)

src/sprites/tspritemagma.cpp.o: src/sprites/tspritemagma.cpp
	$(CPP) -c src/sprites/tspritemagma.cpp -o src/sprites/tspritemagma.cpp.o $(CXXFLAGS)

src/sprites/tspritemurcielago.cpp.o: src/sprites/tspritemurcielago.cpp
	$(CPP) -c src/sprites/tspritemurcielago.cpp -o src/sprites/tspritemurcielago.cpp.o $(CXXFLAGS)

src/sprites/tspriteredham.cpp.o: src/sprites/tspriteredham.cpp
	$(CPP) -c src/sprites/tspriteredham.cpp -o src/sprites/tspriteredham.cpp.o $(CXXFLAGS)

src/sprites/tspriteseleccion.cpp.o: src/sprites/tspriteseleccion.cpp
	$(CPP) -c src/sprites/tspriteseleccion.cpp -o src/sprites/tspriteseleccion.cpp.o $(CXXFLAGS)

src/sprites/tspritespider.cpp.o: src/sprites/tspritespider.cpp
	$(CPP) -c src/sprites/tspritespider.cpp -o src/sprites/tspritespider.cpp.o $(CXXFLAGS)

src/sprites/tspritetemporizador.cpp.o: src/sprites/tspritetemporizador.cpp
	$(CPP) -c src/sprites/tspritetemporizador.cpp -o src/sprites/tspritetemporizador.cpp.o $(CXXFLAGS)

