autotools.mk: remove autom4ate.cache directory when autoreconf-ing
[openwrt/openwrt.git] / include / autotools.mk
index 9ba3fc33b9e901a1e8fe80ef18094c6cab0c2264..e4c9fedbab4acc3debd2722d74fc89469866f0a7 100644 (file)
@@ -17,10 +17,14 @@ endef
 
 define autoreconf
        (cd $(PKG_BUILD_DIR); \
+               $(patsubst %,rm -f %;,$(PKG_REMOVE_FILES)) \
                if [ -x ./autogen.sh ]; then \
                        ./autogen.sh || true; \
                elif [ -f ./configure.ac ] || [ -f ./configure.in ]; then \
+                       [ -f ./aclocal.m4 ] && [ ! -f ./acinclude.m4 ] && mv aclocal.m4 acinclude.m4; \
+                       [ -d ./autom4te.cache ] && rm -rf autom4te.cache; \
                        $(STAGING_DIR_HOST)/bin/autoreconf -v -f -i -s \
+                               -B $(STAGING_DIR)/host/share/aclocal \
                                $(patsubst %,-I %,$(PKG_LIBTOOL_PATHS)) $(PKG_LIBTOOL_PATHS) || true; \
                fi \
        );
@@ -42,3 +46,8 @@ ifneq ($(filter libtool-ucxx,$(PKG_FIXUP)),)
  endif
 endif
 
+ifneq ($(filter autoreconf,$(PKG_FIXUP)),)
+  ifeq ($(filter autoreconf,$(Hooks/Configure/Pre)),)
+    Hooks/Configure/Pre += autoreconf
+  endif
+endif