]> git.saurik.com Git - wxWidgets.git/blobdiff - distrib/msw/tmake/wat.t
Temporary ugly trick to make release for OpenWatcom possible.
[wxWidgets.git] / distrib / msw / tmake / wat.t
index 4fb9b6452ad0b8afced7d3817495d629f098d165..66ac91e57befce6698109e1f598114efbaffa783 100644 (file)
@@ -5,8 +5,8 @@
 #! Author:  Vadim Zeitlin
 #! Created: 14.07.99
 #! Version: $Id$
+#! Changelist: 2003-02-25 - Juergen Ulbts - update from wxWindows 2.5.x/HEAD branch
 #!#############################################################################
-
 #${
     #! include the code which parses filelist.txt file and initializes
     #! %wxCommon, %wxGeneric and %wxMSW hashes.
         $file =~ s/cp?p?$/obj/;
         $project{$tag} .= $file . " "
     }
+    
+    foreach $file (sort keys %wxHTML) {
+        next if $wxHTML{$file} =~ /\b16\b/;
+
+        $file =~ s/cp?p?$/obj/;
+        $project{"WXHTMLOBJS"} .= $file . " "
+    }
 
     foreach $file (sort keys %wxCommon) {
-        #! doesn't compile, apparently
-        next if $file =~ /^imagjpeg\./;
+        next if $wxCommon{$file} =~ /\b(16|U)\b/;
 
+        $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 $wxMSW{$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
     }
 #$}
-
-# 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';
 
+# This file was automatically generated by tmake 
+# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE WAT.T!
+
 #
 # File:     makefile.wat
 # Author:   Julian Smart
 # Created:  1998
 #
 # Makefile : Builds wxWindows library for Watcom C++, WIN32
+!include ..\makewat.env
 
-WXDIR = ..\..
-
-!include $(WXDIR)\src\makewat.env
-
-WXLIB = $(WXDIR)\lib
-
-LIBTARGET   = $(WXLIB)\wx.lib
-DUMMY=dummydll
-# ODBCLIB     = ..\..\contrib\odbc\odbc32.lib
+LIBTARGET   = $(WXDIR)\lib\$(LIBNAME).lib
 
-EXTRATARGETS = xpm png zlib
-EXTRATARGETSCLEAN = clean_xpm clean_png clean_zlib
+EXTRATARGETS = png zlib jpeg tiff regex
+EXTRATARGETSCLEAN = clean_png clean_zlib clean_jpeg clean_tiff clean_regex
 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
 
-GENERICOBJS= #$ ExpandGlue("WXGENERICOBJS", "", " &\n\t")
+GENERICOBJS= #$ ExpandGlue("WXGENERICOBJS", "\$(OUTPUTDIR)\\", " &\n\t\$(OUTPUTDIR)\\")
 
 # These are generic things that don't need to be compiled on MSW,
 # but sometimes it's useful to do so for testing purposes.
-NONESSENTIALOBJS= #$ ExpandGlue("WXNONESSENTIALOBJS", "", " &\n\t")
+NONESSENTIALOBJS= #$ ExpandGlue("WXNONESSENTIALOBJS", "\$(OUTPUTDIR)\\", " &\n\t\$(OUTPUTDIR)\\")
 
 COMMONOBJS = &
-       y_tab.obj &
-       #$ ExpandGlue("WXCOMMONOBJS", "", " &\n\t")
+       #$ ExpandGlue("WXCOMMONOBJS", "\$(OUTPUTDIR)\\", " &\n\t\$(OUTPUTDIR)\\")
 
-MSWOBJS = #$ ExpandGlue("WXMSWOBJS", "", " &\n\t")
+MSWOBJS = #$ ExpandGlue("WXMSWOBJS", "\$(OUTPUTDIR)\\", " &\n\t\$(OUTPUTDIR)\\")
+
+HTMLOBJS = #$ ExpandGlue("WXHTMLOBJS", "\$(OUTPUTDIR)\\", " &\n\t\$(OUTPUTDIR)\\")
 
 # Add $(NONESSENTIALOBJS) if wanting generic dialogs, PostScript etc.
-OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS)
+OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) $(HTMLOBJS)
+
+SETUP_H=$(ARCHINCDIR)\wx\setup.h
+
+all: $(SETUP_H) $(OUTPUTDIR) $(OBJECTS) $(LIBTARGET) $(EXTRATARGETS) .SYMBOLIC
 
-all:        $(OBJECTS) $(LIBTARGET) $(EXTRATARGETS)
+$(ARCHINCDIR)\wx:
+       mkdir $(ARCHINCDIR)
+       mkdir $(ARCHINCDIR)\wx
 
+$(OUTPUTDIR):
+       @if not exist $^@ mkdir $^@
+
+$(SETUP_H): $(ARCHINCDIR)\wx
+    if not exist $(WXDIR)\include\wx\msw\setup.h copy $(WXDIR)\include\wx\msw\setup0.h $(WXDIR)\include\wx\msw\setup.h
+       copy $(WXDIR)\include\wx\msw\setup.h $@
+
+LBCFILE=wx$(TOOLKIT).lbc
 $(LIBTARGET) : $(OBJECTS)
-    %create tmp.lbc
-    @for %i in ( $(OBJECTS) ) do @%append tmp.lbc +%i
-    wlib /b /c /n /p=512 $^@ @tmp.lbc
-
-#test : $(OBJECTS)
-#    %create tmp.lbc
-#    @for %i in ( $(OBJECTS) ) do @%append tmp.lbc +%i
-#    wlib /b /c /n /p=512 $^@ @tmp.lbc
-       
-       
+    %create $(LBCFILE)
+    @for %i in ( $(OBJECTS) ) do @%append $(LBCFILE) +%i
+    wlib /b /c /n $(LIBPAGESIZE) $^@ @$(LBCFILE)
+
+
 clean:   .SYMBOLIC $(EXTRATARGETSCLEAN)
     -erase *.obj
     -erase $(LIBTARGET)
@@ -119,15 +135,26 @@ cleanall:   clean
     $_ = $project{"WXMSWOBJS"};
     my @objs = split;
     foreach (@objs) {
-        $text .= $_ . ':     $(';
+        $text .= "\$(OUTPUTDIR)\\" . $_ . ':     $(';
         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";
+            $flags="CFLAGS";
+        }
+        else {
+            $suffix = "cpp";
+            $cc="CXX";
+            $flags="CXXFLAGS";
+        }
+        $text .= $_ . ".$suffix\n" .
+                 "  *\$($cc) \$($flags) \$<" . "\n\n";
     }
 #$}
 
@@ -138,24 +165,25 @@ cleanall:   clean
     $_ = $project{"WXCOMMONOBJS"};
     my @objs = split;
     foreach (@objs) {
-        $text .= $_;
+        $text .= "\$(OUTPUTDIR)\\" . $_;
         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";
+            $flags="CFLAGS";
+        }
+        else {
+            $suffix = "cpp";
+            $cc="CXX";
+            $flags="CXXFLAGS";
+        }
+        $text .= $_ . ".$suffix\n" .
+                 "  *\$($cc) \$($flags) \$<" . "\n\n";
     }
 #$}
 
-y_tab.obj:     $(COMMDIR)\y_tab.c $(COMMDIR)\lex_yy.c
-  *$(CC) $(CPPFLAGS) $(IFLAGS) -DUSE_DEFINE $(COMMDIR)\y_tab.c
-
-#  *$(CC) $(CPPFLAGS) $(IFLAGS) -DUSE_DEFINE -DYY_USE_PROTOS $(COMMDIR)\y_tab.c
-
-$(COMMDIR)\y_tab.c:     $(COMMDIR)\dosyacc.c
-        copy $(COMMDIR)\dosyacc.c $(COMMDIR)\y_tab.c
-
-$(COMMDIR)\lex_yy.c:    $(COMMDIR)\doslex.c
-    copy $(COMMDIR)\doslex.c $(COMMDIR)\lex_yy.c
 
 ########################################################
 # Generic objects (not always compiled, depending on
@@ -165,157 +193,82 @@ $(COMMDIR)\lex_yy.c:    $(COMMDIR)\doslex.c
     $_ = $project{"WXGENERICOBJS"};
     my @objs = split;
     foreach (@objs) {
-        $text .= $_;
+        $text .= "\$(OUTPUTDIR)\\" . $_;
         s/\.obj$//;
         $text .= ':     $(GENDIR)\\';
         $text .= $_ . ".cpp\n" .
-                 '  *$(CCC) $(CPPFLAGS) $(IFLAGS) $<' . "\n\n";
+                 '  *$(CXX) $(CXXFLAGS) $<' . "\n\n";
     }
 #$}
 
-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) $<
-
-wrffri.obj: $(XPMDIR)\wrffri.c
-  *$(CC) $(CPPFLAGS) $(IFLAGS) $<
-
-wrffrp.obj: $(XPMDIR)\wrffrp.c
-  *$(CC) $(CPPFLAGS) $(IFLAGS) $<
-
-OBJ1 = adler32$(O) compress$(O) crc32$(O) gzio$(O) uncompr$(O) deflate$(O) \
-  trees$(O) 
-OBJ2 = zutil$(O) inflate$(O) infblock$(O) inftrees$(O) infcodes$(O) \
-  infutil$(O) inffast$(O) 
-
-adler32.obj: adler32.c zutil.h zlib.h zconf.h
-       $(CC) -c $(CFLAGS) $*.c
-
-compress.obj: compress.c zlib.h zconf.h
-       $(CC) -c $(CFLAGS) $*.c
-
-crc32.obj: crc32.c zutil.h zlib.h zconf.h
-       $(CC) -c $(CFLAGS) $*.c
-
-deflate.obj: deflate.c deflate.h zutil.h zlib.h zconf.h
-       $(CC) -c $(CFLAGS) $*.c
-
-gzio.obj: gzio.c zutil.h zlib.h zconf.h
-       $(CC) -c $(CFLAGS) $*.c
-
-infblock.obj: infblock.c zutil.h zlib.h zconf.h infblock.h inftrees.h\
-   infcodes.h infutil.h
-       $(CC) -c $(CFLAGS) $*.c
-
-infcodes.obj: infcodes.c zutil.h zlib.h zconf.h inftrees.h infutil.h\
-   infcodes.h inffast.h
-       $(CC) -c $(CFLAGS) $*.c
-
-inflate.obj: inflate.c zutil.h zlib.h zconf.h infblock.h
-       $(CC) -c $(CFLAGS) $*.c
-
-inftrees.obj: inftrees.c zutil.h zlib.h zconf.h inftrees.h
-       $(CC) -c $(CFLAGS) $*.c
+########################################################
+# HTML objects (always compiled)
 
-infutil.obj: infutil.c zutil.h zlib.h zconf.h inftrees.h infutil.h
-       $(CC) -c $(CFLAGS) $*.c
+#${
+    $_ = $project{"WXHTMLOBJS"};
+    my @objs = split;
+    foreach (@objs) {
+        $text .= "\$(OUTPUTDIR)\\" . $_;
+        s/\.obj$//;
+        $text .= ':     $(HTMLDIR)\\';
+        $text .= $_ . ".cpp\n" .
+                 '  *$(CXX) $(CXXFLAGS) $<' . "\n\n";
+    }
+#$}
 
-inffast.obj: inffast.c zutil.h zlib.h zconf.h inftrees.h infutil.h inffast.h
-       $(CC) -c $(CFLAGS) $*.c
+png:   .SYMBOLIC
+    cd $(WXDIR)\src\png
+    wmake -f makefile.wat all
+    cd $(WXDIR)\src\msw
 
-trees.obj: trees.c deflate.h zutil.h zlib.h zconf.h
-       $(CC) -c $(CFLAGS) $*.c
+clean_png:   .SYMBOLIC
+    cd $(WXDIR)\src\png
+    wmake -f makefile.wat clean
+    cd $(WXDIR)\src\msw
 
-uncompr.obj: uncompr.c zlib.h zconf.h
-       $(CC) -c $(CFLAGS) $*.c
+zlib:   .SYMBOLIC
+    cd $(WXDIR)\src\zlib
+    wmake -f makefile.wat all
+    cd $(WXDIR)\src\msw
 
-zutil.obj: zutil.c zutil.h zlib.h zconf.h
-       $(CC) -c $(CFLAGS) $*.c
+clean_zlib:   .SYMBOLIC
+    cd $(WXDIR)\src\zlib
+    wmake -f makefile.wat clean
+    cd $(WXDIR)\src\msw
 
-xpm:   .SYMBOLIC
-    cd $(WXDIR)\src\xpm
+jpeg:    .SYMBOLIC
+    cd $(WXDIR)\src\jpeg
     wmake -f makefile.wat all
     cd $(WXDIR)\src\msw
 
-clean_xpm:   .SYMBOLIC
-    cd $(WXDIR)\src\xpm
+clean_jpeg:   .SYMBOLIC
+    cd $(WXDIR)\src\jpeg
     wmake -f makefile.wat clean
     cd $(WXDIR)\src\msw
 
-png:   .SYMBOLIC
-    cd $(WXDIR)\src\png
+tiff:    .SYMBOLIC
+    cd $(WXDIR)\src\tiff
     wmake -f makefile.wat all
     cd $(WXDIR)\src\msw
 
-clean_png:   .SYMBOLIC
-    cd $(WXDIR)\src\png
+clean_tiff:   .SYMBOLIC
+    cd $(WXDIR)\src\tiff
     wmake -f makefile.wat clean
     cd $(WXDIR)\src\msw
 
-zlib:   .SYMBOLIC
-    cd $(WXDIR)\src\zlib
+regex:    .SYMBOLIC
+    cd $(WXDIR)\src\regex
     wmake -f makefile.wat all
     cd $(WXDIR)\src\msw
 
-clean_zlib:   .SYMBOLIC
-    cd $(WXDIR)\src\zlib
+clean_regex:   .SYMBOLIC
+    cd $(WXDIR)\src\regex
     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