Anand,
I always include bootloader S-records in application, adding
HEXFILE
bootloader.s19
to application's PRM file.
To produce application only S-records file, I'm using modified burner.bbl file, which produces two S-records files, one with bootloader included, and another one without bootloader.
It's easy to create such bbl file. Open your default bbl, copy everything and paste-insert the copy as you wish at bottom or at top of your bbl file. Then in the copy edit the output file name, for example like this
OPENFILE "%ABS_FILE%-no-bootloader.s19"
Now find the "segment", which belongs to bootloader. If bootloader is at 0xF000, then you need to add len=N line and change N to make bootloader not included in "%ABS_FILE%-no-bootloader.s19" :
origin = 0x00C000 /* nonpaged C000 */
len = 0x3000 /* excluding bootloader, 0x3000 instead of default 0x4000 */
destination = 0x00C000
SENDBYTE 1 "%ABS_FILE%"
After these PRM+BBL mods everything is neat. Click run to make app code + bootloader uploaded to target for debugging. Also two s-files are produced. Full one for factory programming, app-only for upgrading via bootloading.