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

Annotation of /trunk/tcltk98/jam/Jamfile

Parent Directory Parent Directory | Revision Log Revision Log


Revision 60 - (hide annotations) (download)
Mon Oct 31 03:39:15 2005 UTC (18 years, 7 months ago) by jds
File size: 10788 byte(s)
- jam build up and limping on Linux (finally).
- fixes to CUnit test suite to compile on Linux (still not operable, though).
1 jds 60 #
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_LIBROOT) : $(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    
107     ObjectHdrs $(ASC_TCLTK98_SOURCES) Driver.c :
108     $(JAM_GENERAL_DIR)$(SLASH)$(ASC_BASE_SOURCE_RELPATH)
109     $(TK_HDRS)
110     ;
111    
112     LinkLibraries $(EXE_NAME) : $(ASC_TCLTK98_LIB) $(ASC_BASE_LIBS_QUAL) $(PACKAGE_LIBS) ;
113     LINKLIBS on $(EXE_NAME)$(SUFEXE) +=
114     $(FOR_LIBS)
115     $(TK_LIBS)
116     $(TKTABLE_LIB)
117     $(X11_LIBS)
118     $(PC_LIBS)
119     $(MATH_LIBS)
120     $(DL_LIBS)
121     $(DEBUG_LIBS)
122     ;
123    
124     DEPENDS ascend : $(EXE_NAME)$(SUFEXE) ;
125    
126     #Depends $(EXE_NAME)$(SUFEXE) :
127     # $(FOR_LIBS)
128     # $(TK_LIBS)
129     # $(TKTABLE_LIB)
130     # $(X11_LIBS)
131     # $(PC_LIBS)
132     # $(MATH_LIBS)
133     # $(DEBUG_LIBS) ;
134    
135     # set executable build location
136     MakeLocate $(EXE_NAME)$(SUFEXE) : $(BUILD_DIR) ;
137    
138     if $(NT)
139     {
140     if ($(BCCROOT) || ($(TOOLSET) = BORLANDC))
141     {
142     # need to fix Borland to include standard libraries location
143     LINKFLAGS on $(EXE_NAME)$(SUFEXE) +=
144     -L$(STDLIBPATH) -tW
145     -L$(TCL_LIB_DIR)
146     -L$(TK_LIB_DIR)
147     -L$(TKTABLE_LIB_DIR)
148     ;
149     if ! $(NODEBUG)
150     { LINKFLAGS on $(EXE_NAME)$(SUFEXE) += -v ; }
151     }
152     else if $(MSVCNT) || $(TOOLSET) = VISUALC)
153     {
154     LINKFLAGS on $(EXE_NAME)$(SUFEXE) +=
155     /L$(TCL_LIB_DIR)
156     /L$(TK_LIB_DIR)
157     /L$(TKTABLE_LIB_DIR)
158     ;
159     }
160     else if $(MINGW) || $(TOOLSET) = MINGW)
161     {
162     LINKFLAGS on $(EXE_NAME)$(SUFEXE) +=
163     -L$(TCL_LIB_DIR)
164     -L$(TK_LIB_DIR)
165     -L$(TKTABLE_LIB_DIR)
166     -mwindows
167     ;
168     }
169     else if $(WATCOM) || $(TOOLSET) = WATCOM)
170     {
171     LINKFLAGS on $(EXE_NAME)$(SUFEXE) +=
172     -\"LIBPATH $(TCL_LIB_DIR)\"
173     -\"LIBPATH $(TK_LIB_DIR)\"
174     -\"LIBPATH $(TKTABLE_LIB_DIR)\"
175     ;
176     }
177     }
178     else if $(UNIX) || $(OS) = LINUX
179     {
180     LINKFLAGS on $(EXE_NAME)$(SUFEXE) +=
181     -L$(TCL_LIB_DIR)
182     -L$(TK_LIB_DIR)
183     -L$(TKTABLE_LIB_DIR)
184     ;
185     }
186    
187     #======================================================================
188     # Directory-specific Build Instructions
189     #======================================================================
190    
191     #----------------------------------------------------------------------
192     # typelex.c
193     #
194     # typelex.c implements the Ascend lexical typer. It is
195     # generated by lex/flex if available in the build environment
196     # (i.e. $(LEX) is non-null in jam). If lex/flex is not available,
197     # a copy of a pre-generated file is used instead.
198     #----------------------------------------------------------------------
199    
200     # typelex.c needs a special define (Watcom requires the '=""'. )
201     ObjectCcFlags typelex.c : -DYY_USE_CONST="" ;
202    
203     typelex_c = [ FGristSourceFiles typelex.c ] ;
204     typelex_h = typelex.h ;
205     typelex_l = typelex.l ;
206     LEXOPTS on $(typelex_c) = -Ptyp_ ;
207    
208     LOCATE on $(typelex_c) = $(SEARCH_SOURCE) ;
209     LOCATE on $(typelex_h) = $(SEARCH_SOURCE) ;
210     LOCATE on $(typelex_l) = $(SEARCH_SOURCE) ;
211    
212     LEX_or_copy $(typelex_c) : $(typelex_l) : typelex_c_no_flex : $(typelex_h) ;
213    
214     #======================================================================
215     # Install directives
216     #======================================================================
217     if $(INSTALL_BIN_DIR)
218     {
219     InstallBin $(INSTALL_BIN_DIR) : $(EXE_NAME)$(SUFEXE) ;
220    
221     if $(INSTALL_TCLTK_LIBS)
222     {
223     if $(NT)
224     {
225     SUFDLIB = .dll ;
226     }
227     else
228     {
229     SUFDLIB = .a ;
230     }
231     LOCATE on $(TCL_LIBS_TO_INSTALL)$(SUFDLIB) = $(TCL_DIR)$(SLASH)bin ;
232     LOCATE on $(TK_LIBS_TO_INSTALL)$(SUFDLIB) = $(TK_DIR)$(SLASH)bin ;
233    
234     InstallFile $(INSTALL_BIN_DIR) : $(TCL_LIBS_TO_INSTALL)$(SUFDLIB) ;
235     InstallFile $(INSTALL_BIN_DIR) : $(TK_LIBS_TO_INSTALL)$(SUFDLIB) ;
236     }
237     }
238    
239     if $(INSTALL_MODELS_DIR)
240     {
241     INSTALL_MODELS_FILES =
242     Guthrie_costs.a4l
243     KenPendings.a4l
244     README
245     README.html
246     README.txt
247     abc_flowsheet.a4l
248     atoms.a4l
249     basemodel.a4l
250     bvp.a4l
251     casestudy.a4s
252     collocation.a4l
253     collocation.a4s
254     collocation_tests.a4s
255     column.a4l
256     components.a4l
257     cost_column.a4l
258     distance_calc.a4c
259     dyn_column.a4l
260     dyn_flash.a4l
261     dyn_separation_demos.a4s
262     dyn_tank.a4c
263     dyn_tank.a4s
264     flash.a4l
265     force1d.a4c
266     force1d.a4s
267     heatex.a4c
268     heatex.a4s
269     ivpsystem.a4l
270     kinetics.a4l
271     kinetics.a4s
272     linear_balance.a4c
273     linear_balance.a4s
274     measures.a4l
275     mix.a4l
276     mix.a4s
277     old_separation_demos.a4s
278     phaseq.a4c
279     phaseq.a4s
280     phaseq_comp.a4c
281     phaseq_comp.a4s
282     phases.a4l
283     pipeline.a4c
284     pipeline.a4s
285     plot.a4l
286     plotbvp.a4c
287     plotbvp.a4s
288     plotcol.a4c
289     rachford.a4c
290     rachford.a4s
291     ratelaws.a4c
292     reactor.a4l
293     reactor.a4s
294     roots_of_poly.a4c
295     separation_demos.a4s
296     set_intervals.tcl
297     simple_fs.a4c
298     simple_fs.a4s
299     simple_fs_cost.a4c
300     simple_fs_cost.a4s
301     simple_fs_ext.a4c
302     sonic.a4c
303     sonic.a4s
304     splitter.a4l
305     splitter.a4s
306     stream_holdup.a4l
307     system.a4l
308     ternary_plot.a4l
309     thermodynamics.a4l
310     vessel.a4c
311     vessel.a4s
312     vesselMethods.a4c
313     vesselNotes.a4c
314     vesselParams.a4c
315     vesselPlain.a4c
316     vesselPlot.a4c
317     vesselPlot.a4s
318     vesselStudy.a4s
319     vesselTabulated.a4c
320     vesselTabulated.a4s
321     when_demo.a4c
322     when_demo.a4s
323     z-addmethod.a4c
324     z-align.a4c
325     z-alike.a4c
326     z-anontype.a4c
327     z-arsubs.a4c
328     z-context.a4c
329     z-emptyarg.a4c
330     z-emptyfor.a4c
331     z-iflogic.a4c
332     z-indirect.a4c
333     z-isawhere.a4c
334     z-relname.a4c
335     z-suite.a4s
336     ;
337    
338     INSTALL_MODELS_BEN_FILES =
339     benHGthermo.a4l
340     bencolumn.a4l
341     bencomponents.a4l
342     benflash.a4l
343     benplot.a4l
344     benplotcol.a4c
345     benpropertyoptions.a4l
346     benstream.a4l
347     test_components.a4s
348     ;
349    
350     LOCATE on $(INSTALL_MODELS_FILES) = $(ASC_MODELS_DIR) ;
351     InstallFile $(INSTALL_MODELS_DIR) : $(INSTALL_MODELS_FILES) ;
352    
353     LOCATE on $(INSTALL_MODELS_BEN_FILES) = $(ASC_MODELS_DIR)$(SLASH)ben ;
354     InstallFile $(INSTALL_MODELS_DIR)$(SLASH)ben : $(INSTALL_MODELS_BEN_FILES) ;
355     }
356    
357     if $(INSTALL_ASC_TK_DIR)
358     {
359     INSTALL_TK_FILES =
360     AscendRC
361     BrowserProc.tcl
362     CallbackProc.tcl
363     DebugProc.tcl
364     DisplayProc.tcl
365     GlobalProc.tcl
366     HubProc.tcl
367     LibraryProc.tcl
368     License-Warranty.tcl
369     MtxProc.tcl
370     NoteboxProc.tcl
371     ProbeProc.tcl
372     ScriptProc.tcl
373     SolverProc.tcl
374     ToolboxProc.tcl
375     TypetreeProc.tcl
376     UnitsProc.tcl
377     UtilProc.tcl
378     View.tcl
379     WWWHelpProc.tcl
380     WhoDunnit.tcl
381     ascStudy.tcl
382     ascend.ad
383     ascend.tcl
384     ascplot.tcl
385     ascplotproc.tcl
386     baatest.tcl
387     browser.tcl
388     callback.tcl
389     debug.tcl
390     display.tcl
391     generalk.tcl
392     library.tcl
393     main.tcl
394     mergedat.tcl
395     methods.tcl
396     mps.tcl
397     mtx.tcl
398     notebox.tcl
399     pane.tcl
400     probe.tcl
401     script.tcl
402     solver.tcl
403     tclIndex
404     toolbox.tcl
405     typetree.tcl
406     units.tcl
407     util.tcl
408     ;
409    
410     INSTALL_TK_BITMAPS_FILES =
411     a4c.xbm
412     a4l.xbm
413     a4s.xbm
414     c.xbm
415     cpp.xbm
416     crash.xbm
417     cut.xf.xbm
418     delete.xf.xbm
419     emacs.xbm
420     error
421     feet.xbm
422     folder
423     global.xf.xbm
424     gnu-ascend.xbm
425     gnu.xbm
426     grablock.xbm
427     gray25
428     gray33
429     gray50
430     graybar
431     grill
432     h.xbm
433     hourglass
434     info
435     opt.xbm
436     place.xf.xbm
437     questhead
438     question
439     stop.xbm
440     text
441     time.xbm
442     toolAttributes.xbm
443     tree.xf.xbm
444     warning.xf.xbm
445     wfeet.xbm
446     ;
447    
448     INSTALL_TK_TEMPLATES_FILES =
449     AscConfirm.t
450     AscMonoEntry1.t
451     AscMonoEntry2.t
452     AscMonoEntry4.t
453     amlscroll.tcl
454     ascKeepOnTop.tcl
455     ascListSelect.tcl
456     ascListSelectB1.tcl
457     ascMsgBox.tcl
458     ascdialog.tcl
459     ascfontsel.tcl
460     ascparm.tcl
461     balloon.tcl
462     asctkfbox.tcl
463     ;
464    
465     LOCATE on $(INSTALL_TK_FILES) = $(ASC_TK_DIR) ;
466     InstallFile $(INSTALL_ASC_TK_DIR) : $(INSTALL_TK_FILES) ;
467    
468     LOCATE on $(INSTALL_TK_BITMAPS_FILES) = $(ASC_TK_DIR)$(SLASH)bitmaps ;
469     InstallFile $(INSTALL_ASC_TK_DIR)$(SLASH)bitmaps : $(INSTALL_TK_BITMAPS_FILES) ;
470    
471     LOCATE on $(INSTALL_TK_TEMPLATES_FILES) = $(ASC_TK_DIR)$(SLASH)templates ;
472     InstallFile $(INSTALL_ASC_TK_DIR)$(SLASH)templates : $(INSTALL_TK_TEMPLATES_FILES) ;
473     }

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