diff --git a/Makefile b/Makefile
index 2c7b0d54f175006e50f29c3a25a685507ae0dcaa..6de5a3d145f16630143cdb2aa0cec59773bea395 100644
--- a/Makefile
+++ b/Makefile
@@ -129,7 +129,7 @@ $(1)$(PROGSSUF)_g$(EXESUF): FF_EXTRALIBS += $(EXTRALIBS-$(1))
 -include $$(OBJS-$(1):.o=.d)
 endef
 
-$(foreach P,$(PROGS),$(eval $(call DOPROG,$(P:$(PROGSSUF)$(EXESUF)=))))
+$(foreach P,$(AVPROGS-yes),$(eval $(call DOPROG,$(P))))
 
 ffprobe.o cmdutils.o libavcodec/utils.o libavformat/utils.o libavdevice/avdevice.o libavfilter/avfilter.o libavutil/utils.o libpostproc/postprocess.o libswresample/swresample.o libswscale/utils.o : libavutil/ffversion.h
 
diff --git a/doc/examples/Makefile b/doc/examples/Makefile
index 277d4b0a1872e51ee76621250ed4a1a62ed07f15..9792e1f9115398b09f21a259c2628a3ed1a5e27a 100644
--- a/doc/examples/Makefile
+++ b/doc/examples/Makefile
@@ -28,6 +28,9 @@ PROGS              += $(DOC_EXAMPLES)
 EXAMPLES_FILES := $(wildcard $(SRC_PATH)/doc/examples/*.c) $(SRC_PATH)/doc/examples/README
 EXAMPLE_MAKEFILE := $(SRC_PATH)/doc/examples/Makefile
 
+$(foreach P,$(DOC_EXAMPLES),$(eval OBJS-$(P:%$(PROGSSUF)$(EXESUF)=%) = $(P:%$(PROGSSUF)$(EXESUF)=%).o))
+$(DOC_EXAMPLES): %$(PROGSSUF)$(EXESUF): %.o
+
 examples: $(DOC_EXAMPLES)
 
 $(DOC_EXAMPLES:%$(EXESUF)=%.o): | doc/examples
@@ -41,4 +44,6 @@ examplesclean:
 
 docclean:: examplesclean
 
+-include $(wildcard $(DOC_EXAMPLES:%$(PROGSSUF)$(EXESUF)=%.d))
+
 .PHONY: examples