How to preserve/keep temporary ino.cpp file?

I’m using the -t compiledb option. The resulting db references the temporary ino.cpp file that is generated from the various *.ino files.

How do I tell the build not to delete the ino.cpp file?

You can’t, it’s hardcoded that it’s deleted when the build exits.