Tangentially related, here is the opensource gps software used by a lot of phones: https://gpsd.gitlab.io/gpsd/index.html Development primarily lead by Eric Raymond: https://gpsd.gitlab.io/gpsd/gps-hacking.html http://www.catb.org/~esr/
Actually taking the raw waveforms from the ADCs and turning them into a (position, velocity, time) solution is an entirely different task.
I'd be remiss if I didn't mention RTKLIB, which is an open-source package to do the PVT solving, using a whole bunch of different algorithms. It ALSO happens to include a bunch of plumbing to stick the pieces together, and thus in some ways overlaps functions of gpsd, but its primary function is actually solving the navigation equations.