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

Contents of /trunk/tcltk98/jam/Jamfile

Parent Directory Parent Directory | Revision Log Revision Log


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

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