Borut's TODO list - roybaer/sdcc-wiki GitHub Wiki

Table of Contents

SF project maintenance:

  • Migrate SDCC from CVS to Subversion (See CVS To Subversion Migration Plan). (DONE)
  • Use VPATH functionality for sdcc snapshot builds:
    • Sdcc sources are checked out to the shared directory, which is seen from all platforms. This is done on shell.cf.sourceforge.net machine which has a relatively new version of the svn client: 1.2.1. All other machines create local build directories. (DONE)
    • Still missing some locking mechanism

SDCPP:

  • synchronize with latest version GNU libcpp (DONE 2007-06-01 - synchronized with GCC 4.2.0)
  • integrate sdcpp into sdcc by using GNU libcpp
  • enable use of precompiled headers
  • get rid of diagnistic.[ch], pretty-print.[ch], c-pretty-print.[ch], ... used just for error, warning, ... message formatting (DONE)

SDCC front end:

 "warning 120: cannot compile more than one source file. file 'x.c' ignored" <br>
 probably the GCC front end can be reused
  • use memory buffers instead of temporary files (DONE)

Targets:

  • PIC, PIC16:
    • separate device file instead device.c (DONE by Raphael Neider)
  • move target specific options from src/SDCCmain.c to src/<target></target>/main.c (DONE 2007-06-18)

Regression tests:

  • The rule for function names is '&lt;sup&gt;test\w+\(\w+\)' (from support/regression/generate-cases.py), which is not enough flexible by my opinion. Better option would be '&lt;/sup&gt;\W*test\w*\W*\(\W*void\W*\)', which allows spaces around the function definition and a void parameter list, optionally surrounded by spaces. (DONE 2007-06-07)
  • Run Windows regression test on a Linux machine via Wine (DONE 2010-11-05)
  • Run 64bit Windows regression test on a Linux machine via 64bit Wine (DONE 2011-09-01)

Build process:

Packaging:

  • Win32 setup: include library sources (DONE)
  • Win64 setup (NSIS): detection if installing on 64bit Windows (2011-09-01 DONE)
    • 64bit binaries should be installed to "Program Files" instead if "Program Files (x86)" (2011-09-01 DONE)

Utilities:

Documentation:

  • review all SDCC documents:
    • sdcc development documentation moved from doc to sdcc wiki (DONE 2011-08-03)

SDCC Release Wiki:

  • Find a place where to put SDCC Release Wiki (see https://sourceforge.net/docs/E07/, "Group Directories are Read-Only") WikkiTikkiTavi (DONE)
  • Send sdcc-devel mailing list a notification on SDCC Realease Wiki update (DROPPED - it seems that sendig e-mail from php on sdcc web server doesn't work)
  • Move the wiki to the SF officially supported wiki when available and rename it to "SDCC Development Wiki" or just "SDCC Wiki" (DONE 2007-06-12)

SDCC web page:

  • add regression test results to the SDCC web page (DONE)
  • automatic update from sdcc-web as a part of snapshot build (DONE)
  • wiki pages never expire (set $ExpireLen = 0 in tavi/tavi_sdcc/lib/defaults.php) (DONE 2007-03-10)
  • integrate SDCC snapshots builds with SourceForge FRS (DONE 2010-08-29)
  • Store regression test restlts in the database: (DONE 2011-05-22)
    1. complete table download in CSV format (DONE 2011-05-22)
      1. download the full database in compressed format (probably bzip2)
    2. table download in CSV format, depending on criteria (platform, target, build_number, date, regtest_name) (DONE 2011-05-29)
    3. displaying regtest results, depending on criteria (platform, target, build_number, date, regtest_name) (DONE 2011-05-29)
    4. displaying differences between two regression test results (build_number, date), depending on criteria (platform, target, regtest_name) (DONE 2011-06-08)
      1. colorize the columns from different builds / ports / targets
      2. colorize the rows where results are different
      3. on rows where results are different: colorize the cells with max and min values
⚠️ **GitHub.com Fallback** ⚠️