diff --git a/Makefile b/Makefile
index 4fdd25b93fd48ac9db84a7f2f89e8f4c04e21d77..bf00a3e72cab3c78cae336086a15c298faa34f71 100644
--- a/Makefile
+++ b/Makefile
@@ -118,8 +118,6 @@ videohook: .libs
 documentation:
 	$(MAKE) -C doc all
 
-.PHONY: install
-
 install: install-progs install-libs install-headers install-man $(INSTALLVHOOK)
 
 ifeq ($(BUILD_SHARED),yes)
@@ -263,7 +261,9 @@ tar:
 	( cd /tmp ; tar zcvf ~/$(FILE).tar.gz $(FILE) --exclude .svn )
 	rm -rf /tmp/$(FILE)
 
-.PHONY: lib
+.PHONY: all lib videohook documentation install* wininstaller uninstall*
+.PHONY: dep depend clean distclean TAGS tar
+.PHONY: codectest libavtest test-server fulltest test mpeg4 mpeg
 
 ifneq ($(wildcard .depend),)
 include .depend
diff --git a/common.mak b/common.mak
index 0961c1740f665408423a1e89f455066d3b419fd5..9211db57659001bf055601fc8cc76929629b11b1 100644
--- a/common.mak
+++ b/common.mak
@@ -89,6 +89,8 @@ uninstall-headers:
 	rm -f "$(addprefix $(incdir)/,$(HEADERS))"
 	rm -f "$(libdir)/pkgconfig/lib$(NAME).pc"
 
+.PHONY: all depend dep clean distclean install* uninstall*
+
 #
 # include dependency files if they exist
 #
diff --git a/doc/Makefile b/doc/Makefile
index 744a9fbc18dcec1a9f0a3046f462c651b75f00a8..287836f71f3875a3f785985c45b5d45d83b07a6d 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -16,3 +16,5 @@ all: ffmpeg-doc.html faq.html ffserver-doc.html ffplay-doc.html hooks.html \
 
 clean:
 	rm -f *.html *.pod *.1
+
+.PHONY: all clean
diff --git a/libavcodec/Makefile b/libavcodec/Makefile
index 2d6f57ab23d2f25fb40acf65b30cb9f1128530fc..879a38aeb5defded2641cdcf7d37168cc4dc9c6e 100644
--- a/libavcodec/Makefile
+++ b/libavcodec/Makefile
@@ -422,3 +422,5 @@ motion-test: motion_test.o $(LIB)
 
 fft-test: fft-test.o $(LIB)
 	$(CC) -o $@ $^ $(LIBAVUTIL) -lm
+
+.PHONY: amrlibs tests
diff --git a/tests/Makefile b/tests/Makefile
index a5b34dbb23ed0f38876e07d497d7f1ba47b51fdc..835fab6cbf63df6249afd39a31300ead448dfd18 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -78,3 +78,6 @@ dsptest: dsptest.c $(DSPDEPS)
 distclean clean:
 	rm -rf vsynth1 vsynth2 data
 	rm -f asynth1.sw *~ audiogen$(EXESUF) videogen$(EXESUF) rotozoom$(EXESUF) tiny_psnr$(EXESUF)
+
+.PHONY: all fulltest test codectest libavtest test-server
+.PHONY: mpeg4 mpeg ac3 snow snowll distclean clean
diff --git a/vhook/Makefile b/vhook/Makefile
index d336d0445ff243958a0d9f23ef07da8309d71828..75dc4d8e11f6cc87ef87b2777d7e8d4652397a7e 100644
--- a/vhook/Makefile
+++ b/vhook/Makefile
@@ -44,6 +44,8 @@ clean:
 distclean: clean
 	rm -f .depend
 
+.PHONY: all depend dep clean distclean install* uninstall*
+
 ifneq ($(wildcard .depend),)
 include .depend
 endif