Wind River Support Network

HomeDefectsLIN5-5293
Fixed

LIN5-5293 : WRL5: util-linux has a broken bbappend recipe, libuuid.so.

Created: Dec 4, 2013    Updated: Dec 19, 2017
Resolved Date: Dec 17, 2013
Found In Version: 5.0.1
Fix Version: 5.0.1.11
Severity: Severe
Applicable for: Wind River Linux 5
Component/s: Kernel

Description

We have been running into issues that some packages (apr-native for example) don't build due to a missing libuuid.so.

In our product (seems to be in wrl 5.0.1.6 up to 5.0.1.9 at least) we have a bbappend for util-linux in
wr-base/recipes-core/util-linux/util-linux_2.21.1.bbappend, which at end looks like:

sstate_unpack_package_append() {
    if [ `find ${SSTATE_INSTDIR} -name libuuid.so` ]; then
        LIBUUID_SO_FILE=`find ${SSTATE_INSTDIR} -name libuuid.so`
        if [ -L ${LIBUUID_SO_FILE} ]; then
            LIBUUID_SO_PATH=`dirname ${LIBUUID_SO_FILE}`
            LIB_NAME=`basename ${LIBUUID_SO_PATH}`
            if [ "${LIB_NAME}" == "lib" ]; then
                cd ${LIBUUID_SO_PATH} && ln -sf ../../lib/libuuid.so.1.3.0 libuuid.so
            fi
        fi
    fi
}

This generates a symlink for libuuid.so that points to an invalid file.
The original libuuid.so symlink seems very correct to me, so we have a workaround in a override recipe that
restore this stupid addition with a similar stupid addition (although correcting the symlink back to it's original
state):

# this can probably be removed when upgrading to more sane wrlinux rcpl.
# it simply undo a previous bbappends strange symlinking...
sstate_unpack_package_append() {
        if [ `find ${SSTATE_INSTDIR} -name libuuid.so` ]; then
                LIBUUID_SO_FILE=`find ${SSTATE_INSTDIR} -name libuuid.so`
                if [ -L ${LIBUUID_SO_FILE} ]; then
                        LIBUUID_SO_PATH=`dirname ${LIBUUID_SO_FILE}`
                        LIB_NAME=`basename ${LIBUUID_SO_PATH}`
                        if [ "${LIB_NAME}" == "lib" ]; then
                                cd ${LIBUUID_SO_PATH} && ln -sf libuuid.so.1.3.0 libuuid.so
                        fi
                fi
        fi
} 

Attaching a build log showing the failure.

Workaround

Adding a script that undoes the change, back to original.

Steps to Reproduce

build apr-native using wrl5 rcpl.6 - 9.

Other Downloads


Live chat
Online