Never mind, I spoke too early. I had accidentally removed the -g flag somewhere during my investigation.
After enabling -g, CCS indeed linked the source for debugging. However as I described above, it seems like I need to go into Disassembly and manually set a breakpoint on the actual memory location of the entry point and run to that before source is displayed.
Any time I try to set a breakpoint in a source file that is not the source I am currently stepping through, the breakpoint is grey and is not hit. Only when I manually set it on the memory location will it be hit.
Any ideas on what could be preventing CCS from allowing me to set breakpoints this way?