Borland makefile should now work sanely with the free-beer bcc55
authorsimon <simon@cda61777-01e9-0310-a592-d414129be87e>
Wed, 8 Mar 2000 09:41:17 +0000 (09:41 +0000)
committersimon <simon@cda61777-01e9-0310-a592-d414129be87e>
Wed, 8 Mar 2000 09:41:17 +0000 (09:41 +0000)
git-svn-id: svn://svn.tartarus.org/sgt/putty@395 cda61777-01e9-0310-a592-d414129be87e

mkfiles.pl
win_res.rc

index ceb5e8e..33b6a71 100755 (executable)
@@ -108,7 +108,7 @@ select STDOUT; close OUT;
 ##-- Borland makefile
 open OUT, ">Makefile.bor"; select OUT;
 print
-"# Makefile for PuTTY under Borland C.\n";
+"# Makefile for PuTTY under Borland C++.\n";
 # bcc32 command line option is -D not /D
 ($_ = $store{"help"}) =~ s/=\/D/=-D/gs;
 print $_;
@@ -129,8 +129,8 @@ print
 ".c.obj:\n".
 "\tbcc32 \$(COMPAT) \$(FWHACK) \$(CFLAGS) /c \$*.c\n".
 ".rc.res:\n".
-"\tbrc32 \$(FWHACK) \$(RCFL) -i \$(BCB)\\include \\\n".
-"\t\t-r -DWIN32 -D_WIN32 -DWINVER=0x0400 \$*.rc\n".
+"\tbrcc32 \$(FWHACK) \$(RCFL) -i \$(BCB)\\include \\\n".
+"\t\t-r -DNO_WINRESRC_H -DWIN32 -D_WIN32 -DWINVER=0x0400 \$*.rc\n".
 "\n".
 "OBJ=obj\n".
 "RES=res\n".
@@ -142,17 +142,21 @@ print map { " $_.exe" } @projects;
 print "\n\n";
 foreach $p (@projects) {
   print $p, ".exe: ", &project($p), " $p.rsp\n";
-  $tw = $gui{$p} ? " -tW" : "";
-  print "\tbcc32$tw -e$p.exe \@$p.rsp\n";
-  print "\tbrc32 -fe$p.exe " . (join " ", &project("resources.$p")) . "\n\n";
+  $ap = $gui{$p} ? "" : " -ap";
+  print "\tilink32$ap -Gn -L\$(BCB)\\lib \@$p.rsp\n\n";
 }
 foreach $p (@projects) {
   print $p, ".rsp: \$(MAKEFILE)\n";
-  $arrow = ">";
-  foreach $i (&projlist("objects.$p")) {
-    print "\techo \$($i) $arrow $p.rsp\n";
-    $arrow = ">>";
+  $c0w = $gui{$p} ? "c0w32" : "c0x32";
+  print "\techo $c0w + > $p.rsp\n";
+  @objlines = &projlist("objects.$p");
+  for ($i=0; $i<=$#objlines; $i++) {
+    $plus = ($i < $#objlines ? " +" : "");
+    print "\techo \$($objlines[$i])$plus >> $p.rsp\n";
   }
+  print "\techo $p.exe >> $p.rsp\n";
+  print "\techo nul,cw32 import32, >> $p.rsp\n";
+  print "\techo " . (join " ", &project("resources.$p")) . " >> $p.rsp\n";
   print "\n";
 }
 print $store{"dependencies"};
@@ -168,7 +172,9 @@ print
 "\tdel *.res\n".
 "\tdel *.pch\n".
 "\tdel *.aps\n".
-"\tdel *.ilk\n".
+"\tdel *.il*\n".
 "\tdel *.pdb\n".
-"\tdel *.rsp\n";
+"\tdel *.rsp\n".
+"\tdel *.tds\n".
+"\tdel *.\$\$\$\$\$\$\n";
 select STDOUT; close OUT;
index 8db12b8..093ffef 100644 (file)
@@ -1,4 +1,7 @@
+/* Some compilers, like Borland, don't have winresrc.h */
+#ifndef NO_WINRESRC_H
 #include <winresrc.h>
+#endif
 
 /* Some systems don't define this, so I do it myself if necessary */
 #ifndef TCS_MULTILINE