libxcb: Update DEPENDS to avoid duplicate entries

Some items were listed multiple times in DEPENDS, avoid this situation.

Note, PR was not incremented as no change to the build process occurs.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
rpm-native: Fix 'uuid_rc_t' undeclared error when compiling

When attempting to build with uuid and all tests compiling will error because
uuid.h doesn't exist in the rpm tarball. Fix this by changing the include to
use the one in ossp which solves the issue.

The recipe already depends on ossp so ossp/uuid.h will be there when rpm-native
is built.

Signed-off-by: Morgan Little <morgan.little@windriver.com>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
rpm: Fix file contention issue

There is an issue that is caused when doing the install step of rpm on systems
with high parallelization where two jobs of make will fight for the same file
while installing the sub-directory lua. This is caused by the same makefile rule
being called twice in a way that both could be trying to install at the same
time.

This fix renames the linking rule so it will always be run after the needed
files are added and removed it's dependency so the required rule would only
run once.

This was tested heavily using ppss to run mutliple installs in parallel. This
wouldn't happen in practise but it was tested will all the individual rules as
well.

Signed-off-by: Morgan Little <morgan.little@windriver.com>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
rpm: Add rpm patch to fix git_strerror issues

Remove the optimzation append from recipe and add the patch that is in the rpm
cvs repo, http://www.mail-archive.com/rpm-cvs@rpm5.org/msg08907.html. The -O2
optimzation append is removed since it can limit debugging options that are
provided when -O0 is used.

This was tested by setting: SELECTED_OPTIMIZATION = "-O0"

Signed-off-by: Morgan Little <morgan.little@windriver.com>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
rpm: Implement workaround for DB_BUFFER_SMALL error

In certain cases with BerkleyDB 5.3.x we are getting the error:

db3.c:1443: dbcursor->pget(-30999): BDB0063 DB_BUFFER_SMALL: User memory too small fo

See https://bugs.launchpad.net/rpm/+bug/934420 for more information.

It appears to be some type of a bug in the BerkleyDB 5.3.x.  In an attempt
to workaround the problem, when we encounter this situation we attempt
to adjust the size of the mmap buffer until the call works, or we
end up trying 10 times.  The new size is either the updated vp->size
from the failed pget call, or the previous size + 1024.

If DBI debugging is enabled, additional diagnostics are printed, otherwise
a basic retry and success message is added to show that the failure was
resolved.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Cleanup: fix PN == BPN cases

When building target packages, it used to be enought to check for PN == BPN, however
with the multilib configurations, this can lead to subtle errors.  Change instances
of PN == BPN, to ${CLASSOVERRIDE} == 'class-target'.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
multilib: Move redefinition of STAGING_DIR_KERNEL

If the STAGING_DIR_KERNEL is set in the multilib.conf, then it may be
set incorrected.  The evaluation happens before TMPDIR and LIBC are
defined in other components.

Moving the definition process to the multilib.bbclass ensures that
everything has been loaded before it is set.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
bb.utils.explode_dep_versions: Update to ensure we avoid duplicate deps

Due to a recent change in bb.utils.explode_dep_version, we need to make
sure that we do not have any duplicates in things that use
explode_dep_versions.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
insane.bbclass: Remove copy and paste confusion when using OVERRIDES

People keep copying this code and its confusing and unnecessary. Remove the
bad examples to try and stop this happening.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
package_deb/ipk: Remap < and > to << and >>

In deb and ipk, < means <=, while > means >=... there is a different
operator << and >> that means < and >, so we map them when constructing
the packages.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
opkg: fix version constraints in conflicts, depends, replaces

* http://code.google.com/p/opkg/issues/detail?id=94

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
opkg: Don't call sync() when installing into an offline root

Even when installing onto a live target system, calling sync() during
package installation is of somewhat questionable benefit.  But calling
it on the build host during rootfs construction is certainly useless and
can cause I/O to stall for several seconds on even a moderately sized
host which is clearly not desirable.

(From a patch originally by Mike Crowe.)

Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>