Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v8 RESEND 0/8] Add support for top-level parallel make
@ 2013-10-18  9:34 Fabio Porcedda
  2013-10-18  9:34 ` [Buildroot] [PATCH v8 RESEND 1/8] package: add base dependency to every package Fabio Porcedda
                   ` (9 more replies)
  0 siblings, 10 replies; 40+ messages in thread
From: Fabio Porcedda @ 2013-10-18  9:34 UTC (permalink / raw)
  To: buildroot

Hi all,
this is a patch set for adding support for top-level parallel make in
buildroot, the common problem scattered in buildroot's top-level
makefiles is that in the rules it relies on the order of evaluation of
the prerequisites, to be able to use top-level parallel make instead
of reling on the left to right ordering of evaluation of the
prerequisites we must add an explicit rule to describe the
dependencies.

With this patch set the top-level parallel make seems to work fine,
example:
	make clean
	make BR2_JLEVEL= -j$((`getconf _NPROCESSORS_ONLN` + 1))

On my quad core system the building time for qemu_x86_defconfig
is 13m versus 11m.

I've tested the qemu_x86_defconfig uclibc/eglibc/glibc.

Best regards
Fabio Porcedda

v8:
 - rebased over master
 - added patche for for base dependency
 - added patche for for glibc package
 - added patche for for uclibc package
 - removed patch already merged
 - changed some descriptions
 - modified the patch for toolchain dependency to prevent circular dependency
v7:
 - add the latest patch
 - add to the first patch the <pkgname>_TOOLCHAIN variable
 - improve the fifth patch
v6:
 - added the fifth patch
 - updated the fourth patch adding the install targets
 - updated the second patch to remove TARGETS_ALL
v5:
 - added the fourth patch
 - fixed some typos
 - rewrited the second patch to use only $$($(2)_TARGET_*) in the rules
 - add support for top-level parallel make for the glibc package
v4:
 - rebased over master
 - add Acked-by: Thomas Petazzoni on the third patch
 - changed the orderd of the patches
v3:
 - add back the patch "package: add toolchain dependency to
    inner-generic-package" because now is working fine.
 - add Acked-by: Arnout Vandecappelle to the third patch.
 - reworked the second patch following Arnout suggestions.
v2:
 - remove patch "package: add toolchain dependency to inner-generic-package"
   because was not working fine against recent toolchain changes.

Fabio Porcedda (8):
  package: add base dependency to every package
  package: add toolchain dependency to every target package
  package: add support for top-level parallel make
  Makefile: add support for top-level parallel make
  glibc: add support for top-level parallel make
  uclibc: add support for top-level parallel make
  package: enable jobserver for recursive make
  Makefile: enable top-level parallel make

 Makefile                                           | 22 +++-----
 fs/common.mk                                       |  4 +-
 package/glibc/glibc.mk                             |  7 ++-
 package/linux-headers/linux-headers.mk             |  3 ++
 package/pkg-autotools.mk                           |  3 +-
 package/pkg-generic.mk                             | 60 +++++++++++++---------
 package/uclibc/uclibc.mk                           |  7 ++-
 .../toolchain-buildroot/toolchain-buildroot.mk     |  2 +
 toolchain/toolchain-external/toolchain-external.mk |  2 +
 toolchain/toolchain/toolchain.mk                   |  5 +-
 10 files changed, 69 insertions(+), 46 deletions(-)

-- 
1.8.4

^ permalink raw reply	[flat|nested] 40+ messages in thread

end of thread, other threads:[~2013-11-14  9:15 UTC | newest]

Thread overview: 40+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-10-18  9:34 [Buildroot] [PATCH v8 RESEND 0/8] Add support for top-level parallel make Fabio Porcedda
2013-10-18  9:34 ` [Buildroot] [PATCH v8 RESEND 1/8] package: add base dependency to every package Fabio Porcedda
2013-10-23 21:12   ` Arnout Vandecappelle
2013-10-24  7:41     ` Fabio Porcedda
2013-10-24  8:22       ` Thomas De Schampheleire
2013-10-25  8:09         ` Fabio Porcedda
2013-10-24 10:37       ` Arnout Vandecappelle
2013-10-25  8:07         ` Fabio Porcedda
2013-10-25  8:12           ` Arnout Vandecappelle
2013-10-25  8:45             ` Fabio Porcedda
2013-10-29  8:36               ` Fabio Porcedda
2013-10-29  9:35                 ` Thomas De Schampheleire
2013-10-29 11:06                   ` Fabio Porcedda
2013-10-18  9:34 ` [Buildroot] [PATCH v8 RESEND 2/8] package: add toolchain dependency to every target package Fabio Porcedda
2013-10-23 21:53   ` Arnout Vandecappelle
2013-10-27 17:55     ` Thomas Petazzoni
2013-10-28  8:01       ` Arnout Vandecappelle
2013-11-05  9:41     ` Fabio Porcedda
2013-10-18  9:34 ` [Buildroot] [PATCH v8 RESEND 3/8] package: add support for top-level parallel make Fabio Porcedda
2013-10-23 22:19   ` Arnout Vandecappelle
2013-11-11  9:36     ` Fabio Porcedda
2013-10-18  9:34 ` [Buildroot] [PATCH v8 RESEND 4/8] Makefile: " Fabio Porcedda
2013-10-23 22:29   ` Arnout Vandecappelle
2013-11-11 12:54     ` Fabio Porcedda
2013-10-23 22:40   ` Arnout Vandecappelle
2013-11-11 12:26     ` Fabio Porcedda
2013-10-18  9:34 ` [Buildroot] [PATCH v8 RESEND 5/8] glibc: " Fabio Porcedda
2013-10-23 22:48   ` Arnout Vandecappelle
2013-11-11 12:47     ` Fabio Porcedda
2013-10-18  9:34 ` [Buildroot] [PATCH v8 RESEND 6/8] uclibc: " Fabio Porcedda
2013-10-23 22:49   ` Arnout Vandecappelle
2013-11-11 12:50     ` Fabio Porcedda
2013-10-18  9:34 ` [Buildroot] [PATCH v8 RESEND 7/8] package: enable jobserver for recursive make Fabio Porcedda
2013-10-18  9:34 ` [Buildroot] [PATCH v8 RESEND 8/8] Makefile: enable top-level parallel make Fabio Porcedda
2013-10-23 21:09 ` [Buildroot] [PATCH v8 RESEND 0/8] Add support for " Arnout Vandecappelle
2013-11-11 13:49 ` Thomas Petazzoni
2013-11-12  8:39   ` Fabio Porcedda
2013-11-13 13:40     ` Fabio Porcedda
2013-11-13 20:05     ` Arnout Vandecappelle
2013-11-14  9:15       ` Fabio Porcedda

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox