diff --git a/Makefile b/Makefile
index c3c6d59d8dde950ce54a0af53e3016ff1a092522..6ed50047d5fc06ea84a116be9a3657b2c3dfc9a0 100644
--- a/Makefile
+++ b/Makefile
@@ -45,7 +45,7 @@ $(PROGS): %$(EXESUF): %_g$(EXESUF)
 	cp -p $< $@
 	$(STRIP) $@
 
-SUBDIR_VARS := OBJS FFLIBS CLEANFILES DIRS TESTPROGS EXAMPLES \
+SUBDIR_VARS := OBJS FFLIBS CLEANFILES DIRS TESTPROGS EXAMPLES SKIPHEADERS \
                ALTIVEC-OBJS MMX-OBJS NEON-OBJS X86-OBJS YASM-OBJS-FFT YASM-OBJS
 
 define RESET
diff --git a/common.mak b/common.mak
index 0551d8e68fb571791ed663208da810a7e36cd840..d695f38a8cd60daae3a081ca5e16d750b8a3ff48 100644
--- a/common.mak
+++ b/common.mak
@@ -65,7 +65,8 @@ TESTPROGS := $(addprefix $(SUBDIR),$(addsuffix -test$(EXESUF),$(TESTPROGS)))
 DEP_LIBS := $(foreach NAME,$(FFLIBS),$(BUILD_ROOT_REL)/lib$(NAME)/$($(CONFIG_SHARED:yes=S)LIBNAME))
 
 ALLHEADERS := $(subst $(SRC_DIR)/,$(SUBDIR),$(wildcard $(SRC_DIR)/*.h $(SRC_DIR)/$(ARCH)/*.h))
-checkheaders: $(filter-out %_template.ho,$(ALLHEADERS:.h=.ho))
+SKIPHEADERS = $(addprefix $(SUBDIR),$(SKIPHEADERS-))
+checkheaders: $(filter-out $(SKIPHEADERS:.h=.ho),$(ALLHEADERS:.h=.ho))
 
 DEPS := $(OBJS:.o=.d)
 depend dep: $(DEPS)
diff --git a/libavcodec/Makefile b/libavcodec/Makefile
index e370c50084a0f0b1988814b7d6710f7099a89cdf..24e6af4cd8213669acae7a9c84684b12eee4d73f 100644
--- a/libavcodec/Makefile
+++ b/libavcodec/Makefile
@@ -543,6 +543,11 @@ OBJS-$(HAVE_MMI)                       += ps2/dsputil_mmi.o             \
 OBJS-$(HAVE_VIS)                       += sparc/dsputil_vis.o           \
                                           sparc/simple_idct_vis.o       \
 
+SKIPHEADERS-$(CONFIG_LIBDIRAC)         += libdirac.h
+SKIPHEADERS-$(CONFIG_LIBSCHROEDINGER)  += libschroedinger.h
+SKIPHEADERS-$(CONFIG_VAAPI)            += vaapi_internal.h
+SKIPHEADERS-$(CONFIG_VDPAU)            += vdpau.h
+SKIPHEADERS-$(CONFIG_XVMC)             += xvmc.h
 
 EXAMPLES = api
 
diff --git a/libavdevice/Makefile b/libavdevice/Makefile
index 75607aa2e1c95dbbc3237fc114f333022b741620..f8380b7611300a1f6c51fd615b5215964a38d741 100644
--- a/libavdevice/Makefile
+++ b/libavdevice/Makefile
@@ -26,4 +26,6 @@ OBJS-$(CONFIG_LIBDC1394_INDEV)           += libdc1394.o
 OBJS-$(CONFIG_AUDIO_BEOS_INDEV)          += beosaudio.o
 OBJS-$(CONFIG_AUDIO_BEOS_OUTDEV)         += beosaudio.o
 
+SKIPHEADERS-$(HAVE_ALSA_ASOUNDLIB_H)     += alsa-audio.h
+
 include $(SUBDIR)../subdir.mak