Identifying ROM build
Tank (53) 375 posts |
With the changes happening thick and fast !!, would it be an idea to append a build version to the 5.17 in the switcher info box ? |
Jeffrey Lee (213) 6048 posts |
It might make sense to change the switcher so that (for odd ROM version numbers?) it displays the ROM build date (available via OS_ReadSysInfo 9, IIRC). |
Andrew Conroy (370) 740 posts |
That would be very useful, I should think. |
Tank (53) 375 posts |
If the date change is the way to go, that’s simple to achieve in the file I mentioned. Just move the Date SETS Module_Date line to outside the compile switch brace. Test build shows that works. |
Ben Avison (25) 445 posts |
If you’re talking about the “Version” file in the kernel sources, I think you’ll find that would mean the date reflected whenever the kernel sources were most recently committed, which is something quite different from the build date: for example, it tells you nothing about any other modules which may have changed. The reason why there’s a build switch there is that all the flavours of RISC OS-NC and RISC OS-STB actually had the UtilityModule report the kernel’s version number (which has been stationary at 5.35 for some years now), whereas for desktop builds, it has traditionally had a version which matches that of the OS as a whole, which was always more of a marketing decision than a reflection of actually how much had changed in the kernel. The embedded versions of RISC OS used version numbers which didn’t follow the x.xx pattern, which is presumably why they had this change made. |
Jeffrey Lee (213) 6048 posts |
While I remember about this… A while a go I had a quick look at hooking up the build date, and found OS_ReadSysInfo 9 returns the kernel build date, not the ROM build date. This obviously won’t update very often if the same source tree is used to do lots of builds without any kernel updates inbetween. So I think the best thing to do would be to update romlinker to store the build date at the end of the ROM image (same as it does with the signature/checksum stuff), and make sure that OS_ReadSysInfo 9 uses that. But I haven’t yet remembered to propose these changes to ROOL in an email. Also, thinking about it, it would probably make sense for us to use the pre-existing ROM signature field to store the type of ROM, e.g. IOMD, Tungsten, OMAP3, etc. This should allow the softload tool to perform a basic sanity check that someone isn’t trying to load the wrong ROM image. But this approach might not work so well since the tool will still have to cope with existing ROM images which don’t have a signature set (and I’ve got no idea when the signature field was introduced, or what values it used to be set to in the past). Anyway, now that I’ve remembered about this I’ll (hopefully) remember to email ROOL about it later tonight! |
Sprow (202) 1158 posts |
That seems quite sensible. I think I’d be against something that changes the module contents depending on the build date (because you’d get two different binaries without changing the code). |
Jeffrey Lee (213) 6048 posts |
The main point of adding the date is to allow it to be used to identify how old the ROM was, either for bug tracking purposes or just so that users can easily tell if they’re running the latest build or not. Displaying the CRC could be useful if we wanted to get really anal about which builds people are using (especially if ROOL kept a history of what component versions went into each ROM build), but for most purposes just knowing the build date will be enough. |
Sprow (202) 1158 posts |
Ah, humans. Yes, maybe a date is simpler (even if it’s encoded in the ROM as a 5 byte centiseconds). |
Chris Hall (132) 3554 posts |
What is the criterion for moving to an even numbered build (5.18) and then having development versions at 5.19? Launch of the ARMini seemed to me a sensible time to do this. |
Trevor Johnson (329) 1645 posts |
That’s a very good point. Maybe Andrew Rawnsley has had some discussions along these lines. |
Andrew Rawnsley (492) 1445 posts |
This is a good point. Frustratingly, the latest build includes some changes which one might consider “next release” as opposed to “current release” eg. the updated filer_action. Whilst I haven’t seen any bugs in the current release, in hindsight it might have been better to keep new features out of 5.17 (or called such a release 5.18) and then drafted the new stuff into 5.19. However, my feeling right now is that since the pen is open, it is too late to bolt the door. We should probably work towards a stable version of what we have, and do a formal 5.20 (nice round number) release over the summer. This would fit with out schedules here. We’re still working on our roll-out of pre-orders. I’m hoping this will finish by the end of August. At that point, we should be in a position to deliver a big update to everyone. Hopefully Dave Higton’s micro-sd updater routines will also be ready by then, so that we can do an in-place update and deliver a really good user experience with said OS release. Thoughts welcomed… |
Jeffrey Lee (213) 6048 posts |
Yeah, I still feel that way. Although I’ve just spent the last 10 or so hours tracking down null pointer accesses, so it’s not like I’m not fixing bugs at the moment!
For the next stable release (whenever it will be) it would be nice to have the Cortex kernel branch changes merged back into the HAL branch. This will help keep the two branches from diverging too much, and will keep the HAL branch as the stable branch and the Cortex branch as the unstable/development branch. And it would be particularly useful if it could be done in the next week or two so that I can check in all my zero page protection kernel changes without worrying about breaking the kernel (and before someone else makes some kernel changes and I’m left with a massive merge conflict!) |
Trevor Johnson (329) 1645 posts |
Does anyone have any idea how much of an eye Castle keeps on developments? |
Ben Avison (25) 445 posts |
The idea was that the even-numbered releases, of the Iyonix ROMs at least, would have received a certain of level of testing by Castle, to give end-users a certain level of confidence in them. RISC OS 5.16 was rushed through to fix the Y2K01 bug if you remember – the lack of any stable releases since then just means that nobody has taken the initiative to declare a code freeze and arrange with Castle to do any more testing. It would be good if in future the OMAP3 ROMs could have simultaneous stable releases – perhaps R-Comp would be willing and able to sign off on stable OMAP3 ROMs in a similar way that Castle can for Iyonix ROMs? |
Andrew Rawnsley (492) 1445 posts |
I’d be quite happy to fulfil that role, Ben :) |
Jeffrey Lee (213) 6048 posts |
Over the weekend I checked in some changes to romlinker and the kernel to sort out the way the build dates are handled. Briefly:
The OMAP ROM has already been rebuilt with the date/time changes. The next time the Iyonix & IOMD ROMs get rebuilt they should start using the new system too. |