makefile.vc
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:7k
源码类别:

通讯编程

开发平台:

Visual C++

  1. #
  2. # Copyright (c) 1993-1994 The Regents of the University of California.
  3. # All rights reserved.
  4. #
  5. # Redistribution and use in source and binary forms, with or without
  6. # modification, are permitted provided that the following conditions
  7. # are met:
  8. # 1. Redistributions of source code must retain the above copyright
  9. #    notice, this list of conditions and the following disclaimer.
  10. # 2. Redistributions in binary form must reproduce the above copyright
  11. #    notice, this list of conditions and the following disclaimer in the
  12. #    documentation and/or other materials provided with the distribution.
  13. # 3. All advertising materials mentioning features or use of this software
  14. #    must display the following acknowledgement:
  15. # This product includes software developed by the University of
  16. # California, Berkeley and the Network Research Group at
  17. # Lawrence Berkeley Laboratory.
  18. # 4. Neither the name of the University nor of the Laboratory may be used
  19. #    to endorse or promote products derived from this software without
  20. #    specific prior written permission.
  21. #
  22. # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  23. # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  24. # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  25. # ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  26. # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  27. # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  28. # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  29. # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  30. # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  31. # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  32. # SUCH DAMAGE.
  33. #
  34. # @(#) $Header: /cvsroot/otcl-tclcl/tclcl/makefile.vc,v 1.20 2006/09/28 05:34:35 tom_henderson Exp $ (LBL)
  35. #
  36. BLANK = # make a blank space.  DO NOT add anything to this line
  37. # The following will be redefined under Windows (see WIN32 lable below)
  38. CC = @CC@
  39. CPP = @CXX@
  40. LINK = $(CPP)
  41. MKDEP = ./conf/mkdep
  42. TCLSH = @V_TCLSH@
  43. TCL2C = ./tcl2c++
  44. AR = ar rc $(BLANK)
  45. RANLIB = @RANLIB@
  46. INSTALL = @INSTALL@
  47. LN = ln
  48. TEST = test
  49. RM = rm -f
  50. PERL = perl
  51. CCOPT = @V_CCOPT@
  52. STATIC = @V_STATIC@
  53. LDFLAGS = $(STATIC)
  54. LDOUT = -o $(BLANK)
  55. DEFINE = -DNO_TK @V_DEFINE@ @V_DEFINES@ @DEFS@
  56. INCLUDES = 
  57. -I. @V_INCLUDES@
  58. LIB = 
  59. @V_LIBS@
  60. CFLAGS = $(CCOPT) $(DEFINE)
  61. # Explicitly define compilation rules since SunOS 4's make doesn't like gcc.
  62. # Also, gcc does not remove the .o before forking 'as', which can be a
  63. # problem if you don't own the file but can write to the directory.
  64. .SUFFIXES: .cc # $(.SUFFIXES)
  65. .cc.o:
  66. @rm -f $@
  67. $(CPP) -c $(CFLAGS) $(INCLUDES) -o $@ $*.cc
  68. .c.o:
  69. @rm -f $@
  70. $(CC) -c $(CFLAGS) $(INCLUDES) -o $@ $*.c
  71. GEN_DIR = gen/
  72. LIB_TCLCL = @V_ALL@
  73. LIBRARY_TK = @V_LIBRARY_TK@
  74. LIBRARY_TCL = @V_LIBRARY_TCL@
  75. TCL_76_LIBRARY_FILES = 
  76. $(LIBRARY_TCL)/init.tcl
  77. TCL_BASE_LIBRARY_FILES= 
  78. $(LIBRARY_TCL)/init.tcl 
  79. $(LIBRARY_TCL)/history.tcl 
  80. $(LIBRARY_TCL)/word.tcl
  81. TCL_80_LIBRARY_FILES = 
  82. $(TCL_BASE_LIBRARY_FILES) 
  83. $(LIBRARY_TCL)/http2.0/http.tcl
  84. TCL_81_LIBRARY_FILES = $(TCL_80_LIBRARY_FILES)
  85. TCL_82_LIBRARY_FILES = 
  86. $(TCL_BASE_LIBRARY_FILES) 
  87. $(LIBRARY_TCL)/http2.1/http.tcl
  88. TCL_83_LIBRARY_FILES = 
  89. $(TCL_BASE_LIBRARY_FILES) 
  90. $(LIBRARY_TCL)/http2.[34]/http.tcl
  91. TCL_835_LIBRARY_FILES = 
  92. $(TCL_BASE_LIBRARY_FILES) 
  93. $(LIBRARY_TCL)/http2.4/http.tcl
  94. TCL_84_LIBRARY_FILES = 
  95.         $(TCL_BASE_LIBRARY_FILES) 
  96. $(LIBRARY_TCL)/http2.4/http.tcl
  97. TCL_LIBRARY_FILES = 
  98. @V_TCL_LIBRARY_FILES@
  99. #TKDOSNAMES = 
  100. # $(LIBRARY_TK)/optionMenu.tcl 
  101. # $(LIBRARY_TK)/scrollbar.tcl
  102. TKDOSNAMES = @V_TKDOSNAMES@
  103. OBJ_COMPAT_C = 
  104. # WIN32: uncomment the following line to be use with vc++ nmake
  105. !include <conf/makefile.win>
  106. TK_LIBRARY_FILES = 
  107. $(TCL_LIBRARY_FILES) 
  108. $(LIBRARY_TK)/tk.tcl 
  109. $(LIBRARY_TK)/clrpick.tcl 
  110. $(LIBRARY_TK)/comdlg.tcl 
  111. $(LIBRARY_TK)/button.tcl 
  112. $(LIBRARY_TK)/dialog.tcl 
  113. $(LIBRARY_TK)/entry.tcl 
  114. $(LIBRARY_TK)/focus.tcl 
  115. $(LIBRARY_TK)/listbox.tcl 
  116. $(LIBRARY_TK)/menu.tcl 
  117. $(LIBRARY_TK)/palette.tcl 
  118. $(LIBRARY_TK)/scale.tcl 
  119. $(LIBRARY_TK)/tearoff.tcl 
  120. $(LIBRARY_TK)/text.tcl 
  121. $(LIBRARY_TK)/tkfbox.tcl 
  122. $(LIBRARY_TK)/msgbox.tcl 
  123. $(TKDOSNAMES)
  124. CONSOLE_FILES = $(LIBRARY_TK)/console.tcl
  125. OBJ_CC = Tcl.o Tcl2.o idlecallback.o iohandler.o timer.o rate-variable.o 
  126. tracedvar.o 
  127. embedded-tcl.o embedded-tk.o embedded-tclobj.o $(OBJ_COMPAT_CC)
  128. SRC = $(OBJ_CC:.o=.cc) $(OBJ_COMPAT_C:.o=.c)
  129. all: $(TCL2C) $(LIB_TCLCL)
  130. $(TCL2C): tcl2c++.o
  131. $(RM) $@
  132. $(LINK) $(STATIC) $(LDFLAGS) $(LDOUT)$@ tcl2c++.o
  133. # We used to link to libTcl.a for backwards compatibilty, but no more.
  134. $(LIB_TCLCL): $(OBJ_CC) $(OBJ_COMPAT_C)
  135. $(RM) $@
  136. $(AR)$@ $(OBJ_CC) $(OBJ_COMPAT_C)
  137. $(RANLIB) $@
  138. #
  139. # pass-1 embedded tcl files
  140. #
  141. embedded-tcl.cc: $(TCL_LIBRARY_FILES) $(TCL2C)
  142. $(RM) $@
  143. $(TCL2C) et_tcl $(TCL_LIBRARY_FILES) > $@
  144. embedded-tk.cc: $(TK_LIBRARY_FILES) $(TCL2C)
  145. $(RM) $@
  146. $(TCL2C) et_tk $(TK_LIBRARY_FILES) > $@
  147. embedded-tclobj.cc: tcl-object.tcl tcl-import.tcl tcl-http.tcl $(TCL2C)
  148. $(RM) $@
  149. $(TCL2C) et_tclobject tcl-object.tcl tcl-import.tcl tcl-http.tcl > $@
  150. #
  151. # pass-1 console tcl files
  152. #
  153. embedded-console.cc: $(CONSOLE_FILES) $(TCL2C)
  154. $(RM) embedded-console.o
  155. $(TCL2C) et_console $(CONSOLE_FILES) > embedded-console.cc
  156. install: force
  157. $(INSTALL) -m 644 *.h @prefix@/include
  158. $(INSTALL) tcl2c++ @prefix@/bin
  159. $(INSTALL) $(LIB_TCLCL) @prefix@/lib
  160. $(RANLIB)  @prefix@/lib/$(LIB_TCLCL)
  161. # libTcl is no longer installed as of 13-Nov-99
  162. # -test -f @prefix@/lib/libTcl.a && rm -f @prefix@/lib/libTcl.a || true
  163. # ln -s @prefix@/lib/libtclcl.a @prefix@/lib/libTcl.a
  164. clean:
  165. $(RM) $(LIB_TCLCL) $(TCL2C) *.o config.log config.cache 
  166. embedded-tk.cc embedded-tclobj.cc embedded-tcl.cc
  167. realclean:
  168. $(MAKE) clean
  169. rm -f Makefile config.log config.cache config.status
  170. distclean: realclean
  171. tags: force
  172. ctags -tdwC $(SRC) *.h $(TKSRC)/*.c $(TKSRC)/*.h 
  173. $(TCLSRC)/*.c $(TCLSRC)/*.h
  174. force:
  175. depend:
  176. $(MKDEP) $(INCLUDES) $(DEFINE) $(SRC)
  177. tar: force
  178. tar=tclcl-`cat VERSION`-@V_TAR_TARGET@.tar.gz ; 
  179. rm -f $$tar ; 
  180. @V_TARCMD@ - README CHANGES.html @V_TAR_EXTRA@ $(ALL) | 
  181. gzip -c > $$tar
  182. srctar: force
  183. @cwd=`pwd` ; dir=`basename $$cwd` ; 
  184.     name=tclcl-`cat VERSION | tr A-Z a-z` ; 
  185.     tar=tclcl-src-`cat VERSION`.tar.gz ; 
  186.     list="" ; 
  187.     for i in `cat FILES` ; do list="$$list $$name/$$i" ; done; 
  188.     echo 
  189.     "(rm -f $$tar; cd .. ; ln -s $$dir $$name)" ; 
  190.      (rm -f $$tar; cd .. ; ln -s $$dir $$name) ; 
  191.     echo 
  192.     "(cd .. ; tar cfh $$tar [lots of files])" ; 
  193.      (cd .. ; tar cfh - $$list) | gzip -c > $$tar ; 
  194.     echo 
  195.     "rm ../$$name; chmod 444 $$tar" ;  
  196.      rm ../$$name; chmod 444 $$tar
  197. # Create makefile.vc for Win32 development by replacing:
  198. # "# !include ..."  ->  "!include ..."
  199. makefile.vc: Makefile.in
  200. $(PERL) -pe 's/^# (!include)/!include/o' < Makefile.in > makefile.vc