Release changes
- have lib*.so have the name of the release as part of its file name
- have *.so have the name of the release as part of its file name
- DynamicLoader should enforce that release names match
- Changes to M.tail to get release name from C3LIB, but for current always determine actual current version
Code finished on 2004/11/19 by cdj
Building release patches
- create area
- create a pkg_version_patch file
- make actual source directories and binaries immutable (i.e. let the soft-links changes but not the stuff they are linked with). This avoids accidently breaking the 'master' release
- set soft-links to source and binaries, for lib*.so_* and .so_ make sure postfix is new release name [do not softlink suez.exe* since need a new one for each release]
- build dependency files (and only them)
- replace source links with new source for packages to be updated, do this using 'cvs trick' of checking out old version and then 'update' to new version
- for every package do 'gmake -q' to see if package wants to be updated, if so remove all links to binaries for that package (a 'gmake clean_binaries' would be useful although 'gmake clean' would work, but would cause us to re-run dependency finding) NOTE: packages from 6) will automatically fail the no change test
- delete libDynamicLoader.a since needs to know release name
- rerun build normally
NOTE: potential problem with packages that modify other packages (e.g.
MakeMasses puts its autogenerated masses.h file into Experiment package)
--
ChrisDJones - 17 Nov 2004