SRC = ActionSnapshot.cpp Asteroid.cpp AsteroidSize.cpp AsteroidSnapshot.cpp AsteroidType.cpp Explosion.cpp FlyingObject.cpp FlyingObjectSnapshot.cpp FlyingObjectType.cpp Frame.cpp IOLayer.cpp Log.cpp Player.cpp Program.cpp Repository.cpp Ship.cpp ShipSnapshot.cpp Shot.cpp ShotMirage.cpp ShotSnapshot.cpp Tools.cpp TrackingLayer.cpp Ufo.cpp UfoSize.cpp UfoSnapshot.cpp Universe.cpp YAPlayer.cpp
OBJ = $(SRC:.cpp=.o)
DEPENDS = $(SRC:.cpp=.d)
CXX = g++

CXXFLAGS = -O3 -march=i686 -Wall -Wno-strict-aliasing -pipe `wx-config --debug=no --cppflags`
LDFLAGS = `wx-config --cxxflags` `wx-config --libs`

asteroid: $(OBJ)
	$(CXX) -o $@ $(LDFLAGS) $(CXXFLAGS) $(OBJ) 

.PHONY: clean

%.o: %.cpp
	$(CXX) -o $@ $(CXXFLAGS) -c $<

%.d: %.cpp
	rm --force $@; \
	$(CXX) -MM $< > $@.$$$$; \
	sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \
	rm --force $@.$$$$

include $(DEPENDS)

clean:
	rm --force $(OBJ) $(DEPENDS) asteroid

