Making wxWidgets distributions |
These are some notes on the steps involved in making distributions from a CVS hierarchy.
Making a wxMSW distribution |
The distribution scripts are in the distrib/msw directory. Currently the distribution needs 4DOS or 4NT, which is a commercial replacement shell available for 30-day free trial. In future the distribution will be changed to use MinGW/MSYS and bash scripts.
VC++ 6.0 (static and DLL), BC++ 4.5 (WIN32), BC++ 5.5 (WIN32), Cygwin, MinGW 2. For VC++ 6, check compilation using both the makefiles and the project files. Try all reasonable configurations, including wxUniversal compilation.
Making a wxGTK distribution |
Please see docs/tech/tn0013.txt in the distribution for notes about making this distribution. Also, see distrib/msw/makerpm which gives a simplified interface for building wxGTK, wxBase and wxX11 RPMs, including steps not necessarily documented in tn0013.txt.
Making a wxMac distribution |
Please see 'Making a wxMSW distribution' for building the wxMac-x.y.z.zip archive. To build the wxMac-x.y.z.tar.gz archive on Linux (or Darwin), use the distrib/msw/tardist script, e.g.:
% cd ~/wx/wxWidgets % mkdir deliver % distrib/msw/tardist ~/wx/wxWidgets ~/wx/wxWidgets/deliver 2.4.0 --wxmac
Making a wxX11 distribution |
On Linux, use the distrib/msw/tardist script, e.g.:
% cd ~/wx/wxWidgets % mkdir deliver % distrib/msw/tardist ~/wx/wxWidgets ~/wx/wxWidgets/deliver 2.4.0 --wxx11
Note that the wxMotif distribution has been rolled into the wxX11 distribution, so only wxX11 is required.
Making a wxAll distribution |
On Linux, use the distrib/msw/tardist script, e.g.:
% cd ~/wx/wxWidgets % mkdir deliver % distrib/msw/tardist ~/wx/wxWidgets ~/wx/wxWidgets/deliver 2.4.0 --wxall
This builds wxAll-x.y.z.tar.gz, an archive containing the files necessary for all ports.
Before running the script, make an 'extra' folder within the 'deliver' folder and copy wxWidgets-${WXVER}-VC.zip to it, containing an archive of all .dsp and .dsw project files, since not all of these are in CVS.
You may just wish to use the --all flag to build wxX11, wxAll, wxMac, the documentation, etc.
Making documentation archives |
The HTML, MS HTML Help, HTB (wxWidgets HTML Help), WinHelp, PDF documentation is made and archived in the wxMSW distribution steps (above). You then need to copy the HTML, HTB and PDF these to a Linux box and unarchive them under the CVS tree you're using, before doing this:
% cd ~/wx/wxWidgets % mkdir deliver % distrib/msw/tardist ~/wx/wxWidgets ~/wx/wxWidgets/deliver 2.4.0 --wxdocs
This will create the HTML, HTB and PDF .tar.gz archives. The Windows-specific MS HTML Help and WinHelp formats are only distributed in zip format.
Tagging a release |
Just before a release, you can tag with a command like this:
% cvs rtag -r WX_2_4_BRANCH -F WX_2_4_0 wxWidgets
This assumes that you are tagging a 2.4.0 release on the WX_2_4_BRANCH. It creates or moves the WX_2_4_0 tag to the latest revisions on the 2.4 branch. If you wish to make the tag with the files you have on your disk, then you can instead do:
% cvs tag WX_2_4_0 wxWidgets
If you have already tagged, but then edit a file and wish to move the tag to that revision, do something like this:
% cvs tag -F WX_2_4_0 myfile.txt
If you wish to rename a tag, for example because a re-spin was required, do something like this:
% cvs rtag -r WX_2_4_0 WX_2_4_0_OLD wxWidgets