Doug Kehn [Mon, 15 Jun 2015 21:55:19 +0000 (16:55 -0500)]
package/gdb: gdb+expat build fix
Commit 23413b51b2308225584b65c2fcd800ca8f7c56af added --with-expat
configure option and expat dependency when BR2_PACKAGE_EXPAT is
configured. When cross-compiling, gdb configure fails because the host
system libexpat is referenced.
Configuring gdb with
--with-libexpat-prefix=$(STAGING_DIR)/usr
fixes the reference and allows gdb to build successfully.
Tested with arm-buildroot-linux-gnueabihf toolchain.
Signed-off-by: Doug Kehn <rdkehn@yahoo.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cédric Marie [Mon, 15 Jun 2015 20:02:45 +0000 (22:02 +0200)]
directfb: add an option for debugging support
DirectFB provides two options for debug:
* --enable-debug-support (default is yes)
* --enable-debug (default is no)
The first one provides the functions to print debug information. These
functions can be called inside DirectFB, or by an external DirectFB
driver in another package.
The second one enables verbose mode in DirectFB, using these functions.
Buildroot currently provides an option for the second one only. The
first one - which is necessary for the second one - is always enabled,
because this is the default value.
The new option (BR2_PACKAGE_DIRECTFB_DEBUG_SUPPORT) makes it possible
to disable debugging support (--disable-debug-support) in order to
build the library with no debug feature at all.
When debugging support is disabled, the target installation path of
drivers (/usr/lib/directfb-<version>) is suffixed with -pure. The
public library (/usr/lib/libdirectfb.so) remains unchanged.
Some external DirectFB drivers will install into
/usr/lib/directfb-<version>-pure in release mode. For that reason, it
is important that DirectFB can be configured to use this directory.
Signed-off-by: Cédric Marie <cedric.marie@openmailbox.org> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Matthew Starr [Tue, 16 Jun 2015 20:42:28 +0000 (15:42 -0500)]
system: make /bin/sh symlink use relative path
The symlink created by buildroot for /bin/sh is the full path to
a shell. This does not match what busybox and other Linux
distributions do with using relative path symlinks. When handling
files on the host system this will point to the host system's shell
if present and not the target shell.
This is fixed by changing the /bin/sh symlink to use a relative path.
Fixes #8161.
[Thomas: minor fixups to the commit log suggested by Yann E. Morin.]
Signed-off-by: Matthew Starr <mstarr@hedonline.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The following commit explicitly configures optional dependencies based
off the respective package selections for a given configuration.
In addition, this commit also cleans up some obsolete/incorrect
arguments. With the introduction of (at least) Fluxbox 1.3.7, the
'--with-imlib2-prefix' argument no longer exists. The argument
'--with-xpm-prefix' has never existed; it was accidentally committed
mimicking the configuration used to provide imlib2.
Signed-off-by: James Knight <james.knight@rockwellcollins.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
James Knight [Thu, 18 Jun 2015 17:42:56 +0000 (13:42 -0400)]
fluxbox: fix build against xlib_libXpm
Explicitly configure XPM support based on the library selection provided
(BR2_PACKAGE_XLIB_LIBXPM). It has been observed on different hosts that
XPM support may or may not be included based off the state of the host's
system. One can validate XPM support is included in Fluxbox by using the
command `fluxbox -info`.
Signed-off-by: James Knight <james.knight@rockwellcollins.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- remove S01audit, which isn't completely compliant with the
Buildroot style.
- make the package available only on architectures for which the
system call tables are available, and add some comments about this
in the .mk file.]
Signed-off-by: Clayton Shotwell <clayton.shotwell@rockwellcollins.com> Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Thomas Petazzoni [Wed, 17 Jun 2015 10:24:44 +0000 (12:24 +0200)]
lftp: indicate why autoreconf is needed
We no longer have any patch touching configure.ac/Makefile.am, so one
might wonder why we're autoreconfiguring the package. The reason is
that our libtool patch doesn't apply on the code provided by the lftp
tarball.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Yegor Yefremov [Mon, 15 Jun 2015 19:53:34 +0000 (21:53 +0200)]
eudev: add enable/disable hwdb option
This option enables/disables installation of the eudev hardware database,
which provides various extra properties for known devices.
Enabling this option adds ~5MB to the rootfs size.
The option is enabled by default in order to preserve old behavior.
This patch adds the option to download at91bootstrap3 from
a custom git URL. This is a requirement for all that boards
that use a custom at91bootstrap3 version.
Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This patch adds licensing informations to at91bootstrap3
[Thomas:
- change from "BSD-2c with endorsement clause" to "Atmel License",
because the license of AT91Bootstrap is neither a BSD-2c nor a
BSD-3c: it does not carry the second clause of the BSD-2c or BSD-3c
licenses giving the condition of redistribution of the binary form.]
Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
After having extended the iso9660 support to allow isolinux as an
alternative to grub, this commit adds grub2 as a third
alternative. With the previous work done to support isolinux, adding
support for grub2 is fairly trivial.
[Thomas: set timeout to 10 seconds and not 5 seconds, in order to
match the configuration used for grub.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
In order to support ISO9660 bootable images that rely on Grub 2, this
commit modifies thr Grub 2 makefile to generate and install an El
Torito image. Such an image is simply produced by concatenating the
cdboot.img provided by Grub 2, and the Grub 2 image generated by
Buildroot using grub-mkimage.
Since this action is so simple and cost-free, we don't bother adding a
Grub 2 sub-option for that, and simply generate the El Torito image
unconditionally.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
This commit adds a new option, which allows, when isolinux is used as
the bootloader, to generate an "hybrid" ISO image. Such images can
either be booted from CD-ROM or from USB keys. It simply uses the
isohybrid tool provided by syslinux.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
After all the preparation commits, this commit finally adds the
iso9660 support itself. Besides adding a new Config.in entry, a little
bit of .mk code and the isolinux.cfg default configuration, not much
is needed.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
fs/iso9660: use 'depends on' instead of 'select' for bootloader
In preparation to the introduction of the support for other
bootloaders than Grub, this commit switches from having the iso9660
support "select" the necessary bootloader to using a "depends on".
The main motivation is that the isolinux bootloader support will
really need to do a "depends on", due to the need of having a certain
option enabled, but this option being a kconfig "choice".
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
In preparation to the introduction for the support of other
bootloaders than Grub, this commit adds a "choice ... endchoice" block
with just the Grub option, and adds some conditionals in the
iso9660.mk code for the Grub specific parts.
Of course, for now those conditionals are a bit useless with just this
commit, but they become useful with the followup commits.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
fs/iso9660: support building a real iso9660 filesystem
Until now, the iso9660 filesystem handling only supported using an
initrd/initramfs to store the root filesystem, which is very different
from what we do with the other filesystems.
This commit changes the iso9660 logic to also allow using directly an
iso9660 filesystem to store the root filesystem. A new option,
BR2_TARGET_ROOTFS_ISO9660_INITRD, is created to tell the iso9660 that
we want to use an initrd and not directly the root filesystem in
iso9660 format. This option defaults to 'y' to preserve the existing
behavior.
After this commit, we therefore have three possibilities:
* BR2_TARGET_ROOTFS_ISO9660=y, with BR2_TARGET_ROOTFS_INITRAMFS and
BR2_TARGET_ROOTFS_ISO9660_INITRD disabled. In this case, the
iso9660 filesystem is directly the contents of the root filesystem
(since is possible thanks to the Rockridge extensions that were
already enabled using the -R option of genisoimage). Obviously, it
means that the root filesystem is read-only.
* BR2_TARGET_ROOTFS_ISO9660=y and BR2_TARGET_ROOTFS_INITRAMFS=y (the
value of BR2_TARGET_ROOTFS_ISO9660_INITRD doesn't matter). In this
case, the root filesystem is already linked into the kernel image
itself, as an initramfs. So the iso9660 filesystem doesn't contain
the root filesystem as is, but just the bootloader and the kernel
image.
* BR2_TARGET_ROOTFS_ISO9660=y, BR2_TARGET_ROOTFS_ISO9660_INITRD=y and
BR2_TARGET_ROOTFS_INITRAMFS disabled. In this case, a separate
initrd is used. The iso9660 filesystem only contains the
bootloader, the kernel and the initrd.
In order to support the first case out of the box, root=/dev/sr0 is
added on the kernel command line in the example Grub configuration
file, so that the kernel knows where the root filesystem is
located. This argument is ignored when initrd/initramfs are used.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
The iso9660.mk modifies the menu.lst file from Grub to set the correct
initrd/kernel image locations. However, with the upcoming support of
other bootloaders for iso9660 filesystems, we need to modify a bit
this logic.
Instead of relying on the specific details of the grub menu.lst
syntax, we introduce the __KERNEL_PATH__ and __INITRD_PATH__ magic
keywords, which iso9660.mk will replace by the appropriate
values. They can therefore be used where needed in grub menu.lst, and
in similar configuration files of other bootloaders, as will be
supported in the following commits.
Also, in order to be consistent with the soon to be introduced support
for having the root filesystem itself as iso9660, this commit changes
the installation location of the initrd and kernel. Instead of being
/initrd and /kernel, they become /boot/initrd and
/boot/$(LINUX_IMAGE_NAME).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Samuel Martin <s.martin49@gmail.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Instead of using directly the splash image from the Buildroot source
directory boot/grub, this commit changes the iso9660 logic to use the
splash image installed in $(TARGET_DIR)/boot/grub.
This effectively allows a user to use a custom splash image by
installing it to $(TARGET_DIR) through a rootfs overlay or using a
post-build script.
Suggested-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
fs/iso9660: change the location of the splash image
In order to simplify the introduction of the support for using ISO9660
as the real root filesystem, this commit changes the location of the
grub splash image. This makes it match where the splash image is
located in $(TARGET_DIR), so that regardless of whether the
initrd/initramfs solution or the real iso9660 filesystem solution are
used, the splash image is installed at the same location.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Samuel Martin <s.martin49@gmail.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
fs/iso9660: rename all variables to use the ROOTFS_ISO9660 prefix
For consistency reasons, this commit renames all internal variables of
iso9660.mk to use the ROOTFS_ISO9660 prefix.
While we're at it, replace a useless ':=' by '='.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Samuel Martin <s.martin49@gmail.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
We already enable the Rockridge extension by default when building
ISO9660, so let's also enable the Joliet extension which allows to
support Unicode file names and long file names.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Samuel Martin <s.martin49@gmail.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
fs/iso9660: convert to the filesystem infrastructure
This commit converts the iso9660 logic to the common rootfs
infrastructure. What previously prevented it from being converted is
that the iso9660 logic needed to remove a temporary folder after the
image has been created.
However, since Buildroot typically keeps build artefacts around, this
commit changes the logic to keep this temporary folder around. Thanks
to this change, converting to the common rootfs infrastructure becomes
possible.
In addition, the temporary folder is renamed from $(BUILD_DIR)/iso9660
to the more descriptive $(BUILD_DIR)/rootfs-iso9660.tmp.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
fs/iso9660: use if ... endif block instead of depends on
In preparation to the addition of numerous additional options to the
iso9660 filesystem logic, use a if ... endif block instead of a
depends on for the only option that currently exists.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Samuel Martin <s.martin49@gmail.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Thomas Petazzoni [Sat, 13 Jun 2015 17:21:46 +0000 (19:21 +0200)]
uclibc: remove Xtensa specific version
Since we now have uClibc-ng, and it is used as the default uClibc
version, there is no real need to keep the Xtensa version: this
version is just a specific Git revision of uClibc master branch, and
uClibc-ng is also based on uClibc master branch.
In addition, since in the choice of uClibc versions, uClibc-ng is
already *before* the Xtensa specific version, uClibc-ng has in fact
already been the default uClibc version for Xtensa since uClibc-ng
support was introduced.
Thomas Petazzoni [Sat, 13 Jun 2015 17:21:45 +0000 (19:21 +0200)]
uclibc: use uClibc-ng by default
Since the uClibc project is not making any release since about 3
years, and the uClibc-ng project is now alive and delivering regular
releases based on uClibc master plus a number of fixes, let's make
uClibc-ng the default uClibc version used by Buildroot.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Waldemar Brodkorb <wbx@openadk.org> Acked-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Jörg Krause [Sun, 14 Jun 2015 12:47:04 +0000 (14:47 +0200)]
package/musl: bump to version 1.1.10
A new regression in uselocale made it into this release. As suggested [1] by the
musl maintainers add a patch from upstream [2] to avoid breaking programs that
call uselocale.
Gustavo Zacarias [Sat, 13 Jun 2015 12:44:48 +0000 (09:44 -0300)]
bc: patch makeinfo logic
It uses a hardcoded "makeinfo" command invocation instead of the usual
MAKEINFO variable with the missing logic for docs. Fixes:
http://autobuild.buildroot.net/results/b0b/b0b9dced0014a5a8026fa972f95085e8bd16a07b/
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Robert Sohn [Fri, 12 Jun 2015 12:44:34 +0000 (08:44 -0400)]
bc: bump version to 1.06.95
The current version of bc being used (1.06) is from 2000 and contains a
serious bug causing it to segfault when the math library is used, so bump to
the latest alpha release, which is also 9 years old.
Also include two fixes for Debian (https://packages.debian.org/jessie/bc)
- A patch to fix array initialization by Phul Nelson
- A patch to get bc to notice I/O errors by Ian Jackson
[Peter: fixup white space and tweak commit message] Signed-off-by: Robert Sohn <grepper@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Kyua is a testing framework for infrastructure software, originally
designed to equip BSD-based operating systems with a test suite. This
means that Kyua is lightweight and simple, and that Kyua integrates
well with various build systems and continuous integration frameworks.
https://github.com/jmmv/kyua
[Thomas: fix typo in hash file.]
Signed-off-by: Sebastien Bourdelin <sebastien.bourdelin@savoirfairelinux.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- move lutok inclusion in package/Config.in after including the Lua
external modules
- add a comment explaining why we are passing --without-atf
- remove the logic around -ldl, it seems to build just fine without it.]
Signed-off-by: Sebastien Bourdelin <sebastien.bourdelin@savoirfairelinux.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>