Previously, the dependency graph was messed up; the copy target was
a dependency of the root target, making it run concurrently when a
-j8 flag is passed to make. This causes make to copy the build files
before they are even built.
With this change, each component copies its own files after building.