I would like to suggest not making it a compile time option but a runtime option. This would get rid of the #ifdefs and be much more elegant. You simply configure in the config file if you want to use gpsd or the raw device...
Well, it would be annoying to _have_to_ install gpsd just to compile cell_log ...
However, having gpsd shouldn't prevent device access if supported, just add new functions.
A few comments on the patch itself: - I would split the rename and adding the gpsd in two patches - You erroneously activated TX in your patch ... - You add whitespaces at the end of some lines.
(it's always a good idea to reread the patch you post. :)
Cheers,
Sylvain