SDCC 3.5.0 Release Plan - roybaer/sdcc-wiki GitHub Wiki
Maarten Brock
SDCC binaries will be built for the following platforms, called also "official SDCC platforms":
- Microsoft Windows 2000 and above (win32) 32bit x86
It is was reported that [http://sourceforge.net/tracker/index.php?func=detail&aid=1631528&group_id=599&atid=100599 SDCC Hangs on Win98 SE], but Borut couldn't reproduce it. This means that SDCC runs on Windows 95/98/ME platforms too, but they are not officially supported.
- Microsoft Windows Vista and above (win64) 64bit
- glibc based Linux (linux) 32bit x86
- Mac OS X (darwin) 32bit ppc and i386 universal binaries
Some targets are not ready or are no longer maintained. Any mature targets must be included and must pass the regression tests. Any others may be disabled in the binary to meet the acceptance criteria.
- Mature, on-going maintenance: mcs51, ds390, z80, z180, r2k, r3ka, gbz80, hc08, s08 and stm8.
- Preliminary, in development: pic14, pic16 and tlcs90.
- Unknown status: TININative, ds400.
- No longer maintained: avr, xa51.
The final deliverables will be:
- A source archive that can rebuild all binaries
- A documentation archive
- An executable, NSIS based installer for Windows
- A tarball that installs in /usr/local for Linux
- A tarball that installs in /Developer/SDCC for Mac OS X
The release needs to at minimum:
- Have an updated README
- Compile without warnings or errors on all platforms
- Pass regression tests on all "Mature" targets: mcs51, ds390, z80, z180, r2k, r3ka, gbz80, hc08, s08 and stm8 on Linux, Windows and Mac OS X
This schedule has no dates attached due to the volunteer nature of the project, however the release manager will try to keep things moving.
The schedule and approximate timings are:
- Announce intention to do a release (DONE 2015-05-25)
- Take feedback and wish list items (DONE 2015-06-06)
- Change the version number in .version, sdcc.spec, doc/sdccman.lyx, doc/INSTALL.txt and everywhere else it appears (DONE 2015-06-06)
- Announce a code freeze (DONE 2015-06-06)
- The release candidate RC1 svn tag will be created. NOTE: the tag should be created on a complete sdcc trunk: http://svn.code.sf.net/p/sdcc/code/trunk (DONE 2015-06-09)
- The release manager will make a release candidate RC1 (DONE 2015-06-09)
- RC1 deliverables will be released to the staging area so that people can test the installers. (DONE 2015-06-09)
- Update the NEWS section of sdcc-web/index.php: move previous release to Past News and add RC1 to News. (DONE 2015-06-09)
- Bugs (packaging, documentation, ...) found in RC1 will be fixed (DONE 2015-06-19)
- The release candidate RC2 svn tag will be created. NOTE: the tag should be created on a complete sdcc trunk: http://svn.code.sf.net/p/sdcc/code/trunk (DONE 2015-06-20)
- The release manager will make a release candidate RC2 (DONE 2015-06-20)
- RC2 deliverables will be released to the staging area so that people can test the installers. (DONE 2015-06-20)
- Update the NEWS section of sdcc-web/index.php: add RC2 to News. (DONE 2015-06-22)
- Bugs (packaging, documentation, ...) found in RC2 will be fixed (DONE 2015-06-24)
- The release svn tag will be created. NOTE: the tag should be created on a complete sdcc trunk: http://svn.code.sf.net/p/sdcc/code/trunk (DONE 2015-06-24)
- The release manager will make the release deliverables. (DONE 2015-06-24)
- Quick test of the installers (DONE 2015-06-24)
- Deliverables will be blessed and released (DONE 2015-06-24)
- Mark the new files as default download for their operating system. (DONE 2015-06-24)
- Update the NEWS section of sdcc-web/index.php: move previous release to previous.php, move RC news to Past News and add new release to News. (DONE 2015-06-24)
- The release will be announced on SourceForge News, [email protected] and [email protected] mailing lists (DONE 2015-06-24)
Random set of tasks that someone might want to do:
- Update the web page before and after the release
- Update the documentation