diff options
author | Steven Knight <knight@baldmt.com> | 2002-06-27 15:00:50 (GMT) |
---|---|---|
committer | Steven Knight <knight@baldmt.com> | 2002-06-27 15:00:50 (GMT) |
commit | 0cd4837fd6a10791576c5dcafa09514d47c0fc97 (patch) | |
tree | fc4c551de3335992c11ccf2fdfde73d4d731a9bd /HOWTO | |
parent | 5dd473bc401492d93a372b03965f2718b05426b8 (diff) | |
download | SCons-0cd4837fd6a10791576c5dcafa09514d47c0fc97.zip SCons-0cd4837fd6a10791576c5dcafa09514d47c0fc97.tar.gz SCons-0cd4837fd6a10791576c5dcafa09514d47c0fc97.tar.bz2 |
Add support for assembly language (.s and .S) Tools. Still needs support for building shared objects.
Diffstat (limited to 'HOWTO')
-rw-r--r-- | HOWTO/new-tool.txt | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/HOWTO/new-tool.txt b/HOWTO/new-tool.txt new file mode 100644 index 0000000..c906b7f --- /dev/null +++ b/HOWTO/new-tool.txt @@ -0,0 +1,79 @@ +Adding a new Tool to the SCons distribution: + + -- Add the following files (aenf): + + src/engine/SCons/Tool/xxx.py + + Use one of the other Tool files as a template. + + The tool should set and use construction variables: + + XXX (specific tool) + XXXCOM (the command line) + XXXFLAGS (flags for the command line) + + -- Modify the following files (aecp): + + doc/man/scons.1 + + Add the new tool to the default Platform lists + (if appropriate). + + If this creates object files from a new source + file type, add the new file suffixes. + + Document the new construction variables. + + rpm/scons.spec + + Add to the list at the bottom of the file: + + /usr/lib/scons/SCons/Tool/xxx.py + /usr/lib/scons/SCons/Tool/xxx.pyc + + [THIS LIST SHOULD BE GENERATED FROM MANIFEST.in, + AND WILL BE SOME DAY.] + + src/CHANGES.txt + + Add mention of the new Tool specification. + + src/engine/MANIFEST.in + + Add to the list: + + SCons/Tool/xxx.py + + src/engine/SCons/Defaults.py + + If there are any new Actions for the Tool, add them + here. + + src/engine/SCons/Platform/*.py + + Add the Tool to the list(s) returned by tool_list(). + + -- Add the following tests (aent): + + test/XXX.py + + Use one of the other tests as a template. + + The first part should be a platform-independent test + using dummy 'myxxx.py' utilities to test if $XXX is set. + + Remaining parts of the test can check to see if the + specific tool is installed on the system, and test + actually executing the tool. + + test/XXXFLAGS.py + + Use one of the other tests as a template. + + The first part should be a platform-independent test + using dummy 'myxxx.py' utilities to test if $XXXFLAGS is + set. + + Optionally, remaining parts of the test can check to see + if the specific tool is installed on the system, and + test actually executing the tool. |