[buildroot] rework aclocal handling, packages have issues writing through the symlink...
[openwrt.git] / include / autotools.mk
index a1a5d5d..32b512e 100644 (file)
@@ -6,6 +6,7 @@
 #
 
 PKG_LIBTOOL_PATHS?=$(CONFIGURE_PATH)
+PKG_REMOVE_FILES?=aclocal.m4
 
 autoconf_bool = $(patsubst %,$(if $($(1)),--enable,--disable)-%,$(2))
 
@@ -17,11 +18,15 @@ 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 \
-                       rm -f ./GNUmakefile; \
+                       [ -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 \
+                               -B $(STAGING_DIR)/host/share/aclocal \
                                $(patsubst %,-I %,$(PKG_LIBTOOL_PATHS)) $(PKG_LIBTOOL_PATHS) || true; \
                fi \
        );
@@ -43,3 +48,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
This page took 0.023913 seconds and 4 git commands to generate.