# Makefile to build the SDL tests

srcdir  = @srcdir@

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

TARGETS = \
	checkkeys$(EXE) \
	controllermap$(EXE) \
	loopwave$(EXE) \
	loopwavequeue$(EXE) \
	testatomic$(EXE) \
	testaudiocapture$(EXE) \
	testaudiohotplug$(EXE) \
	testaudioinfo$(EXE) \
	testautomation$(EXE) \
	testbounds$(EXE) \
	testcustomcursor$(EXE) \
	testdisplayinfo$(EXE) \
	testdraw2$(EXE) \
	testdrawchessboard$(EXE) \
	testdropfile$(EXE) \
	testerror$(EXE) \
	testevdev$(EXE) \
	testfile$(EXE) \
	testfilesystem$(EXE) \
	testgamecontroller$(EXE) \
	testgesture$(EXE) \
	testhaptic$(EXE) \
	testhittesting$(EXE) \
	testhotplug$(EXE) \
	testiconv$(EXE) \
	testime$(EXE) \
	testintersections$(EXE) \
	testjoystick$(EXE) \
	testkeys$(EXE) \
	testloadso$(EXE) \
	testlocale$(EXE) \
	testlock$(EXE) \
	testmessage$(EXE) \
	testmultiaudio$(EXE) \
	testnative$(EXE) \
	testoverlay2$(EXE) \
	testplatform$(EXE) \
	testpower$(EXE) \
	testqsort$(EXE) \
	testrelative$(EXE) \
	testrendercopyex$(EXE) \
	testrendertarget$(EXE) \
	testresample$(EXE) \
	testrumble$(EXE) \
	testscale$(EXE) \
	testsem$(EXE) \
	testsensor$(EXE) \
	testshape$(EXE) \
	testsprite2$(EXE) \
	testspriteminimal$(EXE) \
	teststreaming$(EXE) \
	testthread$(EXE) \
	testtimer$(EXE) \
	testurl$(EXE) \
	testver$(EXE) \
	testviewport$(EXE) \
	testvulkan$(EXE) \
	testwm2$(EXE) \
	testyuv$(EXE) \
	torturethread$(EXE) \

	
@OPENGL_TARGETS@ += testgl2$(EXE) testshader$(EXE)
@OPENGLES1_TARGETS@ += testgles$(EXE)
@OPENGLES2_TARGETS@ += testgles2$(EXE)


all: Makefile $(TARGETS) copydatafiles

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)

loopwavequeue$(EXE): $(srcdir)/loopwavequeue.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 \
		      $(srcdir)/testautomation_hints.c
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) 

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

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

testaudiocapture$(EXE): $(srcdir)/testaudiocapture.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)

testhittesting$(EXE): $(srcdir)/testhittesting.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)

testevdev$(EXE): $(srcdir)/testevdev.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) @MATHLIB@

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

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

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

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

testhotplug$(EXE): $(srcdir)/testhotplug.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

#there's probably a better way of doing this
ifeq (@ISMACOSX@,false)
ifeq (@ISWINDOWS@,false)
ifeq (@ISUNIX@,false)
testnative$(EXE): ;
endif
endif
endif

testoverlay2$(EXE): $(srcdir)/testoverlay2.c $(srcdir)/testyuv_cvt.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)

testsensor$(EXE): $(srcdir)/testsensor.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)

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

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

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

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

testyuv$(EXE): $(srcdir)/testyuv.c $(srcdir)/testyuv_cvt.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)

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

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

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

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

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

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

testlocale$(EXE): $(srcdir)/testlocale.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*

ifneq ($(srcdir), .)
%.bmp: $(srcdir)/%.bmp
	cp $< $@

%.wav: $(srcdir)/%.wav
	cp $< $@

%.dat: $(srcdir)/%.dat
	cp $< $@
endif

copydatafiles: copybmpfiles copywavfiles copydatfiles
.PHONY : copydatafiles

copybmpfiles: $(foreach bmp,$(wildcard $(srcdir)/*.bmp),$(notdir $(bmp)))
.PHONY : copybmpfiles

copywavfiles: $(foreach wav,$(wildcard $(srcdir)/*.wav),$(notdir $(wav)))
.PHONY : copywavfiles

copydatfiles: $(foreach dat,$(wildcard $(srcdir)/*.dat),$(notdir $(dat)))
.PHONY : copydatfiles

