Why would you not just set the location of the backup and swapfiles to a fixed place in your system?
Try this:
set backupdir=~/.vim/backups,.
set directory=~/.vim/swapfiles,.
It will only write in the current directory, if ~/.vim/backups does not exist, and the dot is just there for portability, so nothing breaks when using my vimrc on a new system.Edit: Upon actually reading your blog-post, I understand at least one reason - my options may not change the behaviour of a file not being written to the correct inode, so you have a point for some build systems.
I actually learned rather much reading this, thank you for sharing!