View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0000146 | ascend | build-system | public | 2005-11-29 07:59 | 2006-05-10 02:22 |
| Reporter | john | ||||
| Assigned To | jds | ||||
| Priority | normal | Severity | minor | Reproducibility | always |
| Status | closed | Resolution | suspended | ||
| Product Version | |||||
| Target Version | Fixed in Version | ||||
| Summary | 0000146: Don't use a customised Jambase | ||||
| Description | If we need to use a customized Jambase, we should instead use overriding rules in our Jamfile, rather than completely replacing the Jambase, shouldn't we? JP | ||||
| Additional Information | From my perspective, the bug is with jam rather than with the ASCEND jam build system. Jambase is supposed to define the basic commands and rules for manipulating files and building software on various platforms. Jamrules and Jamfile should define project-specific rules and actions necessary to build a specific system. Unfortunately, the Jambase files supplied with both the Perforce and ftjam variants ignores or is broken for major platforms. This includes gcc/mingw, borland C++, and Watcom on Windows, and also minor parts of Visual C++ and gcc/linux. So the basic build rules for these systems needs to be fixed (ftjam) or added (Perforce) to compile anything with these systems. Since these are general platform fixes and not ASCEND-specific, the decision was made to implement them in a general Jambase file. This has the advantage of allowing the system to be built on ftjam or Perforce jam. It also keeps the general platform stuff localized so the Jambase can be applied to other projects without having to maintain duplicate code in multiple project Jamrules. Finally, problems were encountered trying to get Watcom on Windows working when the rules were applied in Jamrules instead of Jambase. Conceptually, the things learned in getting jam working on mingw, borland, and Watcom should be reported as bugs to ftjam so the basic Jambase can be corrected. Haven't gotten around to that, and don't know if they'd care. An implication of this is that you probably don't need the custom Jambase if you're compiling in unix or linux. You also may not need it if you're using mingw under ftjam. You will need it on Windows if you want to use Perforce jam and compile with anything but VC. JDS | ||||
| Tags | No tags attached. | ||||
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2005-11-29 07:59 | john | New Issue | |
| 2005-11-29 07:59 | john | Status | new => assigned |
| 2005-11-29 07:59 | john | Assigned To | => jds |
| 2005-12-04 05:56 | jds | Additional Information Updated | |
| 2005-12-06 16:01 | john | Status | assigned => resolved |
| 2005-12-06 16:01 | john | Resolution | open => suspended |
| 2005-12-06 16:01 | john | Note Added: 0000071 | |
| 2005-12-18 17:29 | jds | Additional Information Updated | |
| 2005-12-18 17:32 | jds | Additional Information Updated | |
| 2005-12-20 02:39 | john | Relationship added | child of 0000169 |
| 2006-02-07 13:19 | john | Target release | => 1.0 |
| 2006-05-10 02:22 | john | Status | resolved => closed |