Sending GPS data to computer via USB and then to iPhone app through Wi-Fi on LAN
So the Arduino gets the data over serial from the GPS and passes it over serial or USB serial port to the PC.

PC is either configured to be a WiFi hub or is connected over Ethernet to a WiFi hotspot.

The PC runs a TCP server with software so that any data from the Arduino is passed to any connected clients.

The iPhone connects to the WiFi and opens a TCP socket to the server on the PC. The PC can then stream the data to the phone as it comes in (and you can pass data the other way if you need to). If the PC has a static IP address then it's a little simpler for to tell the phone where to connect to.

If you can find a TCP server program for the PC which sends data entered from the keyboard (there are plenty around) then you could cheat and configure the Arduino to pretend to be a USB keyboard rather than a serial port. That way the PC software is completely off the shelf.

At some point you'll need to parse the GPS output (NMEA at a guess) to extract the time, location, and anything else you want. This could be done at any point in the chain, wherever you feel most confident writing and debugging code is probably the best place to put it.