/[ascend]/trunk/tcltk98/jam/Jamrules.in
ViewVC logotype

Contents of /trunk/tcltk98/jam/Jamrules.in

Parent Directory Parent Directory | Revision Log Revision Log


Revision 51 - (show annotations) (download)
Sat May 14 01:33:48 2005 UTC (15 years, 2 months ago) by jds
File size: 8507 byte(s)
Minor upgrade to jam build files (correct typo in compiler selection logic).
1 #
2 # Jamrules support file for building Ascend4
3 # (see http://www.freetype.org/jam/index.html)
4 #
5 # This file is part of the Ascend Build System.
6 #
7 # Copyright (C) 2004 Jerry D. St.Clair
8 #
9 # The Ascend Build System is free software; you can redistribute
10 # it and/or modify it under the terms of the GNU General Public
11 # License as published by the Free Software Foundation; either
12 # version 2 of the License, or (at your option) any later version.
13 #
14 # This program is distributed in hope that it will be useful,
15 # but WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 # GNU General Public License for more details.
18 #
19 # You should have received a copy of the GNU General Public License
20 # along with the program; if not, write to the Free Software
21 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139 USA.
22 # Check the file named COPYING.
23 #---------------------------------------------------------------------------
24 #
25 # UNDER CONSTRUCTION
26 #
27 # This is a template Jamrules file which supports building the
28 # Tcl/Tk version of the Ascend modeling system, as well as a static
29 # library of Tcl/Tk interface functionality. The Ascend jam build
30 # system currently supports building the libraries using the MSVC,
31 # Borland, MinGW, and Watcom compilers.
32 #
33 # INSTALLATION IS NOT WORKING IN THE CURRENT VERSION.
34 #
35 # It is not currently customized by the Ascend configure mechanism,
36 # although this may be implemented in the future.
37 #
38 # Users should copy/rename this file to 'Jamrules', then modify
39 # the settings manually for their particular system. Ascend
40 # cannot be built by jam unless the Jambase file is present.
41 #
42 # User-customized Jamrules files should not be placed in version
43 # control. Only the Jamrules.in template should be versioned.
44 #
45 #---------------------------------------------------------------------------
46
47 # root directory for installation
48 prefix = c:\\dev ;
49 INSTALL_ROOT = $(prefix)$(SLASH)Ascend4_install ;
50
51 # name of the builder of the executable (in double quotes)
52 BUILD_CREDIT = "anonymous" ;
53
54 # Root dir of Ascend base library sources.
55 ASC_BASE_ROOT = ..$(SLASH)..$(SLASH)base$(SLASH)generic ;
56
57 # Root dir of Ascend libraries - will be qualified for compiler & build type
58 ASC_BASE_LIBDIR = ..$(SLASH)..$(SLASH)base$(SLASH)jam ;
59
60 # root directories for Tcl and Tk libraries
61 TCL_DIR = ..$(SLASH)..$(SLASH)..$(SLASH)Tcl ;
62 TK_DIR = $(TCL_DIR) ;
63
64 # Set the Tcl/Tk/tkTable import library names here to override the
65 # default, compiler-specific names. Comment out to use defaults.
66 # TCL_LIBRARY = tcl80$(SUFLIB) ;
67 # TK_LIBRARY = tk80$(SUFLIB) ;
68 # TKTABLE_LIB = tkTable$(SUFLIB) ;
69
70 EXE_NAME = Ascend4 ;
71 ASC_TCLTK98_LIBNAME = libasc_tcltk98 ;
72 ASC_TCLTK98_LIB = $(ASC_TCLTK98_LIBNAME)$(SUFLIB) ;
73
74 # Install directories - comment to not install that class of file
75 INSTALL_BIN_DIR = $(INSTALL_ROOT)$(SLASH)ascend4$(SLASH)bin ;
76 INSTALL_DOC_DIR = $(INSTALL_ROOT)$(SLASH)ascend4$(SLASH)doc ;
77 INSTALL_MODELS_DIR = $(INSTALL_ROOT)$(SLASH)ascend4$(SLASH)models ;
78 INSTALL_ASC_TK_DIR = $(INSTALL_ROOT)$(SLASH)ascend4$(SLASH)Tk ;
79 INSTALL_USER_DIR = $(INSTALL_ROOT)$(SLASH)ascend4$(SLASH)user_models ;
80 INSTALL_TCL_DIR = $(INSTALL_ROOT)$(SLASH)Tcl ;
81
82 # Locations of pre-built install files
83 ASC_DOC_DIR = ;
84 ASC_MODELS_DIR = ..$(SLASH)..$(SLASH)models ;
85 ASC_TK_DIR = ..$(SLASH)TK ;
86
87 ASC_BASE_LIBS =
88 $(ASC_BASE_LIBDIR)$(BUILD_SUBDIR)$(SLASH)$(ASC_COMPILER_LIB)
89 $(ASC_BASE_LIBDIR)$(BUILD_SUBDIR)$(SLASH)$(ASC_GENERAL_LIB)
90 $(ASC_BASE_LIBDIR)$(BUILD_SUBDIR)$(SLASH)$(ASC_SOLVER_LIB)
91 $(ASC_BASE_LIBDIR)$(BUILD_SUBDIR)$(SLASH)$(ASC_UTILITIES_LIB)
92 $(ASC_BASE_LIBDIR)$(BUILD_SUBDIR)$(SLASH)$(ASC_PACKAGES_LIB)
93 ;
94
95 #======================================================================
96 # FORTRAN options - set to override compiler defaults
97 #
98 # Your FORTRAN compiler
99 #FORTRAN = g77 ;
100
101 # Fortran compilation flags & options:
102 # These are used for making the ASCEND libraries based on FORTRAN codes.
103 # These should be set to get the best performance possible out of your
104 # f77 compiler without optimizing away functions that are not obviously
105 # called, as some compilers do by default.
106 #
107 #FORTRANFLAGS = -c -I4 -O -lg2c ;
108
109 # F77LIBS is for the base f77 libraries. If you are linking no f77
110 # objects to ascend, it may be left undefined.
111 # Set F77LIBS appropriate for your machine and desired loader behavior.
112 #
113 #F77_LIBS = ;
114
115 #======================================================================
116 # FORTRAN LIBRARIES
117 #
118 # Point BLASLIB and LPAKLIB to machine-specific BLAS and LINPACK
119 # libraries (if you have them) to get the best speed out of ASCEND.
120 # Otherwise, generic versions can be built if FORTRAN is available.
121 #======================================================================
122
123 # path to the lsode library - will be built if == 'libasc_lsode'
124 #LSODLIB = libasc_lsode$(SUFLIB) ;
125
126 # path to the blas library - will be built if == 'libasc_blas'
127 #BLASLIB = libasc_blas$(SUFLIB) ;
128
129 # path to the linpack library - will be built if == 'libasc_lpak'
130 #LPAKLIB = libasc_lpak$(SUFLIB) ;
131
132 FOR_LIBS = $(LSODLIB) $(MINOSLIB) $(CONOPTLIB) $(LPAKLIB) $(BLASLIB) $(F77_LIBS) ;
133
134 #======================================================================
135 # PACKAGES
136 #
137 # Package settings for building Ascend.
138 # Packages are bits of compiled code that represent models, or solvers,
139 # or, in general, any bits of external code.
140 #
141 # Choose one of the following, comment out the others:
142 # STATIC_PACKAGES packages should be statically linked/loaded
143 # DYNAMIC_PACKAGES packages should be dynamically linked/loaded
144 # NO_PACKAGES no packages
145 #
146 # If STATIC_PACKAGES are chosen, also indicate the location of
147 # the packages in PACK_LIBS. Otherwise leave PACK_LIBS empty.
148 #======================================================================
149 HAVE_PACKAGES = STATIC_PACKAGES ;
150 #HAVE_PACKAGES = DYNAMIC_PACKAGES ;
151 #HAVE_PACKAGES = NO_PACKAGES ;
152
153 PACK_LIBS = $(ASCLIB_PKG)$(SUFLIB) ;
154 #PACK_LIBS = ;
155
156 #======================================================================
157 # TCL / TK
158 #
159 # Set the location of the Tcl/Tk import libraries and include files.
160 # The order should be -ltk -ltcl
161 #
162 # We also need the TkTable widget which does not come as a
163 # standard part of the Tcl/Tk distribution. This library can
164 # either be loaded statically or dynamically.
165 #
166 # If TK_LIBS and TK_HDRS are not properly set, ASCEND cannot build.
167 #======================================================================
168 TCL_LIB_DIR ?= $(TCL_DIR)$(SLASH)lib ;
169 TK_LIB_DIR ?= $(TK_DIR)$(SLASH)lib ;
170 TKTABLE_LIB_DIR ?= $(TCL_DIR)$(SLASH)lib ;
171
172 if $(NT)
173 {
174 if $(BCCROOT) || ( $(TOOLSET) = BORLANDC )
175 {
176 TCL_LIBRARY ?= tcl80_bc$(SUFLIB) ;
177 TK_LIBRARY ?= tk80_bc$(SUFLIB) ;
178 TKTABLE_LIB ?= tkTable_bc$(SUFLIB) ;
179 }
180 else if $(MSVCNT) || ( $(TOOLSET) = VISUALC )
181 {
182 TCL_LIBRARY ?= tcl80$(SUFLIB) ;
183 TK_LIBRARY ?= tk80$(SUFLIB) ;
184 TKTABLE_LIB ?= tkTable$(SUFLIB) ;
185 }
186 else if $(MINGW) || ( $(TOOLSET) = MINGW )
187 {
188 TCL_LIBRARY ?= libtcl80$(SUFLIB) ;
189 TK_LIBRARY ?= libtk80$(SUFLIB) ;
190 TKTABLE_LIB ?= libtkTable$(SUFLIB) ;
191 }
192 else if $(WATCOM) || ( $(TOOLSET) = WATCOM )
193 {
194 TCL_LIBRARY ?= tcl80_wat$(SUFLIB) ;
195 TK_LIBRARY ?= tk80_wat$(SUFLIB) ;
196 TKTABLE_LIB ?= tkTable_wat$(SUFLIB) ;
197 }
198 }
199 else if $(OS) = LINUX
200 {
201 TCL_LIBRARY ?= libtcl80$(SUFLIB) ;
202 TK_LIBRARY ?= libtk80$(SUFLIB) ;
203 TKTABLE_LIB ?= libtkTable$(SUFLIB) ;
204 }
205 else
206 {
207 TCL_LIBRARY ?= tcl80$(SUFLIB) ;
208 TK_LIBRARY ?= tk80$(SUFLIB) ;
209 TKTABLE_LIB ?= tkTable$(SUFLIB) ;
210 }
211
212 SEARCH on $(TCL_LIBRARY) = $(TCL_LIB_DIR) ;
213 SEARCH on $(TK_LIBRARY) = $(TK_LIB_DIR) ;
214 SEARCH on $(TKTABLE_LIB) = $(TKTABLE_LIB_DIR) ;
215 LOCATE on $(TCL_LIBRARY) = $(TCL_LIB_DIR) ;
216 LOCATE on $(TK_LIBRARY) = $(TK_LIB_DIR) ;
217 LOCATE on $(TKTABLE_LIB) = $(TKTABLE_LIB_DIR) ;
218
219 # The tcl and tk library files
220 TK_LIBS = $(TK_LIBRARY) $(TCL_LIBRARY) ;
221
222 # Location of the tcl.h and tk.h header files
223 TK_HDRS = $(TK_DIR)$(SLASH)include ;
224
225 # Uncomment to copy Tcl/Tk dynamic libraries to install bin directory
226 INSTALL_TCLTK_LIBS = 1 ;
227
228 # TclTk dynamic libraries to install to bin directory
229 TCL_LIBS_TO_INSTALL = tcl80 tclpip80 Tcl1680 Cw3215mt ;
230 TK_LIBS_TO_INSTALL = tk80 ;

john.pye@anu.edu.au
ViewVC Help
Powered by ViewVC 1.1.22