home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / kaffe-0.5p4-src.tgz / tar.out / contrib / kaffe / win32 / make.pl < prev    next >
Text File  |  1996-09-28  |  2KB  |  101 lines

  1.  
  2. # usage: kmake DIRECTORY COMPILER TYPE
  3.  
  4. print "Directory=$ARGV[0], Compiler=$ARGV[1], Type=$ARGV[2]\n";
  5. print "output written to makefile\n";
  6.  
  7. if ($ENV{"TYPE"} =~ /JIT/i) {
  8.     $type = "jit";
  9. } else {
  10.     $type = "intrp";
  11. }
  12. if ($ENV{"COMPILER"} =~ /MSVC/i) {
  13.     $compiler = "msvc";
  14.     $infile = "make.vc.in";
  15. } else {
  16.     $compiler = "bc";
  17.     $infile = "make.bc.in";
  18. }
  19.  
  20. if ($ARGV[0] =~ /KAFFEVM/i) {
  21.     $dir = "kaffevm";
  22.     $srcdir = "../../kaffevm";
  23. } elsif ($ARGV[0] =~ /KAFFE/i) {
  24.     $dir = "kaffe";
  25.     $srcdir = "../../kaffe";
  26. } elsif ($ARGV[0] =~ /KAFFEH/i) {
  27.     $dir = "kaffeh";
  28.     $srcdir = "../../kaffeh";
  29. } elsif ($ARGV[0] =~ /NATIVE/i) {
  30.     $dir = "native";
  31.     $srcdir = "../../../lib/native";
  32. } elsif ($ARGV[0] =~ /TAWT/i) {
  33.     $dir = "tawt";
  34.     $srcdir = "../../../lib/awt";
  35. }
  36.  
  37. if ($ARGV[1] =~ /MSVC/i) {
  38.     $compiler = "msvc";
  39.     $infile = "make.vc.in";
  40. } else {
  41.     $compiler = "bc";
  42.     $infile = "make.bc.in";
  43. }
  44.  
  45. if ($ARGV[2] =~ /JIT/i) {
  46.     $type = "jit";
  47. } else {
  48.     $type = "intrp";
  49. }
  50.  
  51. if ($compiler eq "bc") {
  52.     $srcdir =~ tr#/#\\#
  53. }
  54. open(INFILE, $infile) || die "Can't open $infile : $!\n";
  55. open(OUTFILE, ">makefile");
  56.  
  57. while (<INFILE>) {
  58. if ($compiler eq "bc") {
  59. #s#@srcdir@#..\\..\\..\\lib\\native#g;
  60. #s#@srcdir@#..\\..\\kaffevm#g;
  61.  
  62. s#@CC@#bcc32#g;
  63. s#@CFLAGS@#-v -y#g;
  64. s#@KAFFEVMFLAGS@#-tWD#g;
  65. s#@libdir@#c:\\kaffe\\lib#g;
  66.  
  67. } else {
  68.  
  69. #s#@srcdir@#../../../lib/native#g;
  70. #s#@srcdir@#../../kaffevm#g;
  71.  
  72. s#@CC@#cl#g;
  73. s#@CFLAGS@#/nologo /Zp1 /MDd /W3 /Gm /GX /Zi /Od \\
  74.  /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /YX \\
  75.  /c /Fo./#g;
  76. s#@KAFFEVMFLAGS@##g;
  77. s#@libdir@#c:/kaffe/lib#g;
  78. }
  79.  
  80. s#@srcdir@#$srcdir#g;
  81. s#@TYPE@#$type#g;
  82. s#@prefix@##g;
  83. s#@exec_prefix@##g;
  84. s#@INSTALL@##g;
  85. s#@INSTALL_DATA@#copy#g;
  86. s#@LDFLAGS@##g;
  87. s#@LDTAIL@##g;
  88. s#@KVER@#0.5p3#g;
  89. s#@OBJEXT@#.obj#g;
  90. s#@LIBEXT@#.dll#g;
  91. s#@PIC@##g;
  92. s#@LIBSHARE@##g;
  93.  
  94.  
  95. s#@CC@#bcc32#g;
  96. s#@CFLAGS@#-v -y#g;
  97. s#@KAFFEVMFLAGS@#-tWD#g;
  98.  
  99. print OUTFILE;
  100. }
  101.