I've been improving LazUpdater since my lasts posts.
Because I didn't get any reaction from the original author, I uploaded it to my mercurial repository:
https://bitbucket.org/reiniero/lazupdater_baremetalI use it myself next to a snapshot Lazarus install.
Lazupdater now also supports git downloads instead of svn. For that you'll need a git client, e.g. msysgit, first. Please see the Lazarus wiki page on git for more details.
My version of LazUpdater is meant to work even without SVN or GIT client, but there are still some niggling problems with that mode... Please feel free to test and report issues though on the repository's bugtracker.
Procedure:
Run LazUpdater, set it to download from SVN or GIT and indicate your GIT/SVN executable location.
Indicate you want to update/make both FPC and Lazarus (I always run the force options) and run.
It should checkout/update FPC from SVN, compile FPC. Then accept the request to change the compiler used in Lazupdater to the newly compiled FPC compiler.
IIRC, it will also generate fpc.cfg correctly.
Lazupdater will checkout/update Lazarus from SVN and compile with the compiler that was set.
You can use this to have multiple Lazarus/FPC installs on your system, but remember to use a shortcut with --primary-config-path (IIRC) to differentiate the settings.
It compiles on Linux, but probably not all paths etc are correct.
Some improvements to be done:
1. Test bare metal mode on Windows without any FPC/Lazarus/SVN/GIT.
2. On Linux+OSX: let the program check for make (other needed bins?), fix URLs, program paths, test.
3. Strip out old fpc.cfg boilerplate text as I'm using FPC's fpcmkcfg.exe anyway
4. Get in touch with original author and try to merge changes.
5. Perhaps get in touch with FPC/Lazarus devs, and submit for inclusion as a Lazarus tool, or include as a download on the Lazarus site. Will possibly need to change license from GPL to the FPC modified LGPL??? This will enable easier download of updated versions by developers not familiar with or to lazy for FPC/Laz build processes.