#! Created: 14.07.99
#! Version: $Id$
#!#############################################################################
-
#${
#! include the code which parses filelist.txt file and initializes
#! %wxCommon, %wxGeneric and %wxMSW hashes.
$project{"WXGENERICOBJS"} .= "\$(GENDIR)\\" . $file . " "
}
+ #! because we later search for " <filename> " in this string
+ $project{"WXCOBJS"} = " ";
+
foreach $file (sort keys %wxCommon) {
#! socket files don't compile under Win16 currently
next if $wxCommon{$file} =~ /\b(32|S)\b/;
#! don't take files not appropriate for 16-bit Windows
next if $wxMSW{$file} =~ /\b(32|O)\b/;
+ $isCFile = $file =~ /\.c$/;
$file =~ s/cp?p?$/obj/;
- $project{"WXMSWOBJS"} .= "\$(MSWDIR)\\" . $file . " "
+ $obj = "\$(MSWDIR)\\" . $file . " ";
+ #! have to split lib in 2 halves because otherwise it's too big
+ $project{$file =~ "^[a-o]" ? "WXMSWOBJS1" : "WXMSWOBJS2"} .= $obj;
+ $project{"WXCOBJS"} .= $obj if $isCFile;
}
#$}
-
# This file was automatically generated by tmake at #$ Now()
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE DOS.T!
$(COMMDIR)\y_tab.obj \
#$ ExpandList("WXCOMMONOBJS");
-MSWOBJS = #$ ExpandList("WXMSWOBJS");
+# we can't have all objects in one list because the library becomes too big
+MSWOBJS1 = #$ ExpandList("WXMSWOBJS1");
+
+MSWOBJS2 = #$ ExpandList("WXMSWOBJS2");
# TODO: Implement XPM and PNG targets in this makefile!
# $(OLEDIR)\xpmhand \
# $(OLEDIR)\pnghand \
-OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS)
+OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS1) $(MSWOBJS2)
# Normal, static library
all: $(DUMMYOBJ) $(WXDIR)\lib\wx1.lib $(WXDIR)\lib\wx2.lib $(WXDIR)\lib\wx3.lib $(WXDIR)\lib\wx4.lib
<<
#${
- $_ = $project{"WXMSWOBJS"} . $project{"WXCOMMONOBJS"} . $project{"WXGENERICOBJS"};
+ $_ = $project{"WXMSWOBJS1"} . $project{"WXMSWOBJS2"} . $project{"WXCOMMONOBJS"} . $project{"WXGENERICOBJS"};
my @objs = split;
foreach (@objs) {
- if ( $project{"WXCOBJS"} =~ /\Q$_/ ) {
- s:\\:/:;
- $text .= $_ . ': $*.c' . "\n" .
- ' cl @<<' . "\n" .
- '$(CPPFLAGS2) /Fo$@ /c /Tc $*.c' . "\n" .
- "<<\n\n";
- }
- else {
- s:\\:/:;
- $text .= $_ . ': $*.$(SRCSUFF)' . "\n" .
- ' cl @<<' . "\n" .
- '$(CPPFLAGS) /Fo$@ /c /Tp $*.$(SRCSUFF)' . "\n" .
- "<<\n\n";
- }
+ if ( $project{"WXCOBJS"} =~ / \Q$_\E / ) {
+ s:\\:/:;
+ $text .= $_ . ': $*.c' . "\n" .
+ ' cl @<<' . "\n" .
+ '$(CPPFLAGS2) /Fo$@ /c /Tc $*.c' . "\n" .
+ "<<\n\n";
+ }
+ else {
+ s:\\:/:;
+ $text .= $_ . ': $*.$(SRCSUFF)' . "\n" .
+ ' cl @<<' . "\n" .
+ '$(CPPFLAGS) /Fo$@ /c /Tp $*.$(SRCSUFF)' . "\n" .
+ "<<\n\n";
+ }
}
#$}
-
-
-# This file was automatically generated by tmake at 18:37, 1999/10/22
+# This file was automatically generated by tmake at 09:37, 1999/10/25
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE DOS.T!
#
$(COMMDIR)\zipstrm.obj \
$(COMMDIR)\zstream.obj
+# we can't have all objects in one list because the library becomes too big
MSWOBJS1 = $(MSWDIR)\accel.obj \
$(MSWDIR)\app.obj \
$(MSWDIR)\bitmap.obj \
$(MSWDIR)\minifram.obj \
$(MSWDIR)\msgdlg.obj \
$(MSWDIR)\nativdlg.obj \
- $(MSWDIR)\ownerdrw.obj \
- $(MSWDIR)\palette.obj \
- $(MSWDIR)\pen.obj
+ $(MSWDIR)\ownerdrw.obj
-MSWOBJS2 = $(MSWDIR)\penwin.obj \
+MSWOBJS2 = $(MSWDIR)\palette.obj \
+ $(MSWDIR)\pen.obj \
+ $(MSWDIR)\penwin.obj \
$(MSWDIR)\printdlg.obj \
$(MSWDIR)\printwin.obj \
$(MSWDIR)\radiobox.obj \
# Normal, static library
all: $(DUMMYOBJ) $(WXDIR)\lib\wx1.lib $(WXDIR)\lib\wx2.lib $(WXDIR)\lib\wx3.lib $(WXDIR)\lib\wx4.lib
-
$(WXDIR)\lib\wx1.lib: $(COMMONOBJS) $(PERIPH_LIBS)
-erase $(WXDIR)\lib\wx1.lib
lib /PAGESIZE:128 @<<
$(MSWDIR)/gsocket.obj: $*.c
cl @<<
-$(CPPFLAGS2) /Fo$@ /c $*.c
+$(CPPFLAGS2) /Fo$@ /c /Tc $*.c
<<
$(MSWDIR)/helpwin.obj: $*.$(SRCSUFF)