mirror of
https://github.com/openwrt/openwrt.git
synced 2026-10-12 04:47:17 +04:00
tools: cache the configure results of ten autotools tools
These ten hold up the wall clock on their own. Their configure stages run while nothing else does, because the tools build in dependency order. Measured over a full build, cold cache against warm: sed 21.68 s -> 1.22 s m4 21.48 s -> 1.22 s findutils 19.47 s -> 1.56 s tar 17.75 s -> 1.47 s cpio 14.28 s -> 1.26 s bison 12.81 s -> 1.29 s patch 12.16 s -> 1.31 s elfutils 26.58 s -> 15.47 s Each of the ten configures the same way with a warm cache as it does without one. The check runs configure three times, without a cache, with a cold cache and with a warm cache, and compares every file that configure generates between the first and the last. ncurses fails that check; these do not. The only difference left is ac_ct_AR and ac_ct_RANLIB, which a cold run fills through the fallback path of AC_CHECK_TOOL and a warm run leaves empty. AR and RANLIB are correct in both, and no generated Makefile reads the ac_ct_ form. tools/cmake keeps its 33 s, the longest configure stage in the build. It bootstraps with its own script rather than autoconf, so this does not reach it. Signed-off-by: John Crispin <john@phrozen.org>
This commit is contained in:
1 parent
a0b036985a
commit
cd322612cc
10 files changed
+11
No files matched your search
@@ -15,6 +15,7 @@ PKG_HASH:=06c9e13bdf7eb24d4ceb6b59205a4f67c2c7e7213119644430fe82fbd14a0abb
|
||||
PKG_CPE_ID:=cpe:/a:gnu:bison
|
||||
|
||||
HOST_BUILD_PARALLEL:=1
|
||||
HOST_CONFIGURE_CACHE:=1
|
||||
|
||||
include $(INCLUDE_DIR)/host-build.mk
|
||||
|
||||
|
||||
@@ -9,6 +9,8 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
||||
PKG_SOURCE_URL:=@GNU/cpio
|
||||
PKG_HASH:=937610b97c329a1ec9268553fb780037bcfff0dcffe9725ebc4fd9c1aa9075db
|
||||
|
||||
HOST_CONFIGURE_CACHE:=1
|
||||
|
||||
HOST_BUILD_PARALLEL:=1
|
||||
|
||||
include $(INCLUDE_DIR)/host-build.mk
|
||||
|
||||
@@ -16,6 +16,7 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
|
||||
PKG_SOURCE_URL:=@KERNEL/linux/kernel/people/tytso/e2fsprogs/v$(PKG_VERSION)/
|
||||
|
||||
HOST_BUILD_PARALLEL:=1
|
||||
HOST_CONFIGURE_CACHE:=1
|
||||
|
||||
include $(INCLUDE_DIR)/host-build.mk
|
||||
|
||||
|
||||
@@ -49,6 +49,7 @@ PKG_GNULIB_MODS = \
|
||||
tsearch
|
||||
|
||||
HOST_BUILD_PARALLEL:=1
|
||||
HOST_CONFIGURE_CACHE:=1
|
||||
|
||||
include $(INCLUDE_DIR)/host-build.mk
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@ PKG_HASH:=1387e0b67ff247d2abde998f90dfbf70c1491391a59ddfecb8ae698789f0a4f5
|
||||
PKG_PROGRAMS:=find locate updatedb xargs
|
||||
|
||||
HOST_BUILD_PARALLEL:=1
|
||||
HOST_CONFIGURE_CACHE:=1
|
||||
|
||||
include $(INCLUDE_DIR)/host-build.mk
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@ PKG_CPE_ID:=cpe:/a:gmplib:gmp
|
||||
HOST_FIXUP:=autoreconf
|
||||
|
||||
HOST_BUILD_PARALLEL:=1
|
||||
HOST_CONFIGURE_CACHE:=1
|
||||
|
||||
include $(INCLUDE_DIR)/host-build.mk
|
||||
|
||||
|
||||
@@ -15,6 +15,7 @@ PKG_SOURCE_URL:=@GNU/$(PKG_NAME)
|
||||
PKG_HASH:=38ae59f7a30bf9c108193cc5c25fbb06014f21e230c7ede2eff614f7b7c37ed8
|
||||
|
||||
HOST_BUILD_PARALLEL:=1
|
||||
HOST_CONFIGURE_CACHE:=1
|
||||
|
||||
include $(INCLUDE_DIR)/host-build.mk
|
||||
|
||||
|
||||
@@ -16,6 +16,7 @@ PKG_SOURCE_URL:=@GNU/patch
|
||||
PKG_HASH:=308a4983ff324521b9b21310bfc2398ca861798f02307c79eb99bb0e0d2bf980
|
||||
|
||||
HOST_BUILD_PARALLEL := 1
|
||||
HOST_CONFIGURE_CACHE:=1
|
||||
|
||||
include $(INCLUDE_DIR)/host-build.mk
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@ PKG_CPE_ID:=cpe:/a:gnu:sed
|
||||
export SED:=
|
||||
|
||||
HOST_BUILD_PARALLEL:=1
|
||||
HOST_CONFIGURE_CACHE:=1
|
||||
|
||||
HOSTCC := $(HOSTCC_NOCACHE)
|
||||
HOSTCXX := $(HOSTCXX_NOCACHE)
|
||||
|
||||
@@ -15,6 +15,7 @@ PKG_SOURCE_URL:=@GNU/tar
|
||||
PKG_HASH:=14d55e32063ea9526e057fbf35fcabd53378e769787eff7919c3755b02d2b57e
|
||||
|
||||
HOST_BUILD_PARALLEL:=1
|
||||
HOST_CONFIGURE_CACHE:=1
|
||||
|
||||
include $(INCLUDE_DIR)/host-build.mk
|
||||
|
||||
|
||||
Reference in new issue
Block a user