Spending far too long wondering/worrying about the repercussions of moving the SIBOSDK folder from C: to D:, so that switching between SDK versions can be done with a MOUNT command in DOSBox.
Make a decision. Make a decision. MAKE A DECISION!
Spot the difference.
Three releases of the #Psion SIBO C SDK: 2.00, 2.10, and 2.20 (mostly).
The copy of 2.00 I was given is missing a few folders of examples, but the libraries and tools are all there. Helpful for some older projects.
I've never had to use 2.10, but it's there just in case.
The copy of 2.20 doing the rounds includes the 2.10 version of CLIB, but CLIB is only there to help with porting apps to EPOC16. New C projects should use PLIB or the OO libraries.
I'll also be making a "2.21" with a few fixes, such as checking for includes properly.
I'm going to boldly say that my 2.21 version is the one you should use, but of course I'll distribute the older versions. I've definitely had projects that will compile with 2.00 but not with 2.20. I think these projects are more likely to compile with 2.21.
So, it seems that "NSM" wrote the PLIB headers. They're checking for P_whatever_H before including the header, rather than doing it within the header itself.
This only seems to happen in PLIB header files - other headers written by other people do the check inside the header, which to me is the right way to do it.
So, do I only add the `#ifndef` clauses to each PLIB header file, or do I also strip out the unnecessary extra checks? If it was my code, I'd bin them.
@thelastpsion if you need a professional embedded C developer to back you up i think you're right. i've also never seen it done that way
@mavica_again Thank you - that does make me feel better. 😊