diff --git a/Makefile b/Makefile
index d1b55ba3d1e18b117fd1d97a3899525e21f0ae93..c9821b754e6c4b76e05623d456c6e909482a1bd2 100644
--- a/Makefile
+++ b/Makefile
@@ -112,6 +112,7 @@ define DOSUBDIR
 $(foreach V,$(SUBDIR_VARS),$(eval $(call RESET,$(V))))
 SUBDIR := $(1)/
 include $(SRC_PATH)/$(1)/Makefile
+-include $(SRC_PATH)/$(1)/$(ARCH)/Makefile
 include $(SRC_PATH)/library.mak
 endef
 
diff --git a/libavcodec/Makefile b/libavcodec/Makefile
index 620c99e98006d115e02930f8d2ef20e747f3bcfd..fbb8112eea851867d2ed06d9e33d88c0d6eb7342 100644
--- a/libavcodec/Makefile
+++ b/libavcodec/Makefile
@@ -670,8 +670,6 @@ OBJS-$(CONFIG_MLIB)                    += mlib/dsputil_mlib.o           \
 # well.
 OBJS-$(!CONFIG_SMALL)                  += inverse.o
 
--include $(SRC_PATH)/$(SUBDIR)$(ARCH)/Makefile
-
 SKIPHEADERS                            += %_tablegen.h                  \
                                           %_tables.h                    \
                                           aac_tablegen_decl.h           \
diff --git a/libavfilter/Makefile b/libavfilter/Makefile
index 09865c148d21c822e9e9985ed72c5ce69240306e..8af152da22755814d80b8f81c19eea7ee0892532 100644
--- a/libavfilter/Makefile
+++ b/libavfilter/Makefile
@@ -69,8 +69,6 @@ OBJS-$(CONFIG_TESTSRC_FILTER)                += vsrc_testsrc.o
 
 OBJS-$(CONFIG_NULLSINK_FILTER)               += vsink_nullsink.o
 
--include $(SRC_PATH)/$(SUBDIR)$(ARCH)/Makefile
-
 DIRS = x86
 
 TOOLS = graph2dot lavfi-showfiltfmts