/[ascend]/trunk/tcltk98/jam/Jamfile
ViewVC logotype

Contents of /trunk/tcltk98/jam/Jamfile

Parent Directory Parent Directory | Revision Log Revision Log


Revision 47 - (show annotations) (download)
Thu Apr 7 23:59:22 2005 UTC (19 years, 7 months ago) by jds
File size: 11124 byte(s)
Updated jam build files:
-Added support for -DTIMESTAMP builder credit.
- Renamed Tcl/Tk/TkTable libs for MinGW to match common gcc names.
- Corrected Linux ref in tcltk98 Jamfile.
- Added ascPrintTcl.c to list of interface sources.
- Fixed default CP definition in Jambase.
- Reworked gcc warning options in Jamrules_general.

utilities/ascConfig.h
- Added UNREFERENCED_PARAMETER() macro to standardize handling of unreferenced parameters.
-__WIN32__ macros for isnan(), isinf(), finite() not redefined if the plain versions exist (underscore not added in all __WIN32__ compiler systems, e.g. MinGW)

interface/ascPrintTcl.[ch]
- Added return value to Asc_PrintInit_TclVtable().
- Modified doxygen comments to describe function return values.

interface/Driver.c
- Added #include "interface/tkConsole.h" for __WIN32__ to pull in console functions.
- Added UNREFERENCED_PARAMETER() for WinMain() parameters.
1 #
2 # Jamfile to build Ascend Tcl/Tk98 interface
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 # The jam build depends on specialized Jamrules and Jambase files.
28 # A central version of these files is currently maintained in
29 # ../../jam. This may change as work proceeds to decouple the
30 # Ascend base from the original Tcl/Tk interface.
31 #
32 #---------------------------------------------------------------------------
33 #
34 # To compile & install the executable:
35 #
36 # Modify the parameters below and in Jamrules for your system, then:
37 #
38 # jam -f ../../jam/Jambase ascend
39 #
40 #---------------------------------------------------------------------------
41
42 # TODO: remove if end up using SubDir rules
43 JAM_GENERAL_DIR = ..$(SLASH)..$(SLASH)jam ;
44 include $(JAM_GENERAL_DIR)$(SLASH)Jamrules_general ;
45 include .$(SLASH)Jamrules ;
46
47 srcdir = ..$(SLASH)generic ;
48
49 ASC_INTERFACE_DIR = $(srcdir)$(SLASH)interface ;
50
51 HDRS += $(srcdir) ;
52
53 # symbolic targets to build Ascend executable
54 DEPENDS all : ascend ;
55 NOTFILE ascend ;
56
57 #=========================================================================
58 # Tcl/Tk Interface
59 #=========================================================================
60
61 ASC_TCLTK98_SOURCES =
62 AscBitmaps.c
63 AscPrintTcl.c
64 BrowLogRel_io.c
65 BrowWhen_io.c
66 BrowserMethod.c
67 BrowserProc.c
68 BrowserQuery.c
69 BrowserRel_io.c
70 Commands.c
71 DebugProc.c
72 DisplayProc.c
73 EnvVarProc.c
74 HelpProc.c
75 Integrators.c
76 LibraryProc.c
77 Lsode.c
78 MtxProc.c
79 ProbeProc.c
80 Qlfdid.c
81 ScriptProc.c
82 Sensitivity.c
83 SimsProc.c
84 SlvProc.c
85 SolverProc.c
86 UnitsProc.c
87 UserData.c
88 plot.c
89 tkConsole.c
90 typelex.c
91 old_utils.c
92 ;
93
94 # set temporary file location
95 LOCATE_TARGET = $(BUILD_DIR)$(SLASH)interface ;
96 SEARCH_SOURCE = $(ASC_INTERFACE_DIR) ;
97
98 # Build the static libary of interface functions
99 Library $(ASC_TCLTK98_LIBNAME) : $(ASC_TCLTK98_SOURCES) ;
100 MakeLocate $(ASC_TCLTK98_LIB) : $(BUILD_DIR) ;
101
102 # Build the Ascend executable
103 Main $(EXE_NAME) : Driver.c ;
104
105 ObjectCcFlags $(ASC_TCLTK98_SOURCES) Driver.c : $(SOLVER_DEFS) -DTIMESTAMP="\"\\\"by $(BUILD_CREDIT)\\\"\"" ;
106 ObjectHdrs $(ASC_TCLTK98_SOURCES) Driver.c : $(ASC_BASE_ROOT) $(TK_HDRS) ;
107
108 LinkLibraries $(EXE_NAME) : $(ASC_TCLTK98_LIB) $(ASC_BASE_LIBS) $(PACKAGE_LIBS) ;
109 NEEDLIBS on $(EXE_NAME)$(SUFEXE) +=
110 $(FOR_LIBS)
111 $(TK_LIBS)
112 $(TKTABLE_LIB)
113 $(X11_LIBS)
114 $(PC_LIBS)
115 $(MATH_LIBS)
116 $(DEBUG_LIBS)
117 ;
118
119 DEPENDS ascend : $(EXE_NAME)$(SUFEXE) ;
120
121 #Depends $(EXE_NAME)$(SUFEXE) :
122 # $(FOR_LIBS)
123 # $(TK_LIBS)
124 # $(TKTABLE_LIB)
125 # $(X11_LIBS)
126 # $(PC_LIBS)
127 # $(MATH_LIBS)
128 # $(DEBUG_LIBS) ;
129
130 # set executable build location
131 MakeLocate $(EXE_NAME)$(SUFEXE) : $(BUILD_DIR) ;
132
133 if $(NT)
134 {
135 if ($(BCCROOT) || ($(TOOLSET) = BORLANDC))
136 {
137 # need to fix Borland to include standard libraries location
138 LINKFLAGS on $(EXE_NAME)$(SUFEXE) +=
139 -L$(STDLIBPATH) -tW
140 -L$(TCL_LIB_DIR)
141 -L$(TK_LIB_DIR)
142 -L$(TKTABLE_LIB_DIR)
143 ;
144 if ! $(NODEBUG)
145 { LINKFLAGS on $(EXE_NAME)$(SUFEXE) += -v ; }
146 }
147 else if $(MSVCNT) || $(TOOLSET) = VISUALC)
148 {
149 LINKFLAGS on $(EXE_NAME)$(SUFEXE) +=
150 /L$(TCL_LIB_DIR)
151 /L$(TK_LIB_DIR)
152 /L$(TKTABLE_LIB_DIR)
153 ;
154 }
155 else if $(MINGW) || $(TOOLSET) = MINGW)
156 {
157 LINKFLAGS on $(EXE_NAME)$(SUFEXE) +=
158 -L$(TCL_LIB_DIR)
159 -L$(TK_LIB_DIR)
160 -L$(TKTABLE_LIB_DIR)
161 ;
162 }
163 else if $(WATCOM) || $(TOOLSET) = WATCOM)
164 {
165 LINKFLAGS on $(EXE_NAME)$(SUFEXE) +=
166 -\"LIBPATH $(TCL_LIB_DIR)\"
167 -\"LIBPATH $(TK_LIB_DIR)\"
168 -\"LIBPATH $(TKTABLE_LIB_DIR)\"
169 ;
170 }
171 }
172 else if $(UNIX)
173 {
174 LINKFLAGS on $(EXE_NAME)$(SUFEXE) +=
175 -L$(TCL_LIB_DIR)
176 -L$(TK_LIB_DIR)
177 -L$(TKTABLE_LIB_DIR)
178 ;
179 }
180
181 #======================================================================
182 # Directory-specific Build Instructions
183 #======================================================================
184
185 #----------------------------------------------------------------------
186 # typelex.c
187 #
188 # typelex.c implements the Ascend lexical typer. It is
189 # generated by lex/flex if available in the build environment
190 # (i.e. $(LEX) is non-null in jam). If lex/flex is not available,
191 # a copy of a pre-generated file is used instead.
192 #----------------------------------------------------------------------
193
194 # typelex.c needs a special define (Watcom requires the '=""'. )
195 ObjectCcFlags typelex.c : -DYY_USE_CONST="" ;
196
197 typelex_c = [ FGristSourceFiles typelex.c ] ;
198 typelex_h = typelex.h ;
199 typelex_l = typelex.l ;
200 LEXOPTS on $(typelex_c) = -Ptyp_ ;
201
202 LOCATE on $(typelex_c) = $(SEARCH_SOURCE) ;
203 LOCATE on $(typelex_h) = $(SEARCH_SOURCE) ;
204 LOCATE on $(typelex_l) = $(SEARCH_SOURCE) ;
205
206 LEX_or_copy $(typelex_c) : $(typelex_l) : typelex_c_no_flex : $(typelex_h) ;
207
208 #======================================================================
209 # Install directives
210 #======================================================================
211 if $(INSTALL_BIN_DIR)
212 {
213 InstallBin $(INSTALL_BIN_DIR) : $(EXE_NAME)$(SUFEXE) ;
214
215 if $(INSTALL_TCLTK_LIBS)
216 {
217 if $(NT)
218 {
219 SUFDLIB = .dll ;
220 }
221 else
222 {
223 SUFDLIB = .a ;
224 }
225 LOCATE on $(TCL_LIBS_TO_INSTALL)$(SUFDLIB) = $(TCL_DIR)$(SLASH)bin ;
226 LOCATE on $(TK_LIBS_TO_INSTALL)$(SUFDLIB) = $(TK_DIR)$(SLASH)bin ;
227
228 InstallFile $(INSTALL_BIN_DIR) : $(TCL_LIBS_TO_INSTALL)$(SUFDLIB) ;
229 InstallFile $(INSTALL_BIN_DIR) : $(TK_LIBS_TO_INSTALL)$(SUFDLIB) ;
230 }
231 }
232
233 if $(INSTALL_MODELS_DIR)
234 {
235 INSTALL_MODELS_FILES =
236 Guthrie_costs.a4l
237 KenPendings.a4l
238 README
239 README.html
240 README.txt
241 abc_flowsheet.a4l
242 atoms.a4l
243 basemodel.a4l
244 bvp.a4l
245 casestudy.a4s
246 collocation.a4l
247 collocation.a4s
248 collocation_tests.a4s
249 column.a4l
250 components.a4l
251 cost_column.a4l
252 distance_calc.a4c
253 dyn_column.a4l
254 dyn_flash.a4l
255 dyn_separation_demos.a4s
256 dyn_tank.a4c
257 dyn_tank.a4s
258 flash.a4l
259 force1d.a4c
260 force1d.a4s
261 heatex.a4c
262 heatex.a4s
263 ivpsystem.a4l
264 kinetics.a4l
265 kinetics.a4s
266 linear_balance.a4c
267 linear_balance.a4s
268 measures.a4l
269 mix.a4l
270 mix.a4s
271 old_separation_demos.a4s
272 phaseq.a4c
273 phaseq.a4s
274 phaseq_comp.a4c
275 phaseq_comp.a4s
276 phases.a4l
277 pipeline.a4c
278 pipeline.a4s
279 plot.a4l
280 plotbvp.a4c
281 plotbvp.a4s
282 plotcol.a4c
283 rachford.a4c
284 rachford.a4s
285 ratelaws.a4c
286 reactor.a4l
287 reactor.a4s
288 roots_of_poly.a4c
289 separation_demos.a4s
290 set_intervals.tcl
291 simple_fs.a4c
292 simple_fs.a4s
293 simple_fs_cost.a4c
294 simple_fs_cost.a4s
295 simple_fs_ext.a4c
296 sonic.a4c
297 sonic.a4s
298 splitter.a4l
299 splitter.a4s
300 stream_holdup.a4l
301 system.a4l
302 ternary_plot.a4l
303 thermodynamics.a4l
304 vessel.a4c
305 vessel.a4s
306 vesselMethods.a4c
307 vesselNotes.a4c
308 vesselParams.a4c
309 vesselPlain.a4c
310 vesselPlot.a4c
311 vesselPlot.a4s
312 vesselStudy.a4s
313 vesselTabulated.a4c
314 vesselTabulated.a4s
315 when_demo.a4c
316 when_demo.a4s
317 z-addmethod.a4c
318 z-align.a4c
319 z-alike.a4c
320 z-anontype.a4c
321 z-arsubs.a4c
322 z-context.a4c
323 z-emptyarg.a4c
324 z-emptyfor.a4c
325 z-iflogic.a4c
326 z-indirect.a4c
327 z-isawhere.a4c
328 z-relname.a4c
329 z-suite.a4s
330 ;
331
332 INSTALL_MODELS_BEN_FILES =
333 benHGthermo.a4l
334 bencolumn.a4l
335 bencomponents.a4l
336 benflash.a4l
337 benplot.a4l
338 benplotcol.a4c
339 benpropertyoptions.a4l
340 benstream.a4l
341 test_components.a4s
342 ;
343
344 LOCATE on $(INSTALL_MODELS_FILES) = $(ASC_MODELS_DIR) ;
345 InstallFile $(INSTALL_MODELS_DIR) : $(INSTALL_MODELS_FILES) ;
346
347 LOCATE on $(INSTALL_MODELS_BEN_FILES) = $(ASC_MODELS_DIR)$(SLASH)ben ;
348 InstallFile $(INSTALL_MODELS_DIR)$(SLASH)ben : $(INSTALL_MODELS_BEN_FILES) ;
349 }
350
351 if $(INSTALL_ASC_TK_DIR)
352 {
353 INSTALL_TK_FILES =
354 AscendRC
355 BrowserProc.tcl
356 CallbackProc.tcl
357 DebugProc.tcl
358 DisplayProc.tcl
359 GlobalProc.tcl
360 HubProc.tcl
361 LibraryProc.tcl
362 License-Warranty.tcl
363 MtxProc.tcl
364 NoteboxProc.tcl
365 ProbeProc.tcl
366 ScriptProc.tcl
367 SolverProc.tcl
368 ToolboxProc.tcl
369 TypetreeProc.tcl
370 UnitsProc.tcl
371 UtilProc.tcl
372 View.tcl
373 WWWHelpProc.tcl
374 WhoDunnit.tcl
375 ascStudy.tcl
376 ascend.ad
377 ascend.tcl
378 ascplot.tcl
379 ascplotproc.tcl
380 baatest.tcl
381 browser.tcl
382 callback.tcl
383 debug.tcl
384 display.tcl
385 generalk.tcl
386 library.tcl
387 main.tcl
388 mergedat.tcl
389 methods.tcl
390 mps.tcl
391 mtx.tcl
392 notebox.tcl
393 pane.tcl
394 probe.tcl
395 script.tcl
396 solver.tcl
397 tclIndex
398 toolbox.tcl
399 typetree.tcl
400 units.tcl
401 util.tcl
402 ;
403
404 INSTALL_TK_BITMAPS_FILES =
405 a4c.xbm
406 a4l.xbm
407 a4s.xbm
408 c.xbm
409 cpp.xbm
410 crash.xbm
411 cut.xf.xbm
412 delete.xf.xbm
413 emacs.xbm
414 error
415 feet.xbm
416 folder
417 global.xf.xbm
418 gnu-ascend.xbm
419 gnu.xbm
420 grablock.xbm
421 gray25
422 gray33
423 gray50
424 graybar
425 grill
426 h.xbm
427 hourglass
428 info
429 opt.xbm
430 place.xf.xbm
431 questhead
432 question
433 stop.xbm
434 text
435 time.xbm
436 toolAttributes.xbm
437 tree.xf.xbm
438 warning.xf.xbm
439 wfeet.xbm
440 ;
441
442 INSTALL_TK_TEMPLATES_FILES =
443 AscConfirm.t
444 AscMonoEntry1.t
445 AscMonoEntry2.t
446 AscMonoEntry4.t
447 amlscroll.tcl
448 ascKeepOnTop.tcl
449 ascListSelect.tcl
450 ascListSelectB1.tcl
451 ascMsgBox.tcl
452 ascdialog.tcl
453 ascfontsel.tcl
454 ascparm.tcl
455 balloon.tcl
456 asctkfbox.tcl
457 ;
458
459 LOCATE on $(INSTALL_TK_FILES) = $(ASC_TK_DIR) ;
460 InstallFile $(INSTALL_ASC_TK_DIR) : $(INSTALL_TK_FILES) ;
461
462 LOCATE on $(INSTALL_TK_BITMAPS_FILES) = $(ASC_TK_DIR)$(SLASH)bitmaps ;
463 InstallFile $(INSTALL_ASC_TK_DIR)$(SLASH)bitmaps : $(INSTALL_TK_BITMAPS_FILES) ;
464
465 LOCATE on $(INSTALL_TK_TEMPLATES_FILES) = $(ASC_TK_DIR)$(SLASH)templates ;
466 InstallFile $(INSTALL_ASC_TK_DIR)$(SLASH)templates : $(INSTALL_TK_TEMPLATES_FILES) ;
467 }

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