Maintaining symlinks when installing

When I manually build LLVM (via git trunk) or GCC (via svn trunk) I use a symbolic link (/make/) to my dev folder.

Both GCC and LLVM extract the “physical” target location of this link, so their default include paths etc use the physical location, which starts with /media/<HOME>/<HDD>/... instead of just /make/....

This is annoying for a few reasons:

  • I’m capturing the header information (via -H), and I want to avoid having <HOME> and <HDD> included in this list.
  • <HDD> can change.

I can choose to not use the default include paths (eg -nostdinc++ etc), and just explicitly set them when I invoke clang, but that makes build setup a lot more complex.

Is there any way I can build LLVM and clang (and gcc if you know) so that it just uses my symlinks.