# PROGRAMS includes all test programs built on this platform. # STDTEST_PORTABLE # test programs invoked via standard user interface, run on all platforms # STDTEST_NONPORTABLE # test programs invoked via standard user interface, not portable # OTHER_PROGRAMS # programs such as sendfile, that have to be invoked in a special sequence # or with special parameters STDTEST_PORTABLE = \ testlockperf.exe \ testshmproducer.exe \ testshmconsumer.exe \ testmutexscope.exe \ testall.exe OTHER_PROGRAMS = sendfile.exe PROGRAMS = $(STDTEST_PORTABLE) $(STDTEST_NONPORTABLE) $(OTHER_PROGRAMS) TARGETS = $(PROGRAMS) # bring in rules.mk for standard functionality ALL: $(TARGETS) CL = cl.exe CFLAGS = /nologo /c /MDd /W3 /Gm /GX /Zi /Od /D _DEBUG /D WIN32 /D APR_DECLARE_STATIC /FD .c.obj:: $(CL) -c $< $(CFLAGS) $(INCLUDES) LOCAL_LIBS= ../LibD/apr-1.lib ALL_LIBS= kernel32.lib user32.lib advapi32.lib Rpcrt4.lib ws2_32.lib wsock32.lib ole32.lib CLEAN_TARGETS = testfile.tmp mod_test.dll proc_child.exe occhild.exe \ readchild.exe tryread.exe sockchild.exe \ globalmutexchild.exe lfstests/large.bin \ data/testputs.txt data/testbigfprintf.dat data/testwritev.txt \ data/testwritev_full.txt CLEAN_SUBDIRS = internal INCDIR=../include INCLUDES=/I "$(INCDIR)" # link programs using -no-install to get real executables not # libtool wrapper scripts which link an executable when first run. LINK_PROG = link.exe /nologo /debug /machine:I386 /subsystem:console /incremental:no LINK_LIB = link.exe /nologo /dll /debug /machine:I386 /subsystem:windows /incremental:no check: $(STDTEST_PORTABLE) $(STDTEST_NONPORTABLE) for prog in $(STDTEST_PORTABLE) $(STDTEST_NONPORTABLE); do \ ./$$prog; \ if test $$? = 255; then \ echo "$$prog failed"; \ break; \ fi; \ done occhild.exe: occhild.obj $(LOCAL_LIBS) $(LINK_PROG) occhild.obj $(LOCAL_LIBS) $(ALL_LIBS) sockchild.exe: sockchild.obj $(LOCAL_LIBS) $(LINK_PROG) sockchild.obj $(LOCAL_LIBS) $(ALL_LIBS) readchild.exe: readchild.obj $(LOCAL_LIBS) $(LINK_PROG) readchild.obj $(LOCAL_LIBS) $(ALL_LIBS) globalmutexchild.exe: globalmutexchild.obj $(LOCAL_LIBS) $(LINK_PROG) globalmutexchild.obj $(LOCAL_LIBS) $(ALL_LIBS) tryread.exe: tryread.obj $(LOCAL_LIBS) $(LINK_PROG) tryread.obj $(LOCAL_LIBS) $(ALL_LIBS) proc_child.exe: proc_child.obj $(LOCAL_LIBS) $(LINK_PROG) proc_child.obj $(LOCAL_LIBS) $(ALL_LIBS) # FIXME: -prefer-pic is only supported with libtool-1.4+ mod_test.dll: mod_test.obj $(LINK_LIB) mod_test.obj /export:print_hello /export:count_reps $(LOCAL_LIBS) $(ALL_LIBS) testlockperf.exe: testlockperf.obj $(LOCAL_LIBS) $(LINK_PROG) testlockperf.obj $(LOCAL_LIBS) $(ALL_LIBS) sendfile.exe: sendfile.obj $(LOCAL_LIBS) $(LINK_PROG) sendfile.obj $(LOCAL_LIBS) $(ALL_LIBS) testshmproducer.exe: testshmproducer.obj $(LOCAL_LIBS) $(LINK_PROG) testshmproducer.obj $(LOCAL_LIBS) $(ALL_LIBS) testshmconsumer.exe: testshmconsumer.obj $(LOCAL_LIBS) $(LINK_PROG) testshmconsumer.obj $(LOCAL_LIBS) $(ALL_LIBS) testprocmutex.exe: testprocmutex.obj $(LOCAL_LIBS) $(LINK_PROG) testprocmutex.obj $(LOCAL_LIBS) $(ALL_LIBS) testmutexscope.exe: testmutexscope.obj $(LOCAL_LIBS) $(LINK_PROG) testmutexscope.obj $(LOCAL_LIBS) $(ALL_LIBS) TESTS = testutil.obj testtime.obj teststr.obj testvsn.obj testipsub.obj \ testmmap.obj testud.obj testtable.obj testsleep.obj testpools.obj \ testfmt.obj testfile.obj testdir.obj testfileinfo.obj testrand.obj \ testdso.obj testoc.obj testdup.obj testsockets.obj testproc.obj \ testpoll.obj testlock.obj testsockopt.obj testpipe.obj testthread.obj \ testhash.obj testargs.obj testnames.obj testuser.obj testpath.obj \ testenv.obj testprocmutex.obj testrand2.obj testfnmatch.obj \ testatomic.obj testflock.obj testshm.obj testsock.obj testglobalmutex.obj \ teststrnatcmp.obj testfilecopy.obj testtemp.obj testlfs.obj testall.exe: $(TESTS) mod_test.dll occhild.exe \ readchild.exe abts.obj proc_child.exe \ tryread.exe sockchild.exe globalmutexchild.exe \ $(LOCAL_LIBS) $(LINK_PROG) /out:testall.exe $(TESTS) abts.obj $(LOCAL_LIBS) $(ALL_LIBS) # DO NOT REMOVE