gen-vcmake.pl
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:3k
源码类别:

通讯编程

开发平台:

Visual C++

  1. #  Copyright (c) 1997 by the University of Southern California
  2. #  All rights reserved.
  3. #
  4. # This program is free software; you can redistribute it and/or
  5. # modify it under the terms of the GNU General Public License,
  6. # version 2, as published by the Free Software Foundation.
  7. #
  8. # This program is distributed in the hope that it will be useful,
  9. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  11. # GNU General Public License for more details.
  12. #
  13. # You should have received a copy of the GNU General Public License along
  14. # with this program; if not, write to the Free Software Foundation, Inc.,
  15. # 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
  16. #
  17. # The copyright of this module includes the following
  18. # linking-with-specific-other-licenses addition:
  19. #
  20. # In addition, as a special exception, the copyright holders of
  21. # this module give you permission to combine (via static or
  22. # dynamic linking) this module with free software programs or
  23. # libraries that are released under the GNU LGPL and with code
  24. # included in the standard release of ns-2 under the Apache 2.0
  25. # license or under otherwise-compatible licenses with advertising
  26. # requirements (or modified versions of such code, with unchanged
  27. # license).  You may copy and distribute such a system following the
  28. # terms of the GNU GPL for this module and the licenses of the
  29. # other code concerned, provided that you include the source code of
  30. # that other code when and as the GNU GPL requires distribution of
  31. # source code.
  32. #
  33. # Note that people who make modified versions of this module
  34. # are not obligated to grant this special exception for their
  35. # modified versions; it is their choice whether to do so.  The GNU
  36. # General Public License gives permission to release a modified
  37. # version without this exception; this exception also makes it
  38. # possible to release a modified version which carries forward this
  39. # exception.
  40. #  $Header: /cvsroot/nsnam/ns-2/bin/gen-vcmake.pl,v 1.7 2005/09/16 03:05:36 tomh Exp $
  41. #
  42. # This is not to be used as an executable. Rather, it's intended to be invoked
  43. # from Makfefile to generate a makefile.vc
  44. while (<>) {
  45.     (/^$(GEN_DIR)ns_tcl.cc/ || /^$(GEN_DIR)version.c/) && do {
  46. # print current line followed by a '-mkdir gen...'
  47. print $_;
  48. print "t-mkdir $(GEN_DIR:\\=)n";
  49. next;
  50.     };
  51.     /^makefile.vc:/ && do {
  52. # skip this line and the next two lines;
  53. <>; <>;
  54. next;
  55.     };
  56.     # Convert ptypes2tcl, change directory separator from '/' to ''
  57.     /./ptypes2tcl/ && do { 
  58. s///\/;
  59. s/ptypes2tcl/ptypes2tcl.exe/;
  60. print $_;
  61. next;
  62.     };
  63.     # Convert ptypes2tcl to ptypes2tcl.exe
  64.     /ptypes2tcl / && do {
  65. s/ptypes2tcl/ptypes2tcl.exe/;
  66. print $_;
  67. next;
  68.     };
  69.     /ptypes2tcl:/ && do {
  70. s/ptypes2tcl/ptypes2tcl.exe/;
  71. print $_;
  72. next;
  73.     };
  74.     # omit ns-autoconf.tcl, because we cannot generate it. :( 
  75.     /ns-autoconf.tcl/ && do {
  76. next;
  77.     };
  78.     /^Makefile: Makefile.in/ && do {
  79. # skip clause
  80. while (<>) {
  81.     chomp;
  82.     last if ($_ eq '');
  83. };
  84. next;
  85.     };
  86.     # remove dependence on Makefile from $(NS)
  87.     /^$(NS)/ && do {
  88. s/ Makefile//;
  89. print $_;
  90. next;
  91.     };
  92.     s/^# (!include)/!include/o;
  93.     print $_;
  94. }
  95. exit 0;