#! Purpose: tmake template file from which makefile.wat is generated by running
#! tmake -t wat wxwin.pro -o makefile.wat
#! TODO:
-#! - unzip.c must be compiled with $(CC), not $(CCC).
+#! - 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.
#! doesn't compile, apparently
next if $file =~ /^imagjpeg\./;
+ $isCFile = $file =~ /\.c$/;
$file =~ s/cp?p?$/obj/;
- $project{"WXCOMMONOBJS"} .= $file . " "
+ $project{"WXCOMMONOBJS"} .= $file . " ";
+ $project{"WXCOBJS"} .= $file . " " if $isCFile;
}
foreach $file (sort keys %wxMSW) {
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 = ..\..
GENDIR=$(WXDIR)\src\generic
COMMDIR=$(WXDIR)\src\common
XPMDIR=$(WXDIR)\src\xpm
-OLEDIR=ole
MSWDIR=$(WXDIR)\src\msw
+OLEDIR=$(MSWDIR)\ole
DOCDIR = $(WXDIR)\docs
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";
}
#$}
$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";
}
#$}