The fewer subtleties the better. I'd say something like this is the ticket:

    ../%/.git-cloned :
        [ ! -e $(@D) ] || git clone ${GIT_HOME}/$* $(@D)/
        touch $@