How does this pattern rule work? After macro expansion the whole thing is something like:

    ../dmd/.clone : ../%/.clone
        [ -d $(@D) ] || git clone ${GIT_HOME}/$* $(@D)/
        touch $@
    ../druntime/.clone : ../%/.clone
        [ -d $(@D) ] || git clone ${GIT_HOME}/$* $(@D)/
        touch $@
    ../phobos/.clone : ../%/.clone
        [ -d $(@D) ] || git clone ${GIT_HOME}/$* $(@D)/
        touch $@

According to http://www.gnu.org/software/make/manual/html_node/Pattern-Rules.html, the `%` must appear on the target side too. What is the intent here?