I am programming with FreePascal and Lazarus towards a Raspberry Pi2 target platform. Doing so on the RPi2 itself is possible and basically works fine, except that the system is a bit sluggish at times and there are other inconveniences as well.
So I moved to a Linux Mint 17.3 Mate system in a virtual computer (VMWare) on my Windows7 PC instead.
Most of what I am doing concerns non-hardware dependent things and works fine as far as I can see.
But there is one snag, and this is the GPIO handling where obviously the GPIO access is not possible on a PC platform...
So I need to put some kind of conditional into my code to redirect the GPIO calls to some simulator I will have to build. (I am assuming that there is no such thing available already of course).
So I would like to know how I can create a conditional that uses the real GPIO if the build is done on the RPi2 itself and for the simulator otherwise.
Something like:
uses
...
{$IFDEF RPi2Hardware}
PiGpio,
{ELSE}
PiGpioSim,
{$ENDIF}Then I could create a PiGpioSim unit as a simulator that defines the same object class but does not target the actual hardware on RPi2 but some other mechanism that I can monitor while debugging in the development PC.
Is there something like "RPi2Hardware" already set up that can be used to check for this?
