Development
From urjtag
Contents |
Developer Info
The Great Overhaul
We plan to do massive renaming of functions and source files. Some directories will be moved. This will happen during the next few months in 2008. If you plan some large work with UrJTAG that will take longer, that'd be a reason for us to do this change earlier so it doesn't happen in the middle of your project.
Coding style
For all new source code, please apply GNU Coding Standards[1], the default mode of GNU "indent", with two exceptions:
- No tabs ("-nut" option)
- No extra indentation of brackets around blocks ("-bli0" option)
For modifications in existing source code, for now, please try to adapt to the style actually used in the file, especially if tabs are used.
It is helpful to add emacs/vi setup to the source code (TODO: specify examples here)
[1] http://www.gnu.org/prep/standards
Misc Hints
- Please do not use global nor static variables. There are some in the current revision; they should be eliminated.
Tracker
- "Bugs" is for bug reports and patches which fix bugs.
- "Enhancements" is for feature requests and patches which enhance UrJTAG.
Patches
Please create patches against current revision in Subversion repository and document that revision (e.g. as part of the name of the patch file). Before submitting a patch, ensure that you've told Subversion about all files you've added ("svn status" displays them with an 'A' prefix, not a '?'). A patch file can be created using the command "svn diff > xyz.patch" in a top level directory.
The best way to submit patches is to create tracker items (see above) and attach the patch. Unfortunately, this has to be done immediately when creating the item. It seems to be impossible for non-members to add patches to an existing tracker item.
Team
If you have submitted good patches for UrJTAG before and want to contribute even more, please consider to join the project to get write access to Subversion repository, tracker updates and/or Wiki content.
However, after some months of inactivity, admins probably will cancel the membership, simply to keep the list of active developers current.
