## Makefile for building the GLib test programs with Microsoft C
## Use: nmake -f makefile.msc check

TOP = ..\..

!INCLUDE ..\build\win32\make.msc

################################################################

INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I ..\glib -I ..\gmodule
DEFINES = -DHAVE_CONFIG_H

NONAUTOMATIC_TESTS = \
	testglib.exe	\
	testgdate.exe	\
	testgdateparser.exe \
	patterntest.exe \
	unicode-normalize.exe \
	unicode-collate.exe

TESTS = \
	array-test.exe	\
	date-test.exe	\
	dirname-test.exe\
	gio-test.exe	\
	iochannel-test.exe \
	hash-test.exe	\
	list-test.exe	\
	mainloop-test.exe \
	markup-test.exe	\
	module-test.exe	\
	node-test.exe	\
	queue-test.exe	\
	rand-test.exe	\
	relation-test.exe\
	shell-test.exe	\
	slist-test.exe	\
	spawn-test.exe	\
# strfunc-test doesn't compile with MSVC
#	strfunc-test.exe\
	string-test.exe	\
# strtod-test doesn't either
#	strtod-test.exe \
	thread-test.exe	\
	threadpool-test.exe\
	tree-test.exe	\
	type-test.exe	\
	unicode-caseconv.exe \
	unicode-encoding.exe \
	uri-test.exe

DLLS = \
	libmoduletestplugin_a.dll \
	libmoduletestplugin_b.dll

all :	$(TESTS) $(NONAUTOMATIC_TESTS) $(DLLS)

.c.exe :
	$(CC) $(CFLAGS) -c $<
	$(CC) $(CFLAGS) -Fe$@ $< ..\glib\glib-2.0.lib ..\gmodule\gmodule-2.0.lib ..\gthread\gthread-2.0.lib $(LDFLAGS) user32.lib /subsystem:console

libmoduletestplugin_a.dll : libmoduletestplugin_a.obj
	$(CC) $(CFLAGS) -LD libmoduletestplugin_a.obj ..\gmodule\gmodule-2.0.lib ..\glib\glib-2.0.lib $(LDFLAGS)

libmoduletestplugin_b.dll : libmoduletestplugin_b.obj
	$(CC) $(CFLAGS) -LD libmoduletestplugin_b.obj ..\gmodule\gmodule-2.0.lib ..\glib\glib-2.0.lib $(LDFLAGS)

check:	all
	for %p in ($(TESTS)) do set PATH=..\glib;..\gmodule;..\gobject;..\gthread;%PATH% && %p
