# Makefile to build the SDL tests

srcdir  = @srcdir@

CC      = @CC@
EXE	= @EXE@
CFLAGS  = @CFLAGS@ -g
LIBS	= @LIBS@

TARGETS = \
	checkkeys$(EXE) \
	loopwave$(EXE) \
	testaudioinfo$(EXE) \
	testautomation$(EXE) \
	testdraw2$(EXE) \
	testdrawchessboard$(EXE) \
	testdropfile$(EXE) \
	testerror$(EXE) \
	testfile$(EXE) \
	testgamecontroller$(EXE) \
	testgesture$(EXE) \
	testgl2$(EXE) \
	testgles$(EXE) \
	testhaptic$(EXE) \
	testrumble$(EXE) \
	testthread$(EXE) \
	testiconv$(EXE) \
	testime$(EXE) \
	testintersections$(EXE) \
	testrelative$(EXE) \
	testjoystick$(EXE) \
	testkeys$(EXE) \
	testloadso$(EXE) \
	testlock$(EXE) \
	testmultiaudio$(EXE) \
	testnative$(EXE) \
	testoverlay2$(EXE) \
	testplatform$(EXE) \
	testpower$(EXE) \
	testfilesystem$(EXE) \
	testrendertarget$(EXE) \
	testresample$(EXE) \
	testscale$(EXE) \
	testsem$(EXE) \
	testshader$(EXE) \
	testshape$(EXE) \
	testsprite2$(EXE) \
	testspriteminimal$(EXE) \
	teststreaming$(EXE) \
	testtimer$(EXE) \
	testver$(EXE) \
	testwm2$(EXE) \
	torturethread$(EXE) \
	testrendercopyex$(EXE) \
	testmessage$(EXE) \

all: Makefile $(TARGETS)

Makefile: $(srcdir)/Makefile.in
	$(SHELL) config.status $@

checkkeys$(EXE): $(srcdir)/checkkeys.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

loopwave$(EXE): $(srcdir)/loopwave.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testresample$(EXE): $(srcdir)/testresample.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testaudioinfo$(EXE): $(srcdir)/testaudioinfo.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testautomation$(EXE): $(srcdir)/testautomation.c \
		      $(srcdir)/testautomation_audio.c \
		      $(srcdir)/testautomation_clipboard.c \
		      $(srcdir)/testautomation_events.c \
		      $(srcdir)/testautomation_keyboard.c \
		      $(srcdir)/testautomation_main.c \
		      $(srcdir)/testautomation_mouse.c \
		      $(srcdir)/testautomation_pixels.c \
		      $(srcdir)/testautomation_platform.c \
		      $(srcdir)/testautomation_rect.c \
		      $(srcdir)/testautomation_render.c \
		      $(srcdir)/testautomation_rwops.c \
		      $(srcdir)/testautomation_sdltest.c \
		      $(srcdir)/testautomation_stdlib.c \
		      $(srcdir)/testautomation_surface.c \
		      $(srcdir)/testautomation_syswm.c \
		      $(srcdir)/testautomation_timer.c \
		      $(srcdir)/testautomation_video.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) 

testmultiaudio$(EXE): $(srcdir)/testmultiaudio.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testatomic$(EXE): $(srcdir)/testatomic.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testintersections$(EXE): $(srcdir)/testintersections.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testrelative$(EXE): $(srcdir)/testrelative.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testdraw2$(EXE): $(srcdir)/testdraw2.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testdrawchessboard$(EXE): $(srcdir)/testdrawchessboard.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testdropfile$(EXE): $(srcdir)/testdropfile.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testerror$(EXE): $(srcdir)/testerror.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testfile$(EXE): $(srcdir)/testfile.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testgamecontroller$(EXE): $(srcdir)/testgamecontroller.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
 
testgesture$(EXE): $(srcdir)/testgesture.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) @MATHLIB@
 
testgl2$(EXE): $(srcdir)/testgl2.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) @GLLIB@ @MATHLIB@

testgles$(EXE): $(srcdir)/testgles.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) @GLESLIB@ @MATHLIB@

testhaptic$(EXE): $(srcdir)/testhaptic.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testrumble$(EXE): $(srcdir)/testrumble.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testthread$(EXE): $(srcdir)/testthread.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testiconv$(EXE): $(srcdir)/testiconv.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testime$(EXE): $(srcdir)/testime.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) @SDL_TTF_LIB@

testjoystick$(EXE): $(srcdir)/testjoystick.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testkeys$(EXE): $(srcdir)/testkeys.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testloadso$(EXE): $(srcdir)/testloadso.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testlock$(EXE): $(srcdir)/testlock.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

ifeq (@ISMACOSX@,true)
testnative$(EXE): $(srcdir)/testnative.c \
			$(srcdir)/testnativecocoa.m \
			$(srcdir)/testnativex11.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) -framework Cocoa @XLIB@
endif

ifeq (@ISWINDOWS@,true)
testnative$(EXE): $(srcdir)/testnative.c \
			$(srcdir)/testnativew32.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
endif

ifeq (@ISUNIX@,true)
testnative$(EXE): $(srcdir)/testnative.c \
			$(srcdir)/testnativex11.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) @XLIB@
endif

testoverlay2$(EXE): $(srcdir)/testoverlay2.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testplatform$(EXE): $(srcdir)/testplatform.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testpower$(EXE): $(srcdir)/testpower.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testfilesystem$(EXE): $(srcdir)/testfilesystem.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testrendertarget$(EXE): $(srcdir)/testrendertarget.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testscale$(EXE): $(srcdir)/testscale.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testsem$(EXE): $(srcdir)/testsem.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testshader$(EXE): $(srcdir)/testshader.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) @GLLIB@ @MATHLIB@

testshape$(EXE): $(srcdir)/testshape.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testsprite2$(EXE): $(srcdir)/testsprite2.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testspriteminimal$(EXE): $(srcdir)/testspriteminimal.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) @MATHLIB@

teststreaming$(EXE): $(srcdir)/teststreaming.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) @MATHLIB@

testtimer$(EXE): $(srcdir)/testtimer.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testver$(EXE): $(srcdir)/testver.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testwm2$(EXE): $(srcdir)/testwm2.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

torturethread$(EXE): $(srcdir)/torturethread.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

testrendercopyex$(EXE): $(srcdir)/testrendercopyex.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) @MATHLIB@

testmessage$(EXE): $(srcdir)/testmessage.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

clean:
	rm -f $(TARGETS)

distclean: clean
	rm -f Makefile
	rm -f config.status config.cache config.log
	rm -rf $(srcdir)/autom4te*
