3 | | ConvertTestsToParrot |
| 7 | Tasks include: |
| 8 | |
| 9 | * ConvertTestsToParrot |
| 10 | * Increasing the warnings level in the various compilers and then fixing the code to remove the warnings |
| 11 | * gcc |
| 12 | * icc |
| 13 | * Sun Studio |
| 14 | * cygwin's gcc |
| 15 | * mingw32 |
| 16 | * Microsoft Visual Studio |
| 17 | * Static analysis of the code using Coverity Prevent |
| 18 | * scan results: http://scan2.coverity.com:9035/ |
| 19 | * to get an account to access the scan page, send an email to: scan-admin@coverity.com |
| 20 | * to run Coverity Prevent against the latest Parrot release, follow these steps: |
| 21 | |
| 22 | 1. Download the latest Parrot release from CPAN and unpack it somewhere |
| 23 | 1. Ensure that the path to `cov-configure` is in your `PATH` (something like `export PATH=$PATH:$HOME/prevent-linux-2.4.0/bin/`) |
| 24 | 1. Run `cov-configure -co /usr/bin/cc` |
| 25 | 1. Run `cov-configure -co /usr/bin/g++` |
| 26 | 1. Go into the Parrot build directory and run `perl Configure.pl` |
| 27 | 1. Run `cov-build -e emit -o output --config $HOME/prevent-linux-2.4.0/config/coverity_config.xml make` |
| 28 | 1. This should then produce an `emit` directory and an `output` directory |
| 29 | 1. Tar up the `emit` and `output` directories (call it something like `parrot-<version_number>-covbuild.tar.gz`) and put the file somewhere where it can be ftp'd or http'd |
| 30 | 1. Send an email to `build-submit@scan.coverity.com` with the contents: `v1:parrot:PASSWORD:URL`, where PASSWORD is the password for submitting parrot builds, and URL is the location where the build can be downloaded. |
| 31 | |
| 32 | * Static analysis of the code using various lints |
| 33 | * Sun lint |
| 34 | * splint |
| 35 | * BSD lint |
| 36 | * `const` ing the C-language source code. |
| 37 | * this allows the compiler to pick up more potential errors in the code |
| 38 | * Running (and developing!) the coding standards tests (see `docs/pdd/pdd07_codingstd.pod` and the `t/codingstd/*.t`) |
| 39 | |
| 40 | Warnings explanation for gcc: http://www-numi.fnal.gov/offline_software/srt_public_context/WebDocs/Errors/compiling_warnings.html#string%20constants |
| 41 | |