diff mbox

[1/2] pkg-autotools: use --disable-dependency-tracking

Message ID 1409259825-619-1-git-send-email-thomas.petazzoni@free-electrons.com
State Accepted
Commit 3e37b0fc6cbbe2245e39fedb247a381fb4e0d992
Headers show

Commit Message

Thomas Petazzoni Aug. 28, 2014, 9:03 p.m. UTC
By default, automake does "dependency tracking", which allows the
generated Makefile to contain the necessary dependencies to
automatically rebuild the appropriate C files when included header
files are changed. This dependency tracking is nice when doing active
development on the package, but not really useful when doing a
one-time build of the package. According to automake's
documentation[1], disabling the dependency tracking provides a small
speed-up.

In some very unscientific measurements (i.e repeated only once), we
have noticed a ~3.6% reduction of the total build time of a Buildroot
toolchain after applying this patch.

[1] http://www.gnu.org/software/automake/manual/html_node/Dependency-Tracking.html

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/pkg-autotools.mk | 2 ++
 1 file changed, 2 insertions(+)

Comments

Peter Korsgaard Aug. 29, 2014, 7:18 a.m. UTC | #1
>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:

 > By default, automake does "dependency tracking", which allows the
 > generated Makefile to contain the necessary dependencies to
 > automatically rebuild the appropriate C files when included header
 > files are changed. This dependency tracking is nice when doing active
 > development on the package, but not really useful when doing a
 > one-time build of the package. According to automake's
 > documentation[1], disabling the dependency tracking provides a small
 > speed-up.

 > In some very unscientific measurements (i.e repeated only once), we
 > have noticed a ~3.6% reduction of the total build time of a Buildroot
 > toolchain after applying this patch.

 > [1] http://www.gnu.org/software/automake/manual/html_node/Dependency-Tracking.html

3% isn't much, but OK - Committed both to next, thanks.
Thomas Petazzoni Aug. 29, 2014, 7:21 a.m. UTC | #2
Dear Peter Korsgaard,

On Fri, 29 Aug 2014 09:18:15 +0200, Peter Korsgaard wrote:
> >>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:
> 
>  > By default, automake does "dependency tracking", which allows the
>  > generated Makefile to contain the necessary dependencies to
>  > automatically rebuild the appropriate C files when included header
>  > files are changed. This dependency tracking is nice when doing active
>  > development on the package, but not really useful when doing a
>  > one-time build of the package. According to automake's
>  > documentation[1], disabling the dependency tracking provides a small
>  > speed-up.
> 
>  > In some very unscientific measurements (i.e repeated only once), we
>  > have noticed a ~3.6% reduction of the total build time of a Buildroot
>  > toolchain after applying this patch.
> 
>  > [1] http://www.gnu.org/software/automake/manual/html_node/Dependency-Tracking.html
> 
> 3% isn't much, but OK - Committed both to next, thanks.

Well, I was indeed a bit disappointed by the small difference. But I
believe it anyway makes more sense than having a few random packages
pass --disable-dependency-tracking.

Also, as we say in French, "les petits ruisseaux font les grandes
rivières", which could roughly be translated as "the small streams make
the big rivers". Everything counts :-)

Thomas
Peter Korsgaard Aug. 29, 2014, 7:58 a.m. UTC | #3
>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:

Hi,

 >> 3% isn't much, but OK - Committed both to next, thanks.

 > Well, I was indeed a bit disappointed by the small difference. But I
 > believe it anyway makes more sense than having a few random packages
 > pass --disable-dependency-tracking.

 > Also, as we say in French, "les petits ruisseaux font les grandes
 > rivières", which could roughly be translated as "the small streams make
 > the big rivers". Everything counts :-)

Yeah. In Danish it is 'Mange bække små gør en stor å' ;)
diff mbox

Patch

diff --git a/package/pkg-autotools.mk b/package/pkg-autotools.mk
index bcc648d..83299cf 100644
--- a/package/pkg-autotools.mk
+++ b/package/pkg-autotools.mk
@@ -140,6 +140,7 @@  define $(2)_CONFIGURE_CMDS
 		--disable-documentation \
 		--with-xmlto=no \
 		--with-fop=no \
+		--disable-dependency-tracking \
 		$$(DISABLE_NLS) \
 		$$(DISABLE_LARGEFILE) \
 		$$(DISABLE_IPV6) \
@@ -169,6 +170,7 @@  define $(2)_CONFIGURE_CMDS
 		--disable-documentation \
 		--with-xmlto=no \
 		--with-fop=no \
+		--disable-dependency-tracking \
 		$$(QUIET) $$($$(PKG)_CONF_OPT) \
 	)
 endef