| | 1 | |
| | 2 | = Boost.Build Python porting process = |
| | 3 | |
| | 4 | The Boost.Build Python porting was started by Pedro Ferreira in 2005. Quite a number |
| | 5 | of modules was ported, but final integration was not performed. This revival of this |
| | 6 | project therefore needs to: |
| | 7 | |
| | 8 | * Examine modules Pedro has ported, compare it with Boost.Build Jam mainline, and produce up-to-date version. |
| | 9 | * Port modules that were never ported. |
| | 10 | |
| | 11 | To track what's ported and what's not, we just a comments at top of Python module. If a module has a |
| | 12 | comment in the form: |
| | 13 | {{{ |
| | 14 | # Status: being ported by <XXX> |
| | 15 | }}} |
| | 16 | it means it's in the process of being ported by XXX. |
| | 17 | |
| | 18 | If a module has a comment: |
| | 19 | {{{ |
| | 20 | # Status: ported |
| | 21 | }}} |
| | 22 | then it's fully ported. |
| | 23 | |
| | 24 | Finally, if a Python module exists but has no comment of the above forms, it has to be compared with SVN HEAD jam code and updated -- or reported from scratch, if you're so inclined. If a Python module for some Jam module does not exists, it clearly should be ported. |
| | 25 | |
| | 26 | == Guidelines == |
| | 27 | |
| | 28 | Some of important guidelines are: |
| | 29 | |
| | 30 | * No design changes whatsoever, except as documented in PythonPort/Design. We'll have enough fun debugging the port to afford debugging not only port, but also design changes at the same time. |
| | 31 | * If it's not possible to port something because another module is not yet up-to-date, leave "FIXME" comment, telling what's needed to be done. |
| | 32 | * If you start work on a module, please add a "# Status:" comment and immediately commit, so that others don't try to port it at the same time. |