Make checks the exit code and if it's not true (not 0) then it fails. In your test you use "x && y", which means if x is not true then y is not run... but it also means the result of the expression is "not true". So make shows that error.
In general in makefiles you only ever want to use or-expressions (||) not and-expressions:
! test -d www || $(SED) ...
or this:
test ! -d www || $(SED) ...
Or, you can do something like:
test -d www && $(SED) ... || true
(this one always succeeds, though, even if the sed fails). Or more simply:
if [ -d www ]; then $(SED) ... ; fi