regtest = $(file:S=-regtest) ;\r
\r
Object $(testfile).o : $(file) ;\r
- Object $(regtestfile).o : $(file) ;\r
MainFromObjects $(testfile) : $(testfile).o $(CRT0) ;\r
- MainFromObjects $(regtestfile) : $(regtestfile).o ;\r
CCFLAGS on $(testfile).o += -DTEST $(PDCLIB_TEST_CCFLAGS) ;\r
- CCFLAGS on $(regtestfile).o += -DTEST -DREGTEST \r
- $(PDCLIB_REGTEST_CCFLAGS) ;\r
- CCHDRS on $(regtestfile).o = [ FIncludes [ FDirName testing ] ] ;\r
-\r
LINKFLAGS on $(testfile)$(SUFEXE) += $(PDCLIB_TEST_LINKFLAGS) ;\r
- LINKFLAGS on $(regtestfile)$(SUFEXE) += $(PDCLIB_REGTEST_LINKFLAGS) ;\r
LINKLIBS on $(testfile)$(SUFEXE) += $(PDCLIB_TEST_LINKLIBS) ;\r
- LINKLIBS on $(regtestfile)$(SUFEXE) += $(PDCLIB_REGTEST_LINKLIBS) ;\r
LinkLibraries $(testfile) : $(PDCLIB) ;\r
-\r
Test $(test) : $(testfile) ;\r
- RegTest $(regtest) : $(regtestfile) ;\r
+\r
+ if ! $(PDCLIB_NO_REGTEST) {\r
+ Object $(regtestfile).o : $(file) ;\r
+ MainFromObjects $(regtestfile) : $(regtestfile).o ;\r
+ CCFLAGS on $(regtestfile).o += -DTEST -DREGTEST \r
+ $(PDCLIB_REGTEST_CCFLAGS) ;\r
+ CCHDRS on $(regtestfile).o = [ FIncludes [ FDirName testing ] ] $(PDCLIB_REGTEST_CCHDRS) ;\r
+ LINKFLAGS on $(regtestfile)$(SUFEXE) += $(PDCLIB_REGTEST_LINKFLAGS) ;\r
+ LINKLIBS on $(regtestfile)$(SUFEXE) += $(PDCLIB_REGTEST_LINKLIBS) ;\r
+ RegTest $(regtest) : $(regtestfile) ;\r
+ }\r
}\r
}\r
\r
}\r
} else if $(PDCLIB_TOOLCHAIN) = "WATCOM" {\r
ECHO "Watcom!" ;\r
- CCFLAGS = /zq /DWIN32 ;\r
- C++FLAGS = /zq /DWIN32 ;\r
+ CCFLAGS = /zq /DWIN32 /zls ;\r
+ C++FLAGS = /zq /DWIN32 /zls ;\r
STDHDRS = $(WATCOM)\\h\\nt ;\r
-\r
- PDCLIB_CCFLAGS = "-za99 -zl" ;\r
+ PDCLIB_CCFLAGS = "-za99 -zl -s" ;\r
} else {\r
ECHO The value of PDCLIB_TOOLCHAIN is not recognized ;\r
ECHO Currently set to $(PDCLIB_TOOLCHAIN) ;\r
SubDirHdrs $(PDCLIB_TOP) platform example internals ;\r
}\r
\r
-PDCLIB_TEST_LINKFLAGS += -nostdlib ;\r
-PDCLIB_TEST_LINKLIBS += -lgcc ;\r
+if $(PDCLIB_TOOLCHAIN) = "gcc" {\r
+ PDCLIB_TEST_LINKFLAGS += -nostdlib ;\r
+ PDCLIB_TEST_LINKLIBS += -lgcc ;\r
+}\r
\r
PDCLIB_OPTIONS = nothread notime dlmalloc ;
\ No newline at end of file
}\r
}\r
\r
-PDCLIB_TEST_LINKFLAGS += -nostdlib ;\r
-PDCLIB_TEST_LINKLIBS += -lgcc -lkernel32 -lshell32 ;\r
+if $(PDCLIB_TOOLCHAIN) = "gcc" {\r
+ PDCLIB_TEST_LINKFLAGS += -nostdlib ;\r
+ PDCLIB_TEST_LINKLIBS += -lgcc -lkernel32 -lshell32 ;\r
+} else if $(PDCLIB_TOOLCHAIN) = "WATCOM" {\r
+ PDCLIB_TEST_LINKFLAGS = "-\"option start=_mainCRTStartup\"" ;\r
+ PDCLIB_TEST_LINKLIBS = \r
+ $(WATCOM)\\lib386\\nt\\kernel32.lib \r
+ $(WATCOM)\\lib386\\nt\\shell32.lib\r
+ $(WATCOM)\\lib386\\nt\\clib3r.lib ;\r
+ PDCLIB_REGTEST_CCHDRS = [ FIncludes $(WATCOM)\\h ] ;\r
+} else {\r
+ ECHO Win32 doesn't support toolchain $(PDCLIB_TOOLCHAIN) ;\r
+ EXIT ;\r
+}\r
\r
PDCLIB_OPTIONS = nothread notime dlmalloc ;\r
\r
}\r
\r
extern int main( int argc, char ** argv, char ** envp );\r
-_PDCLIB_noreturn void mainCRTStartup( void ) \r
+\r
+void __cdecl mainCRTStartup( void ) \r
{\r
stdin->handle = GetStdHandle(STD_INPUT_HANDLE);\r
stdout->handle = GetStdHandle(STD_OUTPUT_HANDLE);\r
int exitStatus = main(argc, argv, NULL);\r
\r
exit(exitStatus);\r
-}\r
+}
\ No newline at end of file