Makefile: declare EFLAGS before we use it

Not strictly necessary, but it's always better to be explicit.

Signed-off-by: Pieter Praet <pieter@praet.org>
Makefile: move .PHONY declarations next to their targets

This allows us to see at a glance which targets were forgotten.

"melpa" and "melpa-push" didn't have any corresponding targets,
so they were removed.

Signed-off-by: Pieter Praet <pieter@praet.org>
Makefile: explicitly declare phony targets phony

Every target that doesn't create a file with the same name should
be explicitly declared phony.  Otherwise we might unintentionally
DoS targets.

  $ touch help
  $ make help
  make: `help' is up to date.

Signed-off-by: Pieter Praet <pieter@praet.org>
Makefile: 'clean': don't try to remove 'magit.spec'

We no longer generate it ourselves since commit afb15b75, so if
it's there, it means a packager put it there for a good reason.

Signed-off-by: Pieter Praet <pieter@praet.org>
Makefile: 'clean': only remove 'magit.info' if we're not in a git repo

Don't break the docs for those who run Magit directly from the git checkout.

Signed-off-by: Pieter Praet <pieter@praet.org>
Makefile: s/rm -[rf]+/$(RM)/g

As suggested [1] by Ramkumar Ramachandra <artagnon@gmail.com>.

[1] mid:"CALkWK0kVQG5LsW8HTRPg4TaV9EmC_wwrLgS2WZiKS9Rqd7OO8A@mail.gmail.com"

Signed-off-by: Pieter Praet <pieter@praet.org>
Makefile: restore 'magit-pkg.el' target

And depend on `cl-lib'.

Pieter Praet pointed out I removed that target in afb15b75 even though
I intended to keep as it is needed for the Marmalade tarball.

Someone else (github is currently down) pointed out that we need to
depend on `cl-lib'.  Therefore we also need that file for the Melpa
package.
Merge branch 'makefile' into outsource
add git-{commit,rebase}-mode as dependencies