The iozone code uses the pthread_setaffinity_np() function, but with
uClibc this function is only available when the NPTL thread
implementation is used. Some architectures, such as AVR32 and ARC do
not support the NPTL thread implementation, and therefore lack the
pthread_setaffinity_np() function.
This commit adds a patch that provides an empty implementation of
pthread_setaffinity_np() when we're using uClibc, but not with the
NPTL thread implementation. The reasoning is that there is a very high
chance that the few architectures that do not implement NPTL are
non-SMP architectures, and therefore setting the affinity is not very
useful.
In addition to this, this commit:
* Renames the existing patch to use a sequence number, in order to
guarantee a proper ordering when applying patches.
* Removes the Kconfig dependency on !uClibc 0.9.31, which was
introduced to prevent AVR32 from failing due to the
pthread_setaffinity_np(). This conditional is no longer necessary
due to the new patch, and the conditional was anyway not completely
working since it was not taking into account the case of external
toolchains.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The civetweb package bundled sqlite3 generates an object that is too large for
the xtensa default placement of literals in a dedicated section. Use
-mtext-section-literal to place literals in the text section.
Fixes
http://autobuild.buildroot.net/results/d14/d142f3ce17ab22cc39f9117c114318c1b5cadfc5/.
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The lmbench package generates a binary that is too large for the xtensa default
placement of literals in a dedicated section. Use -mtext-section-literal to
place literals in the text section.
Fixes
http://autobuild.buildroot.net/results/afe/afe9f4550e6ac9a41e4ba338773c1d51034273f7/.
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The php package generates a binary that is too large for the xtensa default
placement of literals in a dedicated section. Use -mtext-section-literal to
place literals in the text section.
Fixes
http://autobuild.buildroot.net/results/a9a/a9a1063104402ec28e01560ec7c8f8a5b6d43dd5/.
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The Xilinx Microblaze external toolchains that we had support for are
very old, and are causing a huge number of build issues. Thanks to
Spenser Gilliland, we now have support for Microblaze in the internal
toolchain backend, and the autobuilders have been using the internal
toolchain backend since then. Therefore, it's time to deprecate those
old and unusable external toolchains.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add Linaro ARM 2013.10 and Linaro ARM 2013.11, and remove Linaro ARM
2013.07 and Linaro ARM 2013.08.
The main change for those versions is the switch to eglibc 2.18.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit adds the support for the recently release Sourcery MIPS
2013.11 toolchain (gcc 4.8, gdb 7.6, glibc 2.18), and consequently
removes the support for the Sourcery MIPS 2012.03 toolchain.
While we're at it, also fix the incorrect help text related to the
MIPS64 multilib selection.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
This commit aligns the Grub handling of the splash screen with what is
done in the ISO9660 code.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
This will be used by other qt packages that contain a copy of
JavaScriptCore.
Signed-off-by: Fatih Aşıcı <fatih.asici@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When Grub is built with splashscreen support, copy the splashscreen
image to the ISO9660 filesystem. Otherwise, disable the splashscreen
in the grub menu.lst file.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
When one enables the generation of a cpio archive of the root
filesystem, the most likely usage is as an initramfs for the
kernel. This commit ensures that the kernel has initramfs support when
the rootfs cpio image format is chosen.
This will for example ensure that if the user selects the ISO9660
filesystem format (which uses a cpio initramfs), the kernel will have
proper support to load and use the initramfs.
It is worth mentionning that when BR2_TARGET_ROOTFS_INITRAMFS is
enabled, then BR2_TARGET_ROOTFS_CPIO is always enabled. That's why we
move the enabling of CONFIG_BLK_DEV_INITRD from the initramfs case to
the cpio case.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
This commit adds the support for the recently release Sourcery ARM
2013.11 toolchain (gcc 4.8, gdb 7.6, glibc 2.18), and consequently
removes the support for the Sourcery ARM 2011.09 toolchain.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
When using initramfs built into the kernel, it is useless to put an
initrd in the iso image. This patch makes the image to only contain
the kernel image, and also removes the initrd line from menu.lst
Signed-off-by: Thierry Bultel <thierry.bultel@wanadoo.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently, the Xtensa architecture uses the "snapshot" version of
uClibc. This means that the build is not reproducible, since it will
pick whatever latest version of uClibc is available at the moment of
the build.
This commit replaces that by adding a special Xtensa version, which
points to a well-known Git commit. This is something we should
hopefully be able to remove once the uClibc people realize that doing
a 0.9.34 release would be useful.
Should probably fix:
http://autobuild.buildroot.org/results/5d6/5d6072a038acf894d832704e36c1d43f0254abf5/build-end.log
at least I wasn't able to reproduce the build problem.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[baruch: use a more recent uClibc version]
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When BR2_TARGET_GRUB_SPLASH is enabled, we were passing
--enable-graphics, but when it was disabled, we were not doing
anything. However, in Grub, graphics support is enabled by default,
and you have to pass --disable-graphics to disable it.
Fix this by passing --enable-graphics or --disable-graphics as
appropriate.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
The fs/iso9660 logic assumes that the Grub bootloader is
used. Therefore, it should make sure that Grub is configured with the
support for the ISO9660 filesystem.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
In 1cece2813b (grub: add option to
configure the list of supported filesystems), we introduced the
BR2_TARGET_GRUB_FS_SUPPORT option which allows to provide a
space-separated list of filesystems that Grub should support.
However, it turns out that this not very practical, because the
iso9660 filesystem logic in Buildroot should force the ISO9660 support
to be enabled in Grub, which is not easy to do with a string option.
Therefore, this patch changes this option from a string option to a
list of boolean option, one per filesystem supported.
A few useful details:
- Since Grub legacy is dead, the list of filesystem, and therefore
the number of options, will not grow.
- We have only added options for filesystems that are likely to be
used in an embedded Linux context. Filesystems such as VSTAfs,
Minix, UFS2 or FFS2 are not supported.
- There is no need to add some Config.in.legacy support for the
previous option, since it was added after Buildroot 2013.11, and
was therefore never part of an official Buildroot release.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
In preparation to a change to the configuration options of the
supported filesystem in Grub, enclose the network driver options in a
sub-menu.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
The ISO9660-specific Grub menu.lst contains two entries: one entry to
chainload the bootloader available in the first hard drive, and
another entry to boot the Buildroot system.
However, it defaults to booting the first entry, i.e chainloading
what's on the first hard drive. For a Buildroot generated system, this
is quite odd: we're not even booting the system built by Buildroot.
So, switch the two entries, and put the Buildroot boot entry first.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
PDF files can not be easily embedded in other documents (eg. ODT, or HTML).
Add support for generating PNG graphs, by setting the GRAPH_OUT=pdf|png on
the command line:
make GRAPH_OUT=png graph-build graph-depends
The default is still to generate PDF graphs.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Generate the graph of the complete dependency tree by calling:
make graph-depends
It's also possible to generate the graph-depends for a single package:
make PKG-graph-depends
The graphs are generated in $(O)/graphs/
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Generate the build-time graphs by calling:
make graph-build
This generates the graphs in $(O)/graphs/
It is possible to use the alternate color-scheme by setting the variable
GRAPH_ALT=1 on the command line:
make GRAPH_ALT=1 graph-build
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This script generates graphs of packages build time, from the timing
data generated by Buildroot in the $(O)/build-time.log file.
Example usage:
./support/scripts/graph-build-time \
--type=histogram --input=$(O)/build-time.log --output=foobar.pdf
Three graph types are available :
* histogram, which creates an histogram of the build time for each
package, decomposed by each step (extract, patch, configure,
etc.). The order in which the packages are shown is
configurable: by package name, by build order, or by duration
order. See the --order option.
* pie-packages, which creates a pie chart of the build time of
each package (without decomposition in steps). Packages that
contributed to less than 1% of the overall build time are all
grouped together in an "Other" entry.
* pie-steps, which creates a pie chart of the time spent globally
on each step (extract, patch, configure, etc...)
The default is to generate an histogram ordered by package name.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[yann.morin.1998@free.fr: adapt to the format of the step-hooks build-time.log,
add sort order by name, default to name-ordered histogram, use our colours
for pie-charts, add alternate color-scheme, add short-options, add
--input/-i]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- use the autotools-package infrastructure, since the package uses an
autoconf configure script.
- remove uninstall and clean commands since those are no longer
supported by Buildroot.
- rewrap the help text.
- order alphabetically the package in package/Config.in]
Signed-off-by: Lucas De Marchi <lucas.de.marchi@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- remove empty newline at the end of Config.in
- use lowercase for the package name in the comment header
- reword the comment explaining why autoreconf is needed
- add optional dependency on libftdi, which avrdude can use
- remove avrdude.conf.bak file from /etc]
Signed-off-by: Wojciech M. Zabolotny <wzab01@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This patch update the patch for kernel's kconfig to add remaining
'kernel' mention.
It also applies this patch to buildroot's kconfig.
Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Only minor changes are registered, mainly help text.
Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since some time, we have removed the support to build a toolchain for
the target, and therefore the support for several development tools on
the target.
This commit deprecates a few additional development tools: m4, bison,
flex and gob2. For flex, we retain the ability to build libfl, we only
deprecated the ability to build the flex binary itself.
The original motivation for this patch is that m4 is causing build
issues in some configurations, but there isn't really much incentive
to fix this package for the target, since it is not really useful for
embedded Linux systems.
Bison, Flex and Gob2 are deprecated because they are reverse
dependencies of m4.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>