1 # makefile.win --
2 #
3 # FIXME: This file needs a description here.
4 #
5 # Copyright (c) 1994-2002 The Regents of the University of California.
6 # All rights reserved.
7 #
8 # Redistribution and use in source and binary forms, with or without
9 # modification, are permitted provided that the following conditions are met:
10 #
11 # A. Redistributions of source code must retain the above copyright notice,
12 # this list of conditions and the following disclaimer.
13 # B. Redistributions in binary form must reproduce the above copyright notice,
14 # this list of conditions and the following disclaimer in the documentation
15 # and/or other materials provided with the distribution.
16 # C. Neither the names of the copyright holders nor the names of its
17 # contributors may be used to endorse or promote products derived from this
18 # software without specific prior written permission.
19 #
20 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
21 # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23 # ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR
24 # ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25 # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
26 # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
27 # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
28 # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 #
31 # @(#) $Header: /usr/mash/src/repository/conf/makefile.win,v 1.8 2003/09/09 15:42:05 djones Exp $
32
33 # Please change this path to the correct one on your system.
34 #MSVCDIR = C:\Program Files\Microsoft Visual Studio .NET\VC7
35 #TOOLS32 = $(MSVCDIR)
36 #PATH = "$(MSVCDIR)";$(PATH)
37 #INCLUDE = $(MSVCDIR)\PlatformSDK\include
38 # Set this to the _absolute_ path to where ns-allinone is installed.
39 # Tcl/Tk/otcl/tclcl/ns should all be located under this path.
40 LOCAL_SRC = ..
41
42 # comment this out to build with debug options
43 NODEBUG=1
44 TARGETOS = BOTH
45
46 # uncomment this out to build static version
47 STATIC_LIB=1
48
49 !include <win32.mak>
50 #!include <$(INCLUDE)/win32.mak>
51
52 cc32 = cl
53 #cc32 = c:\progra~1\compuware\boundschecker\nmcl
54 rc32 = rc
55 link32 = link
56 #link32 = c:\progra~1\compuware\boundschecker\nmlink
57
58 TCL_PATCHLEVEL = 8.3.3
59 TCL_DOTVERSION = 8.3
60 TCL_VERSION = $(TCL_DOTVERSION:.=)
61
62 !if exist($(LOCAL_SRC)\tcl$(TCL_PATCHLEVEL))
63 TCL_SUFFIX = $(TCL_PATCHLEVEL)
64 !else if exist($(LOCAL_SRC)\tcl$(TCL_DOTVERSION))
65 TCL_SUFFIX = $(TCL_DOTVERSION)
66 !else
67 TCL_SUFFIX =
68 !endif
69
70 TK_DIR = $(LOCAL_SRC)\tk$(TCL_SUFFIX)
71 TCL_DIR = $(LOCAL_SRC)\tcl$(TCL_SUFFIX)
72 OTCL_DIR = $(LOCAL_SRC)\otcl
73 TCLCL_DIR = $(LOCAL_SRC)\tclcl
74
75 !ifdef STATIC_LIB
76 LIB_TK = -LIBPATH:$(TK_DIR)\win\Release tk$(TCL_VERSION)s.lib
77 LIB_TCL = -LIBPATH:$(TCL_DIR)\win\Release tcl$(TCL_VERSION)s.lib
78 !else
79 LIB_TK = -LIBPATH:$(TK_DIR)\win\Release tk$(TCL_VERSION).lib
80 LIB_TCL = -LIBPATH:$(TCL_DIR)\win\Release tcl$(TCL_VERSION).lib
81 !endif
82 LIB_OTCL = -LIBPATH:$(OTCL_DIR) otcl.lib
83 LIB_TCLCL = $(TCLCL_DIR)\tclcl.lib
84
85 LIBRARY_TK = $(TK_DIR)\library
86 LIBRARY_TCL = $(TCL_DIR)\library
87
88 TCL_LIBRARY_FILES = $(TCL_83_LIBRARY_FILES)
89 TKDOSNAMES = $(LIBRARY_TK)/optMenu.tcl $(LIBRARY_TK)/scrlbar.tcl
90
91 CC = $(cc32)
92 CPP = $(cc32)
93 LINK = $(link32)
94 MKDEP = makedep2
95 TCLSH = $(TCL_DIR)\win\Release\tclsh83.exe
96 TCL2C = $(TCLCL_DIR)\tcl2c++.exe
97 AR = lib -nologo -out:
98
99 RANLIB = echo
100 INSTALL = echo
101 LN = echo
102 TEST = echo
103 RM = erase
104 PERL = perl
105
106
107 !IFDEF NODEBUG
108 CCOPT = -Ox -Zm1000
109 !ELSE
110 CCOPT = -Gm -Gi -YX -Zm1000
111 !ENDIF
112
113 # Include STATIC_LIB so that main.cc will be properly compiled for nam.
114 !ifdef STATIC_LIB
115 CCOPT = -DSTATIC_BUILD=1 -DSTATIC_LIB $(CCOPT)
116 !endif
117
118 !IFDEF NODEBUG
119 #LDFLAGS = -LIBPATH:"$(TOOLS32)\platformsdk\lib" -LIBPATH:"$(TOOLS32)\lib" $(lflags) $(conlibsdll)
120 LDFLAGS = $(lflags) $(conlibsdll)
121 !ELSE
122 #LDFLAGS = -LIBPATH:"$(TOOLS32)\platformsdk\lib" -LIBPATH:"$(TOOLS32)\lib" /NODEFAULTLIB /INCREMENTAL:NO /DEBUG /NOLOGO $(conlibsdll)
123 LDFLAGS = /NODEFAULTLIB /INCREMENTAL:NO /DEBUG /NOLOGO $(conlibsdll)
124 !ENDIF
125 STATIC =
126 LDOUT = -out:
127
128 DEFINE = -DNO_TK
129
130 INCLUDE_TK = -I$(TK_DIR)\win -I$(TK_DIR)\generic
131 INCLUDE_TCL = -I$(TCL_DIR)\win -I$(TCL_DIR)\generic
132 INCLUDE_OTCL = -I$(OTCL_DIR)
133 INCLUDE_TCLCL = -I$(TCLCL_DIR)
134 INCLUDE_X11 = -I$(TK_DIR)\xlib
135 #INCLUDE_MISC = -I"$(TOOLS32)\include"
136
137 # Disable building STL-dependent object files because VC6.x does
138 # not seem to support G++-style (2.8.0 and up) STL.
139 OBJ_STL =
140 NS_TCL_LIB_STL=
141
142 OBJ_COMPAT_C = compat/gettod.o compat/win32.o embedded-console.o
143
144
145 # don't want system files to be added when making dependencies
146 DEPEND_INCS = \
147 $(INCLUDE_TK) $(INCLUDE_TCL) \
148 $(INCLUDE_OTCL) $(INCLUDE_TCLCL) \
149 $(INCLUDE_X11) $(MD_INC) -I.
150 INCLUDES = $(DEPEND_INCS) $(INCLUDE_MISC)
151
152 LIBS = $(LIB_TCLCL) $(LIB_OTCL) \
153 $(LIB_TK) $(LIB_TCL) \
154 libci.lib msvcirt.lib $(guilibsdll)
155 # $(LIB_GRABBER) $(LIB_GSM) \
156 # winmm.lib
157
158 !ifdef STATIC_LIB
159 CVARS = $(cvarsmt)
160 !else
161 CVARS = $(cvarsdll)
162 !endif
163
164 CFLAGS = $(cdebug:Z7=Zi) $(cflags) $(CVARS) $(CCOPT) $(DEFINE)
165
166 .SUFFIXES : .cc
167
168
169 # add -FR$*.sbr if you want browse info
170 .cc.o:
171 $(cc32) -c $(CFLAGS) $(INCLUDES) -Fo$@ -Tp $<
172
173 .c.o:
174 $(cc32) -c $(CFLAGS) $(INCLUDES) -Fo$@ $<
175
176
177 GEN_DIR = gen\\
178 LIB_DIR = lib\\
179 NS = ns.exe
180 NSX = nsx.exe
181 NAM = nam.exe
This page was automatically generated by the
LXR engine.
Visit the LXR main site for more
information.