Makefile: change rsync used in overlays to always transfer files

If two files with the same relative paths exist in multiple overlay
skeletons, and they have the same modification time and size, then rsync
might not copy the later file on top of the earlier file.  This patch fixes
this by adding the -I option to the rsync commands used in the overlay
skeleton file installations.  ("man rsync" indicates that this option turns
off the file-size/mod-date "quick check" behavior, causing all files to be
updated - more like the cp commands that we had originally.)

[Peter: use --ignore-times to make it obvious what the option does]
Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Makefile: also use ignore-times argument to rsync when copying rootfs overlays

Missed from previous patch.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
elf2flt: change source site

The CVS repository for this package is no longer available. So
changing the repository to be a mirror git repository.

Fixes:
  http://autobuild.buildroot.net/results/779/77997fd75282c355f6270b92371c161c9457d1dd

Signed-off-by: Ryan Barnett <rjbarnet@rockwellcollins.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
gnutls: fix libz autodetection failure

The configure script finds libz in the distribution libraries, which causes
zlib support to be dropped from the cross-compiled GnuTLS.

Signed-off-by: Antoine Pierlot-Garcin <antoine@bokbox.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Strip *.so* and not only executable files

Our current stripping strategy requires that shared libraries have the
executable permission. However, this is by far not something
recognized as a standard behavior: Debian/Ubuntu distributions for
example do not have executable permissions on their
libraries. Therefore, pushing to upstream packages fixes that add the
executable permissions is not easy.

As a result, this commit improves the stripping logic so that it not
only strips the files that are executable, but also the ones that
match '*.so*', which should match both the shared libraries and the
dlopen()'able plugins, as long as they have a .so extension.

Thanks to this addition, a number of manual "chmod +x" done by various
packages can be removed.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
CHANGES: add issues resolved in 2014.02 cycle

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
iucode-tools: requires argp_standalone with uclibc toolchains

Fixes:
http://autobuild.buildroot.net/results/3fc/3fc0b3f356efdebae4f7597a16d0d67f8bc4b76d/

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
libsigsegv: disable for xtensa

The xtensa uClibc port does not provide the ucontext.h context manipulation
routines that libsigsegv needs.

Fixes:
http://autobuild.buildroot.net/results/06d/06d091f2ea8d08a900dd7304bab5eeeeb85f7353/

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
uClibc: 0.9.33.2: revert pread/pwrite patches from upstream git

The pread/pwrite handling on the 0.9.33 branch doesn't take into
consideration architectures with an ABI requiring natural alignment for
64bit arguments (afaik ARM EABI, MIPS O32, PPC, SH and Xtensa), causing
havoc.

The issue has been brought with the uClibc developers, but so far a fix is
not available - So lets revert the patches for now as they cause real
issues.

For further details, see:

http://lists.busybox.net/pipermail/buildroot/2014-January/087050.html

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
opus: allow to select fixed-point implementation

The default of choosing the fixed-point implementation if
the target hardware does not have floating-point unit is not
always the best choice. Modern ARM hardware has floating
point support but most likely the fixed-point implementation
in Opus will still perform better. In particular if your CPU
supports the NEON extension.

This commit allows to select the fixed-point implementation
manually and sets the default based on the availability of
a floating-point unit.

[Peter: force option for sw float, slightly reword]
Signed-off-by: Sven Neumann <neumann@teufel.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
arch: remove sh2, sh3 and sh3eb support

This patch removes the sh2, sh3 and sh3eb support, because the user
base is inexistent, and the Linux support for these architectures is
poor. The sh2a support is preserved, because at least one user
expressed interest in this architecture, and is actually using it:

  http://lists.busybox.net/pipermail/buildroot/2013-April/070399.html

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
ccache: replace BUILDROOT_CACHE_DIR with BR_CACHE_DIR.

To make the naming consistent (qstripped variant of a config option
should be named BR_XXX).

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
infra: remove redundant $(call) on pkgdir, pkgname, pkgparentdir

When calling make 'functions', the $(call) keyword is only needed if the
function takes arguments. For pkgdir, pkgname and pkgparentdir this is not
the case, so we can remove the call to make things more readable.

Suggested-by: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
infra: remove variable FOO_DIR_PREFIX

Variable FOO_DIR_PREFIX in inner-generic-package isn't really needed. The
contents of this variable are 'package' for normal packages, 'boot' for
bootloaders, and 'linux' for the linux kernel.
When patching a package, all you need to know is the directory where
patches can reside, which is already returned by $(pkgdir). In order to be
able to use this variable outside of inner-generic-package, we introduce a
target-specific variable PKGDIR that equals to this $(pkgdir).

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
infra: remove usage of 4th parameter to inner-generic-package

In preparation of the removal of the 4th parameter to inner-generic-package
and the pkgparentdir helper function, this patch removes the direct usage of
this 4th parameter. The remaining usage
ifeq ($(4),boot/)
can become
$(filter boot/%,$(pkgdir))
instead (and similar for toolchain).

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
infra: remove unused 4th parameter to package infrastructures (pkgparentdir)

The fourth parameter to inner-generic-package is no longer used. Removing
this parameters requires renaming all usages of $(5) to $(4), and updating
the calls to inner-generic-package (and equivalent for the other package
infrastructures).

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
infra: remove unused helper function pkgparentdir

Thanks to the previous patches, no-one is using pkgparentdir anymore, so
remove it.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
gpm: needs bison

Fixes http://autobuild.buildroot.net/results/a4b/a4b473ae0a97fe79dbc30e6603f029f946c011fe/

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
eudev: new package.

eudev is a userspace device management daemon. It is a standalone
version, independent from systemd. It is a fork maintained by Gentoo.

Features:

 - No extra configuration options are available: Gudev is build if
   libglib2 is selected.
 - No dependency on hwdata as the package uses its own hardware
   database (as does systemd).

eudev 1.3 is in sync with systemd v207.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
udev: convert to virtual package.

This patch converts udev to a virtual package. For the moment, there is only
one provider for the udev features: eudev.

Packages meant to provide udev-like features must select the symbol
BR2_PACKAGE_HAS_UDEV.

Packages depending on BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV or
BR2_PACKAGE_UDEV have been converted to use the new symbol.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>