| 1 |
The files in this directory support building the Tcl/Tk |
| 2 |
version of ths Ascend modeling system using the jam* build tool. |
| 3 |
|
| 4 |
The following files are included: |
| 5 |
|
| 6 |
Jamfile - build instructions for the Ascend libs |
| 7 |
Jamrules.in - configuration & custom build rules used by Jamfile |
| 8 |
|
| 9 |
The build also requires ../../jam/Jamrules_general and |
| 10 |
../../jam/Jambase. This system builds the Ascend executable |
| 11 |
as well as a static library of Tcl/Tk interface functions. |
| 12 |
Installation of the resulting program is still under construction. |
| 13 |
|
| 14 |
The Ascend jam build system currently supports building the libraries |
| 15 |
under Windows using the MSVC, Borland, MinGW, and Watcom** compilers |
| 16 |
(extension to Linux/gcc is on the todo list). With use of the |
| 17 |
included Jambase file, it should work with both the original and ftjam |
| 18 |
variants of jam. The system was developed primarily using ftjam. |
| 19 |
|
| 20 |
Automatic processing of Jamrules.in to Jamrules by configure is |
| 21 |
not currently implemented. Until it is, users will need to manually |
| 22 |
copy Jamrules.in to Jamrules and edit Jamrules to match their |
| 23 |
preferenes & configuration. |
| 24 |
|
| 25 |
The library (libasc_tcltk98) is built in |
| 26 |
./CONFIGTYPE/COMPILER/interface, while the executable |
| 27 |
is built in ./CONFIGTYPE/COMPILER where |
| 28 |
CONFIGTYPE = Debug, Release |
| 29 |
COMPILER = bcc, msvc, mingw, watcom, unix |
| 30 |
|
| 31 |
There are several dependent libraries which must be provided to |
| 32 |
successfully link the Ascend executable: |
| 33 |
|
| 34 |
libasc_compiler |
| 35 |
libasc_general |
| 36 |
libasc_packages |
| 37 |
libasc_solver |
| 38 |
libasc_utilities |
| 39 |
tcl80 |
| 40 |
tk80 |
| 41 |
|
| 42 |
The default location for the Ascend base libraries is |
| 43 |
../../base/jam/CONFIGTYPE/COMPILER. The default location for the Tcl/Tk |
| 44 |
libraries is ../../../Tcl/lib. These may be modified by editing the |
| 45 |
Jamrules file. |
| 46 |
------------------------------------------------------------------------- |
| 47 |
|
| 48 |
Build Instructions |
| 49 |
|
| 50 |
1. jam must be installed and configured for the compiler in use. |
| 51 |
|
| 52 |
2. Copy Jamrules.in to Jamrules. |
| 53 |
|
| 54 |
3. Manually edit ../../jam/Jamrules_general, Jamrules and (if |
| 55 |
necessary) Jamfile to set configuration and local directory |
| 56 |
options. |
| 57 |
|
| 58 |
4. Run jam from using the provided Jambase: |
| 59 |
jam -f ../../jam/Jambase ascend |
| 60 |
|
| 61 |
------------------------------------------------------------------------- |
| 62 |
Notes: |
| 63 |
|
| 64 |
* jam is an open source, multi-platform build tool |
| 65 |
which is available in several flavors. These include |
| 66 |
the original (http://www.perforce.com) and ftjam |
| 67 |
(http://www.freetype.org/jam/index.html) variants, |
| 68 |
among others. |
| 69 |
|
| 70 |
** Currently, Open Watcom 1.3 can compile the Ascend sources but |
| 71 |
cannot link the executable. This is because Watcom does not supply |
| 72 |
the required IEEE math functions isnan() and copysign(). Ascend does |
| 73 |
not currently provide these support functions. |
| 74 |
|