/bin/sh: VARIABLE: command not found
<p>I have the following target, in my Makefile:</p>

<pre><code>~/.zshrc: zsh/*
    DESTDIR ?= $(shell echo '~/.') 
    SUDO ?= $(shell echo '') 
    sed -e "s_DESTDIR_$(DESTDIR)_" \
        -e "s_SUDO_$(SUDO)_" \
        -e "s_LIBDIR_$(LIBDIR)_" \
        -e '/^#/ d' $+ &gt; $@
</code></pre>

<p>But whenever I run <code>make ~.zshrc</code> I get the following error:</p>

<pre><code>DESTDIR ?= ~/. 
/bin/sh: DESTDIR: command not found
make: *** [/Users/henrikgiesel/.zshrc] Error 127
</code></pre>

<p>I have no clue what causes this. Do I have to escape something? I have <code>PWD ?= $(shell pwd)</code> at another point in the file and it works just fine.</p>