
CXX=g++
GCJ=gcj

SDL4GCJ_CLASSPATH = ../src/sdl4gcj.jar
SDL4GCJ_CFLAGS = -I../src
SDL4GCJ_LIBS =  -lsdl4gcj 
SDL4GCJ_LDFLAGS = -L../src

OPT_FLAGS = -O2
CLASSPATH=$(SDL4GCJ_CLASSPATH):.
GCJFLAGS =   $(OPT_FLAGS) --classpath=$(CLASSPATH) -g -Wall --encoding=UTF-8 
CFLAGS =  -Wall -I/usr/include/SDL -D_REENTRANT -DNDEBUG  $(SDL4GCJ_CFLAGS) $(OPT_FLAGS)
LIBS = $(SDL4GCJ_LIBS)  -L/usr/lib -lSDL -lpthread -lgcj
LDFLAGS =  $(SDL4GCJ_LDFLAGS)

EXEEXT = 

COMMON_SRCS = \
	ImageFont.java \
	SDLOptionParser.java \

COMMON_OBJS = $(COMMON_SRCS:.java=.o)

SRCS = \
	VideoInfoTest.java \
	RepeatTest.java \
	FillTest.java \
	SaveBMPTest.java \
	JoystickTest.java \
	TestSprite.java \
	PixelsTest.java \
	InputStreamIconTest.java \
	CDPlayerTest.java \
	ImageFontTest.java \
	MouseTest.java \
	CursorTest.java \
	TimerAnimation.java \
	GammaTest.java \
	PaletteTest.java \

#	EmbededIconTest.java \
#	ResourceIconTest.java \

CXX_SRCS = \
	CXXTest.cpp \

PROGS = $(SRCS:.java=$(EXEEXT)) $(CXX_SRCS:.cpp=$(EXEEXT))


all : $(COMMON_OBJS) $(PROGS) 


.SUFFIXES : .java .o $(EXEEXT)

.java.o: 
	$(GCJ) $(GCJFLAGS) -c -o $@ $< 

.java$(EXEEXT): 
	$(GCJ) $(GCJFLAGS) --main=$(@:$(EXEEXT)=) -o $@ $< $(COMMON_OBJS) $(LDFLAGS) $(LIBS) 

.cpp$(EXEEXT): 
	$(CXX) $(CFLAGS) -o $@ $< $(COMMON_OBJS) $(LDFLAGS) $(LIBS) 


distclean : clean
	-rm config.cache config.log  config.status 

clean :
	-rm $(PROGS) *.exe $(COMMON_OBJS)

