diff --git a/test/win.mak b/test/win.mak new file mode 100644 index 0000000..c219d54 --- /dev/null +++ b/test/win.mak @@ -0,0 +1,55 @@ +TESTOBJS = src/connect-test.obj \ + src/stmthandles-test.obj \ + src/select-test.obj \ + src/commands-test.obj \ + src/multistmt-test.obj \ + src/getresult-test.obj \ + src/prepare-test.obj \ + src/params-test.obj \ + src/notice-test.obj \ + src/arraybinding-test.obj \ + src/insertreturning-test.obj \ + src/dataatexecution-test.obj \ + src/boolsaschar-test.obj \ + src/cvtnulldate-test.obj \ + src/alter-test.obj \ + src/quotes-test.obj \ + src/cursors-test.obj \ + src/positioned-update-test.obj \ + src/catalogfunctions-test.obj \ + src/bindcol-test.obj \ + src/lfconversion-test.obj \ + src/cte-test.obj \ + src/deprecated-test.obj \ + src/error-rollback-test.obj \ + src/diagnostic-test.obj + +# Output directory +OUTPUT_DIR=src + +# The list of tests is extracted from the object list above. This could +# be cleaner but it is more stable than the reverse operation. +TESTS = $(TESTOBJS:src/=) +TESTS = $(TESTS:-test.obj=) +TESTS = sampletables $(TESTS) + +CLFLAGS=/D WIN32 +LINKFLAGS=/link odbc32.lib odbccp32.lib + +# Build an executable for each test. A SQL script to kick each test +# is created at the same time. +.c.obj: + cl $*.c $(OUTPUT_DIR)/common.obj $(CLFLAGS) $(LINKFLAGS) + -@echo \! cmd.exe /c %CD%\$* > $(*:-test=).sql + -@mv *.exe *.obj $(OUTPUT_DIR)/ + -@mv $(*:-test=).sql sql/ + +all: common.obj $(TESTOBJS) + +common.obj: + cl /c src/common.c $(CLFLAGS) + -@mv common.obj $(OUTPUT_DIR)/ + +clean: + del $(OUTPUT_DIR)\*.exe + del $(OUTPUT_DIR)\*.obj