GPS and GSM interface

i m working on GPS Locator n i want help in interface GPS and GSM that is use to send latitude and longitude value to the mobile via text msg.....

My GSM is working properly and My GPS is also give correct value...

GSM code:-

int timesTosend=1;
int count=0;
char phone_no[]="9870820167";

void setup()
{
Serial.begin(9600); //Open Serial connection at baud 9600
delay(2000);
Serial.println("AT+CMGF=1");
delay(200);
}

void loop()
{
long lat,lon;
while(count<timesTosend){
delay(1500);
Serial.print("AT+CMGS="");
Serial.print("9870820167");
Serial.println(""");
while(Serial.read()!='>');
{
Serial.println(lat);
Serial.print(lon);
delay(500);
Serial.write(0x1A); // sends ctrl+z end of message
Serial.write(0x0D); // Carriage Return in Hex
Serial.write(0x0A); // Line feed in Hex

//The 0D0A pair of characters is the signal for the end of a line and beginning of another.
delay(5000);
}
count++;
}

}

GPS code:-

#include <SoftwareSerial.h>
#include "TinyGPS.h"

long lat,lon; // create variable for latitude and longitude object
SoftwareSerial gpsSerial(2, 3);
TinyGPS gps; // create gps object

void setup(){
Serial.begin(9600); // connect serial
gpsSerial.begin(9600); // connect gps sensor
}
void loop(){
while(gpsSerial.available()){ // check for gps data
if(gps.encode(gpsSerial.read())){ // encode gps data
gps.get_position(&lat,&lon); // get latitude and longitude
// display position
Serial.print("Position: ");
Serial.print("lat: ");Serial.print(lat);Serial.print(" ");// print latitude
Serial.print("lon: ");Serial.println(lon); // print longitude
}
}
}