The current code spawns as many jobs as up to twice the number of CPUs.
On small-class machines like laptops, with a limitted amount of memory,
but still a few CPUs (real or hyperthreads), the HDD becomes a bottleneck,
and it becomes almost impossible to do anythiong else while there is a
build in progress.
Limit the number of jobs to the number of CPUs plus one.
Even on fast machines with fast HDDs, this settings keeps the machine
fully busy (for those packages that can build in parallel, of course).
For example, building qemu or the linux kernel kept my hyperthreaded
hexa Core i7 with 18GiB of RAM, busy at 99% (I never ever managed to
get 100% even with more jobs, not even 200); while on my hyperthreaded
dual Core i5 with only 4GiB and a slow HDD, I still topped at 100% CPU,
while still able to do some work involving the HDD.
If the number of processors is not available, assume one.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Nathan Lynch <ntl@pobox.com>
Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Nathan Lynch <ntl@pobox.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This is a configuration that provides a basic setup for generating
bootable nandflash images:
- at91bootstrap
- barebox
- kernel
- rootfs
Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
For more info, please read board/telit/evk-pro3/readme.txt
Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The external toolchain logic checks (and finds) the proper ARCH_LIB_DIR
and forcibly copies it to */lib even if it's in */lib64
This is all well until the check is done for create_lib64_symlinks which
only verifies if ARCH_SYSROOT_DIR/lib64 is a symlink, which in some
toolchain it's a real directory (like sourcery x86_64 2012.09) and thus
doesn't make the symlink in the target.
Fix this by also checking for a real directory.
Easily reproducible by running "make qemu_x86_64_defconfig", switching
to an external toolchain before build, building and then trying to run
the resulting image.
Closes bug #5054
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This should fix http://autobuild.buildroot.org/results/d2e386b50744aeda7257a0b78aafe90ba4da697c/
Because there is no host-cups package, host-gutenprint cant build the
host-cups drivers - missing includes and libs. Host gutenprint only
built to get the xml. Thus not a loss.
Signed-off-by: Olivier Schonken <olivier.schonken@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
strace isn't available for the AArch64 and ARC architectures.
The patchset for AArch64 is somewhat big and complicated (needs updates
to other bits) so it'd probably be better to use a git version of strace
or wait for a new release.
http://autobuild.buildroot.net/results/506f4adec348f0b616ad09bddbcbc242e38253b8/
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
During the compilation of wvstreams, a number of strict aliasing
related warnings are shown, making the build quite noisy. Turn
warnings off using the --disable-warnings option.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add an upstream patch that makes Pulseaudio link against json-c
instead of json, so that it works with json-c 0.11, and doesn't cause
problems with libjson has been also installed in the system. Note that
this fix has been merged in Pulseaudio after the 3.0 release, so we
will have to keep this patch around when bumping to 3.0.
Fixes
http://autobuild.buildroot.org/results/91ffd3196092c48b88f59adb12741b3f93064dea/build-end.log
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Bumping this package is needed, because json-c 0.10 has a major
defect: it installs a library named libjson.so, which conflicts with
the library installed by the libjson package.
This has been changed in the upstream json-c 0.11 version, which now
installs libjson-c and json-c.pc.
It allows to solve the Pulseaudio link problem, which wants to link
against json-c but happens to link against libjson when libjson has
been compiled and installed after json-c.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
python-nfc uses libusb that requires a toolchain with threads support
Signed-off-by: Gilles Talis <gilles.talis@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Also added license information
Signed-off-by: Gilles Talis <gilles.talis@gmail.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
For the following reasons:
- it used to be broken without anyone noticing for a long time,
- it is still not fully integrated within the Buildroot set of options,
- it has not gained much traction (not even I use it),
- I've always argued that sustained development should use an external
toolchain, and not rely on building one with Buildroot,
- I did not submit any of the enhancements requested during the last
developpers' day in Brussels,
- I have neither the incentive nor the time to maintain and enhance it,
it is time to deprecate the crosstool-NG backend for the 2013.05 release.
Then, it will be entirely removed early in the 2013.08 cycle, to let some
time for those that rely on it to voice their opinions. ;-)
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Some board configs where left out of the u-boot custom version
migration, so do it otherwise they'll just pull the latest version which
might not work and brick the device.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add custom version option as used in the linux kernel and barebox.
This way we can easily specify newer and older version.
Remove the list of the older versions because is obsoleted
by the new custom version option that is more flexible.
Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add Python bindings for the Apache Thrift RPC.
Thrift is an interface definition language that is used to define and create
services for numerous languages using remote procedure calls (RPC).
This patch does not include the Thrift code generator. It only includes the
Thrift libraries used at runtime.
Signed-off-by: Tiago Maluta <tiagomaluta@gmail.com>
Signed-off-by: Vinicius Tinti <viniciustinti@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Tested-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Current versions of libnl (since 3.2.4, at least) do not appear to
require MAKE1.
Signed-off-by: Nathan Lynch <ntl@pobox.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Tested-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Switch to distribute fork since it's maintained and fixes a few issues
while bumping to version 0.6.36.
There's work upstream in re-merging with setuptools which is now
supposedly maintained, see
http://mail.python.org/pipermail/distutils-sig/2013-March/020126.html
Buildroot python packages should use --single-version-externally-managed
and --root=/ in the install phase even if they're not setuptools-based.
This is because the default is to build egg files (zip files) for
packages to support multiple target versions, and since the packages
should be handled by buildroot infrastructure that's not needed.
Also potentially doing double-compression is time-wasting (i.e. egg
file and target filesystem) when running on slow targets.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We want --single-version-externally-managed (and --root=/) to make
python packages uncompressed (python eggs are zip files) since
compression should be a target filesystem responsibility.
And we don't need/want multiple versions of the same package in the
target since packages should be handled by buildroot on any sane
embedded system.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Signed-off-by: Michael J. Hammel <mjhammel@graphics-muse.org>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>