1 #!#############################################################################
3 #! Purpose: tmake template file from which makefile.sc is generated by running
4 #! tmake -t sc wxwin.pro -o makefile.sc
5 #! Author: Vadim Zeitlin
8 #!#############################################################################
11 #! include the code which parses filelist.txt file and initializes
12 #! %wxCommon, %wxGeneric and %wxMSW hashes.
13 IncludeTemplate("filelist.t");
15 #! now transform these hashes into $project tags
16 foreach $file (sort keys %wxGeneric) {
18 if ( $wxGeneric{$file} =~ /\b(PS|G|16|U)\b/ ) {
19 $tag = "WXNONESSENTIALOBJS";
22 $tag = "WXGENERICOBJS";
25 $file =~ s/cp?p?$/obj/;
26 $project{$tag} .= '$(GENDIR)\\' . $file . " "
29 foreach $file (sort keys %wxHTML) {
30 next if $wxHTML{$file} =~ /\b16\b/;
32 $file =~ s/cp?p?$/obj/;
33 $project{"WXHTMLOBJS"} .= '$(HTMLDIR)\\' . $file . " "
36 foreach $file (sort keys %wxCommon) {
37 next if $wxCommon{$file} =~ /\b(16|U)\b/;
39 $file =~ s/cp?p?$/obj/;
40 $project{"WXCOMMONOBJS"} .= '$(COMMDIR)\\' . $file . " "
43 foreach $file (sort keys %wxMSW) {
44 #! these files don't compile with SC++ 6
45 #! next if $file =~ /^(joystick|pnghand)\./;
47 next if $wxMSW{$file} =~ /\b16\b/;
49 my $isOleObj = $wxMSW{$file} =~ /\bO\b/;
50 $file =~ s/cp?p?$/obj/;
51 $project{"WXMSWOBJS"} .= '$(MSWDIR)\\';
52 $project{"WXMSWOBJS"} .= 'ole\\' if $isOleObj;
53 $project{"WXMSWOBJS"} .= $file . " "
57 # This file was automatically generated by tmake
58 # DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE SC.T!
60 # Digital mars makefile
61 # was Symantec C++ makefile for the msw objects
63 # called from src\makefile.sc
65 # configuration section (see src\makefile.sc) ###########################
73 LIBTARGET = $(LIBDIR)\wx$(SC_SUFFIX).lib
77 # end of configuration section ##########################################
79 GENDIR=$(WXDIR)\src\generic
80 COMMDIR=$(WXDIR)\src\common
81 HTMLDIR=$(WXDIR)\src\html
83 MSWDIR=$(WXDIR)\src\msw
85 GENERICOBJS= #$ ExpandList("WXGENERICOBJS");
87 COMMONOBJS = #$ ExpandList("WXCOMMONOBJS");
89 HTMLOBJS = #$ ExpandList ("WXHTMLOBJS");
91 MSWOBJS = #$ ExpandList("WXMSWOBJS");
93 # Add $(NONESSENTIALOBJS) if wanting generic dialogs, PostScript etc.
94 OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) $(HTMLOBJS)
96 all: MAKEARCHDIR MAKELIBS PCH $(LIBTARGET) zlib png jpeg tiff regex
99 @if not exist $(MSWINCDIR)\setup.h copy $(MSWINCDIR)\setup0.h $(MSWINCDIR)\setup.h
100 @if not exist $(ARCHINCDIR)\wx\setup.h mkdir $(ARCHINCDIR)
101 @if not exist $(ARCHINCDIR)\wx\setup.h mkdir $(ARCHINCDIR)\wx
102 @if not exist $(ARCHINCDIR)\wx\setup.h copy $(MSWINCDIR)\setup.h $(ARCHINCDIR)\wx\setup.h
103 @if not exist $(WXOUTDIR)\nul mkdir $(WXOUTDIR)
105 #build our own copies of missing libraries
107 implib /s $(LIBDIR)\$(SHELLLIB) $(LIBDIR)\$(SC_SUFFIX)\$(SHELLLIB).def
108 implib /s $(LIBDIR)\$(WINSOCKLIB) $(LIBDIR)\$(SC_SUFFIX)\$(WINSOCKLIB).def
110 $(LIBTARGET): $(OBJECTS)
112 *lib /PAGESIZE:512 $(LIBTARGET) y $(OBJECTS), nul;
114 clean: clean_msw clean_zlib clean_png clean_jpeg clean_tiff clean_regex clean_pch
117 -del $(COMMDIR)\*.obj
120 -del $(HTMLDIR)\*.obj
126 PCH: $(INCDIR)\wx\wxprec.h
127 dmc $(CPPFLAGS) $(CFLAGS) $(INCLUDE) -HF$(WXOUTDIR)\wxprec.SYM -o$(WXOUTDIR)\wxprec.PCO $(INCDIR)\wx\wxprec.h
130 del $(WXOUTDIR)\*.sym
131 del $(WXOUTDIR)\*.PCO
135 make -f $(WXDIR)\src\png\makefile.sc FINAL=$(FINAL)
138 make -f $(WXDIR)\src\png\makefile.sc clean
141 make -f $(WXDIR)\src\zlib\makefile.sc FINAL=$(FINAL)
144 make -f $(WXDIR)\src\zlib\makefile.sc clean
147 make -f $(WXDIR)\src\jpeg\makefile.sc FINAL=$(FINAL)
150 make -f $(WXDIR)\src\jpeg\makefile.sc clean
153 make -f $(WXDIR)\src\regex\makefile.sc FINAL=$(FINAL)
156 make -f $(WXDIR)\src\regex\makefile.sc clean
159 make -f $(WXDIR)\src\tiff\makefile.sc FINAL=$(FINAL)
162 make -f $(WXDIR)\src\tiff\makefile.sc clean
165 self : $(WXWIN)\distrib\msw\tmake\filelist.txt $(WXWIN)\distrib\msw\tmake\$(MFTYPE).t
166 perl -x$(WXWIN)\distrib\msw\tmake -S tmake -t$(MFTYPE) wxwin.pro -o $(WXWIN)\distrib\msw\tmake\makefile.sc
167 copy $(WXWIN)\distrib\msw\tmake\makefile.$(MFTYPE) $(WXWIN)\src\msw