]> git.saurik.com Git - wxWidgets.git/blobdiff - distrib/msw/tmake/bcc.t
matching changes for makefile.g95
[wxWidgets.git] / distrib / msw / tmake / bcc.t
index b3c3ffe1110698c8c29f5a28aa7afbfbeabab290..e4683f6ecad254e39753a3a39d2cffe35334e09f 100644 (file)
@@ -2,6 +2,11 @@
 #! File:    bcc.t
 #! Purpose: tmake template file from which makefile.bcc is generated by running
 #!          tmake -t bcc wxwin.pro -o makefile.bcc
+#!
+#!          TODO:
+#!          - resourc2.obj is not correctly generated (see list and target).
+#!          - cpp is incorrectly substituted into filenames containing 'obj'
+#!
 #! Author:  Vadim Zeitlin
 #! Created: 14.07.99
 #! Version: $Id$
     #! now transform these hashes into $project tags
     foreach $file (sort keys %wxGeneric) {
         my $tag = "";
-        next if $wxGeneric{$file} =~ /\b(PS|G|U)\b/;
+        if ( $wxGeneric{$file} =~ /\b(PS|G|U)\b/ ) {
+            #! Need this file too since it has wxGenericPageSetupDialog
+            next unless $file =~ /^prntdlgg\./;
+        }
 
         $file =~ s/cp?p?$/obj/;
         $project{"WXGENERICOBJS"} .= "\$(MSWDIR)\\" . $file . " "
         #! needs extra files (sql*.h) so not compiled by default.
         next if $file =~ /^odbc\./;
 
+        $isCFile = $file =~ /\.c$/;
         $file =~ s/cp?p?$/obj/;
-        $project{"WXCOMMONOBJS"} .= "\$(MSWDIR)\\" . $file . " "
+        $obj = "\$(MSWDIR)\\" . $file . " ";
+        $project{"WXCOMMONOBJS"} .= $obj;
+        $project{"WXCOBJS"} .= $obj if $isCFile;
     }
 
     #! special hack for Borland in 16 bits needs this file
-    $project{"WXCOMMONOBJS"} .= '${MSWDIR}\resourc2.cpp';
+    $project{"WXCOMMONOBJS"} .= '${MSWDIR}\resourc2.obj';
 
     foreach $file (sort keys %wxMSW) {
         #! 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 . " ";
+        $project{"WXMSWOBJS"} .= $obj;
+        $project{"WXCOBJS"} .= $obj if $isCFile;
     }
 #$}
 
@@ -84,18 +98,18 @@ THISDIR = $(WXDIR)\src\msw
 # Please set these according to the settings in wx_setup.h, so we can include
 # the appropriate libraries in wx.lib
 USE_CTL3D=1
-USE_XPM_IN_MSW=0
+USE_XPM_IN_MSW=1
 
 PERIPH_LIBS=
 PERIPH_TARGET=
 PERIPH_CLEAN_TARGET=
 
 !if "$(USE_CTL3D)" == "1"
-PERIPH_LIBS=$(BCCDIR)\lib\ctl3dv2.lib $(PERIPH_LIBS)
+PERIPH_LIBS=$(WXDIR)\lib\bcc16\ctl3dv2.lib $(PERIPH_LIBS)
 !endif
 
 !if "$(USE_XPM_IN_MSW)" == "1"
-PERIPH_LIBS=$(WXDIR)\xpm.lib $(PERIPH_LIBS)
+PERIPH_LIBS=$(WXDIR)\lib\xpm.lib $(PERIPH_LIBS)
 PERIPH_TARGET=xpm $(PERIPH_TARGET)
 PERIPH_CLEAN_TARGET=clean_xpm $(PERIPH_CLEAN_TARGET)
 !endif
@@ -133,8 +147,11 @@ wx:    $(CFG) $(DUMMY).obj $(OBJECTS) $(PERIPH_TARGET) $(LIBTARGET)
 
 $(LIBTARGET): $(DUMMY).obj $(OBJECTS) $(PERIPH_LIBS)
        erase $(LIBTARGET)
-       tlib $(LIBTARGET) /P1024 @&&!
-+$(OBJECTS:.obj =.obj +) +$(PERIPH_LIBS:.lib =.lib +)
+       tlib $(LIBTARGET) /P2048 @&&!
++$(COMMONOBJS:.obj =.obj +)\
++$(GENERICOBJS:.obj =.obj +)\
++$(MSWOBJS:.obj =.obj +)\
++$(PERIPH_LIBS:.lib =.lib +)
 !
 
 dummy.obj: dummy.$(SRCSUFF) $(LOCALHEADERS) $(BASEHEADERS) $(WXDIR)\include\wx\wx.h
@@ -159,7 +176,8 @@ $(COMMDIR)\lex_yy.c:    $(COMMDIR)\doslex.c
     my @objs = split;
     foreach (@objs) {
         $text .= $_ . ": ";
-        s/obj/\$(SRCSUFF)/;
+        $suffix = $project{"WXCOBJS"} =~ /\Q$_/ ? "c" : '$(SRCSUFF)';
+        s/obj$/$suffix/;
         $text .= $_ . "\n\n";
     }
 #$}
@@ -172,8 +190,9 @@ $(COMMDIR)\lex_yy.c:    $(COMMDIR)\doslex.c
     my @objs = split;
     foreach (@objs) {
         $text .= $_ . ": ";
+        $suffix = $project{"WXCOBJS"} =~ /\Q$_/ ? "c" : '$(SRCSUFF)';
         s/MSWDIR/COMMDIR/;
-        s/obj/\$(SRCSUFF)/;
+        s/obj$/$suffix/;
         $text .= $_ . "\n\n";
     }
 #$}
@@ -188,7 +207,7 @@ $(COMMDIR)\lex_yy.c:    $(COMMDIR)\doslex.c
     foreach (@objs) {
         $text .= $_ . ": ";
         s/MSWDIR/GENDIR/;
-        s/obj/\$(SRCSUFF)/;
+        s/obj$/\$(SRCSUFF)/;
         $text .= $_ . "\n\n";
     }
 #$}
@@ -208,29 +227,20 @@ all_execs:
     make -f makefile.bcc all_execs
     cd $(WXDIR)\src\msw
 
-all_libs:
-    cd $(WXDIR)\src\msw
-    make -f makefile.bcc ctl3d dib fafa gauge hytext itsy prologio rcparser wx wxgraph\
-          wxstring wxtree mfutils # wxxpm
-
-all_contribs:
-    cd $(WXDIR)\src\msw
-    make -f makefile.bcc ctl3d fafa wxstring itsy gauge # wxxpm
-
 # CONTRIB
-ctl3d:  $(CFG)
-        cd $(WXDIR)\src\msw\ctl3d\borland
-        make -f makefile.bcc -DCFG=$(CFG)
-        cd $(WXDIR)\src\msw
-
-wxxpm: $(CFG)
+xpm:   $(CFG)
        cd $(WXDIR)\src\xpm
        make -f makefile.bcc -DCFG=$(CFG) -DFINAL=$(FINAL) -DWXWIN=$(WXDIR) -DDEBUG=$(DEBUG)
        cd $(WXDIR)\src\msw
 
+clean_xpm:     $(CFG)
+       cd $(WXDIR)\src\xpm
+       make -f makefile.bcc clean
+       cd $(WXDIR)\src\msw
+
 png:    $(CFG)
         cd $(WXDIR)\src\png
-        make -f makefile.bcc 
+        make -f makefile.bcc
         cd $(WXDIR)\src\msw
 
 clean_png:
@@ -265,7 +275,7 @@ $(CFG): makefile.bcc
 -Fs-
 -Vf
 -Ff=4
--I$(WXINC);$(BCCDIR)\include;$(WXDIR)/src/png;$(WXDIR)/src/zlib;$(WXDIR)/src/xpm
+-I$(WXINC);$(BCCDIR)\include;$(WXDIR)/src/generic;$(WXDIR)/src/png;$(WXDIR)/src/zlib;$(WXDIR)/src/xpm
 -I$(WXDIR)\include\wx\msw\gnuwin32
 -L$(BCCDIR)\lib
 -D__WXWIN__
@@ -297,3 +307,11 @@ clean: $(PERIPH_CLEAN_TARGET)
 cleanall: clean
 
 
+MFTYPE=bcc
+# Can't use this or we'll have to distribute all tmake files with wxWindows
+#makefile.$(MFTYPE) : $(WXWIN)\distrib\msw\tmake\filelist.txt $(WXWIN)\distrib\msw\tmake\$(MFTYPE).t
+
+self:
+       cd $(WXWIN)\distrib\msw\tmake
+       tmake -t $(MFTYPE) wxwin.pro -o makefile.$(MFTYPE)
+       copy makefile.$(MFTYPE) $(WXWIN)\src\msw