Copying the headers to the build/include directory and then building
against the copies is problematic since they debugger will step you
through the code in those copies rather than the actual header. Then
if you change the file the debugger points you to your changes won't
get committed and will get lost whenever someone happens to touch the
original file, which could be quite a bit of time later, making it
hard to remember the fix.
It would be much better to either just leave the headers in a central
include directory (and, if you want to enforce permissions, enforce
them on a per directory basis), or create links instead (although this
might complicate installation?).