X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f2071dda0b6016afed8777a4dd23f0ada537026b..8191741f68b737d88e1ef40aaef9e4504915ccbb:/distrib/msw/tmake/wat.t?ds=sidebyside diff --git a/distrib/msw/tmake/wat.t b/distrib/msw/tmake/wat.t index 4fb9b6452a..50472bb671 100644 --- a/distrib/msw/tmake/wat.t +++ b/distrib/msw/tmake/wat.t @@ -2,11 +2,14 @@ #! File: wat.t #! Purpose: tmake template file from which makefile.wat is generated by running #! tmake -t wat wxwin.pro -o makefile.wat +#! TODO: +#! - extended.c, unzip.c must be compiled with $(CC), not $(CCC). +#! - extended.c, unzip.c targets must be as per b32.t etc. +#! - OLE files not generated correctly (need 'ole/' directory) #! Author: Vadim Zeitlin #! Created: 14.07.99 #! Version: $Id$ #!############################################################################# - #${ #! include the code which parses filelist.txt file and initializes #! %wxCommon, %wxGeneric and %wxMSW hashes. @@ -25,38 +28,56 @@ $file =~ s/cp?p?$/obj/; $project{$tag} .= $file . " " } + + foreach $file (sort keys %wxHTML) { + next if $wxHTML{$file} =~ /\b16\b/; - foreach $file (sort keys %wxCommon) { - #! doesn't compile, apparently - next if $file =~ /^imagjpeg\./; + $file =~ s/cp?p?$/obj/; + $project{"WXHTMLOBJS"} .= $file . " " + } + foreach $file (sort keys %wxCommon) { + $isCFile = $file =~ /\.c$/; $file =~ s/cp?p?$/obj/; - $project{"WXCOMMONOBJS"} .= $file . " " + $project{"WXCOMMONOBJS"} .= $file . " "; + $project{"WXCOBJS"} .= $file . " " if $isCFile; } foreach $file (sort keys %wxMSW) { #! these files don't compile next if $file =~ /^pnghand\./; - next if $wxGeneric{$file} =~ /\b16\b/; +#! next if $wxGeneric{$file} =~ /\b16\b/; + my $isOleObj = $wxMSW{$file} =~ /\bO\b/; + my $isCFile = $file =~ /\.c$/; $file =~ s/cp?p?$/obj/; - $project{"WXMSWOBJS"} .= $file . " " + $project{"WXMSWOBJS"} .= $file . " "; + $project{"WXCOBJS"} .= $file . " " if $isCFile; + $project{"WXOLEOBJS"} .= $file . " " if $isOleObj } #$} +#! an attempt to embed '#' directly in the string somehow didn't work... +#$ $text = chr(35) . '!/binb/wmake.exe'; # This file was automatically generated by tmake at #$ Now() # DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE WAT.T! -#! an attempt to embed '#' directly in the string somehow didn't work... -#$ $text = chr(35) . '!/binb/wmake.exe'; - # # File: makefile.wat # Author: Julian Smart # Created: 1998 # # Makefile : Builds wxWindows library for Watcom C++, WIN32 +# +# NOTE: This file is generated from wat.t by tmake, but not all bugs have +# been removed from this process. If wxWindows doesn't compile, +# check the following and edit this makefile accordingly: +# +# - OLE-related files such as oleutils.cpp should have 'ole\' prepended +# to the path. +# - extended.c, gsocket.c, unzip.c must be compiled using $(CC), not $(CCC). +# They may also be wrongly specified as extended.cpp, etc. WXDIR = ..\.. @@ -68,13 +89,15 @@ LIBTARGET = $(WXLIB)\wx.lib DUMMY=dummydll # ODBCLIB = ..\..\contrib\odbc\odbc32.lib -EXTRATARGETS = xpm png zlib -EXTRATARGETSCLEAN = clean_xpm clean_png clean_zlib +EXTRATARGETS = png zlib jpeg tiff +EXTRATARGETSCLEAN = clean_png clean_zlib clean_jpeg clean_tiff GENDIR=$(WXDIR)\src\generic COMMDIR=$(WXDIR)\src\common -XPMDIR=$(WXDIR)\src\xpm -OLEDIR=ole +JPEGDIR=$(WXDIR)\src\jpeg +TIFFDIR=$(WXDIR)\src\tiff MSWDIR=$(WXDIR)\src\msw +OLEDIR=$(MSWDIR)\ole +HTMLDIR=$(WXDIR)\src\html DOCDIR = $(WXDIR)\docs @@ -90,10 +113,12 @@ COMMONOBJS = & MSWOBJS = #$ ExpandGlue("WXMSWOBJS", "", " &\n\t") +HTMLOBJS = #$ ExpandGlue("WXHTMLOBJS", "", " &\n\t") + # Add $(NONESSENTIALOBJS) if wanting generic dialogs, PostScript etc. -OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) +OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) $(HTMLOBJS) -all: $(OBJECTS) $(LIBTARGET) $(EXTRATARGETS) +all: $(OBJECTS) $(LIBTARGET) $(EXTRATARGETS) .SYMBOLIC $(LIBTARGET) : $(OBJECTS) %create tmp.lbc @@ -104,8 +129,8 @@ $(LIBTARGET) : $(OBJECTS) # %create tmp.lbc # @for %i in ( $(OBJECTS) ) do @%append tmp.lbc +%i # wlib /b /c /n /p=512 $^@ @tmp.lbc - - + + clean: .SYMBOLIC $(EXTRATARGETSCLEAN) -erase *.obj -erase $(LIBTARGET) @@ -121,13 +146,22 @@ cleanall: clean foreach (@objs) { $text .= $_ . ': $('; s/\.obj$//; - if ( $wxMSW{$_} =~ /\bO\b/ ) { + if ( $project{"WXOLEOBJS"} =~ /\b\Q$_\E\b/ ) { $text .= 'OLEDIR)\\'; } else { $text .= 'MSWDIR)\\'; } - $text .= $_ . ".cpp\n" . - ' *$(CCC) $(CPPFLAGS) $(IFLAGS) $<' . "\n\n"; + my $suffix, $cc; + if ( $project{"WXCOBJS"} =~ /\b\Q$_\E\b/ ) { + $suffix = "c"; + $cc="CC"; + } + else { + $suffix = "cpp"; + $cc="CCC"; + } + $text .= $_ . ".$suffix\n" . + " *\$($cc) \$(CPPFLAGS) \$(IFLAGS) \$<" . "\n\n"; } #$} @@ -141,8 +175,17 @@ cleanall: clean $text .= $_; s/\.obj$//; $text .= ': $(COMMDIR)\\'; - $text .= $_ . ".cpp\n" . - ' *$(CCC) $(CPPFLAGS) $(IFLAGS) $<' . "\n\n"; + my $suffix, $cc; + if ( $project{"WXCOBJS"} =~ /\b\Q$_\E\b/ ) { + $suffix = "c"; + $cc="CC"; + } + else { + $suffix = "cpp"; + $cc="CCC"; + } + $text .= $_ . ".$suffix\n" . + " *\$($cc) \$(CPPFLAGS) \$(IFLAGS) \$<" . "\n\n"; } #$} @@ -173,77 +216,27 @@ $(COMMDIR)\lex_yy.c: $(COMMDIR)\doslex.c } #$} -crbuffri.obj: $(XPMDIR)\crbuffri.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -crbuffrp.obj: $(XPMDIR)\crbuffrp.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -crdatfri.obj: $(XPMDIR)\crdatfri.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -crdatfrp.obj: $(XPMDIR)\crdatfrp.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -create.obj: $(XPMDIR)\create.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -crifrbuf.obj: $(XPMDIR)\crifrbuf.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -crifrdat.obj: $(XPMDIR)\crifrdat.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -crpfrbuf.obj: $(XPMDIR)\crpfrbuf.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -crpfrdat.obj: $(XPMDIR)\crpfrdat.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -# TODO: what to do about this clash of filename???? -#data.obj: $(XPMDIR)\data.c -# *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -hashtab.obj: $(XPMDIR)\hashtab.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -misc.obj: $(XPMDIR)\misc.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< -parse.obj: $(XPMDIR)\parse.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -rdftodat.obj: $(XPMDIR)\rdftodat.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -rdftoi.obj: $(XPMDIR)\rdftoi.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -rdftop.obj: $(XPMDIR)\rdftop.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -rgb.obj: $(XPMDIR)\rgb.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -scan.obj: $(XPMDIR)\scan.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -simx.obj: $(XPMDIR)\simx.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< - -wrffrdat.obj: $(XPMDIR)\wrffrdat.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< +######################################################## +# HTML objects (always compiled) -wrffri.obj: $(XPMDIR)\wrffri.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< +#${ + $_ = $project{"WXHTMLOBJS"}; + my @objs = split; + foreach (@objs) { + $text .= $_; + s/\.obj$//; + $text .= ': $(HTMLDIR)\\'; + $text .= $_ . ".cpp\n" . + ' *$(CCC) $(CPPFLAGS) $(IFLAGS) $<' . "\n\n"; + } +#$} -wrffrp.obj: $(XPMDIR)\wrffrp.c - *$(CC) $(CPPFLAGS) $(IFLAGS) $< OBJ1 = adler32$(O) compress$(O) crc32$(O) gzio$(O) uncompr$(O) deflate$(O) \ - trees$(O) + trees$(O) OBJ2 = zutil$(O) inflate$(O) infblock$(O) inftrees$(O) infcodes$(O) \ - infutil$(O) inffast$(O) + infutil$(O) inffast$(O) adler32.obj: adler32.c zutil.h zlib.h zconf.h $(CC) -c $(CFLAGS) $*.c @@ -289,16 +282,6 @@ uncompr.obj: uncompr.c zlib.h zconf.h zutil.obj: zutil.c zutil.h zlib.h zconf.h $(CC) -c $(CFLAGS) $*.c -xpm: .SYMBOLIC - cd $(WXDIR)\src\xpm - wmake -f makefile.wat all - cd $(WXDIR)\src\msw - -clean_xpm: .SYMBOLIC - cd $(WXDIR)\src\xpm - wmake -f makefile.wat clean - cd $(WXDIR)\src\msw - png: .SYMBOLIC cd $(WXDIR)\src\png wmake -f makefile.wat all @@ -319,3 +302,28 @@ clean_zlib: .SYMBOLIC wmake -f makefile.wat clean cd $(WXDIR)\src\msw +jpeg: .SYMBOLIC + cd $(WXDIR)\src\jpeg + wmake -f makefile.wat all + cd $(WXDIR)\src\msw + +clean_jpeg: .SYMBOLIC + cd $(WXDIR)\src\jpeg + wmake -f makefile.wat clean + cd $(WXDIR)\src\msw + +tiff: .SYMBOLIC + cd $(WXDIR)\src\tiff + wmake -f makefile.wat all + cd $(WXDIR)\src\msw + +clean_tiff: .SYMBOLIC + cd $(WXDIR)\src\tiff + wmake -f makefile.wat clean + cd $(WXDIR)\src\msw + +MFTYPE=wat +self : .SYMBOLIC $(WXDIR)\distrib\msw\tmake\filelist.txt $(WXDIR)\distrib\msw\tmake\$(MFTYPE).t + cd $(WXDIR)\distrib\msw\tmake + tmake -t $(MFTYPE) wxwin.pro -o makefile.$(MFTYPE) + copy makefile.$(MFTYPE) $(WXDIR)\src\msw