1 |
|
|
2 |
|
BUILDING ASCEND with JAM |
3 |
|
------------------------ |
4 |
|
|
5 |
The files in this directory support building the Ascend |
The files in this directory support building the Ascend |
6 |
libraries and executables using the jam* build tool. |
libraries and executables using the jam* build tool. |
7 |
|
|
8 |
The following files are included: |
The following files are included: |
9 |
|
|
10 |
Jamrules_general.in - configuration & custom build rules used by Jamfiles |
Jamrules_general.in - configuration & custom build rules used |
11 |
Jambase - lightly customized version of standard build rules |
by Jamfiles |
12 |
(primarily to shore up support for different compilers) |
Jambase - lightly customized version of standard |
13 |
|
build rules (primarily to shore up support |
14 |
|
for different compilers) |
15 |
|
|
16 |
The Ascend jam build system currently supports building under Windows |
The Ascend jam build system currently supports building under Windows |
17 |
using the MSVC, Borland, MinGW, and Watcom** compilers, and under |
using the MSVC, Borland, MinGW, and Watcom** compilers, and under |
20 |
system was developed primarily using ftjam. |
system was developed primarily using ftjam. |
21 |
|
|
22 |
Automatic processing of Jamrules_general.in to Jamrules_general by |
Automatic processing of Jamrules_general.in to Jamrules_general by |
23 |
configure is not currently implemented. Until it is, users will |
configure is not currently implemented. A skeleton script |
24 |
need to manually copy Jamrules_general.in to Jamrules_general and |
'configure' is provided which will copy the 'Jamrules_general.in' file |
25 |
edit Jamrules_general to match their preferenes & configuration. |
to 'Jamrules_general'. This file then needs to be hand-editied for |
26 |
|
your local preferences and configuration. |
27 |
|
|
|
------------------------------------------------------------------------- |
|
28 |
|
|
29 |
Build Instructions |
Build Instructions - Linux |
30 |
|
-------------------------- |
31 |
|
|
32 |
|
You can build the Jam static libraries on Linux at present: |
33 |
|
|
34 |
1. jam must be installed and configured for the compiler in use. |
1. jam must be installed and configured for the compiler in use. |
35 |
|
|
36 |
2. Copy Jamrules_general.in to Jamrules_general. |
2. Run ./configure |
37 |
|
See above comments -- this script is just a skeleton at the moment |
38 |
|
|
39 |
3. Manually edit Jamrules_general to set configuration and local |
3. Manually edit Jamrules_general to set configuration and local |
40 |
directory options. These settings are used by all the Jamfiles |
directory options. These settings are used by all the Jamfiles |
41 |
in the Ascend source tree. |
in the Ascend source tree. |
42 |
|
|
43 |
4. Follow the instructions in the particular Jamfile. |
4. Change directory to base/generic/jam, type 'jam libs' |
44 |
|
|
45 |
|
The static libraries will end up in base/generic/jam/Release/linux |
46 |
|
|
47 |
|
Build Instructions - Windows |
48 |
|
---------------------------- |
49 |
|
|
50 |
|
As above, but instead of steam (2.) you need to manualy copy the |
51 |
|
Jamrules_general.in file to Jamrules_general. |
52 |
|
|
53 |
|
|
54 |
------------------------------------------------------------------------- |
Notes |
55 |
Notes: |
----- |
56 |
|
|
57 |
* jam is an open source, multi-platform build tool |
* jam is an open source, multi-platform build tool |
58 |
which is available in several flavors. These include |
which is available in several flavors. These include |
59 |
the original (http://www.perforce.com) and ftjam |
the original (http://www.perforce.com) and ftjam |
60 |
(http://www.freetype.org/jam/index.html) variants, |
(http://www.freetype.org/jam/index.html) variants, |
61 |
among others. |
among others. |
62 |
|
|
63 |
** Currently, Open Watcom 1.3 can compile the Ascend sources |
** Currently, Open Watcom 1.3 can compile the Ascend sources |
64 |
and build the libraries. However, it does not supply the required |
and build the libraries. However, it does not supply the required |
65 |
IEEE math functions isnan() and copysign(). At present, Ascend does |
IEEE math functions isnan() and copysign(). At present, Ascend does |
66 |
not supply these, so the user must provide these functions to use |
not supply these, so the user must provide these functions to use |
67 |
the libraries under Watcom. |
the libraries under Watcom. |
68 |
|
|
69 |
|
Updated Dec 6 2005 -- johnpye |