[macros] restrict git_archive again not to be able to archive dirty path
The reason is that we generate name of the archive and topdir it contains
from the working tree state on the given path and if it is dirty there,
-dirty suffix is added to name. This doesn't match the reality that
git_archive does not care about working tree at all and instead it archives
content from the latest commit. Better than to allow misleading names is
forbid the scenario, I believe.