]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core.git/commitdiff
utils: enhance readelf command call with llvm
authorlixiaoyong <lixiaoyong19@huawei.com>
Sat, 30 Mar 2024 06:41:10 +0000 (14:41 +0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Sat, 30 Mar 2024 22:25:17 +0000 (22:25 +0000)
Replace `${HOST_PREFIX}readelf` with `${READELF}`.

When utilizing llvm for compiling packages, the invocation of GNU readelf
will consistently occur if the oe_soinstall and oe_libinstall functions,
which are defined in utils.bbclass, are called. This behavior is unfriendly
to llvm. So prefer `${READELF}` over `${HOST_PREFIX}readelf`.

Signed-off-by: lixiaoyong <lixiaoyong19@huawei.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes-global/utils.bbclass

index 8d797ff126c5e4dc77b14f7cc4ed92355680276a..957389928f3ac01d5e40053d639650dfddc94217 100644 (file)
@@ -15,7 +15,7 @@ oe_soinstall() {
                ;;
        esac
        install -m 755 $1 $2/$libname
-       sonamelink=`${HOST_PREFIX}readelf -d $1 |grep 'Library soname:' |sed -e 's/.*\[\(.*\)\].*/\1/'`
+       sonamelink=`${READELF} -d $1 |grep 'Library soname:' |sed -e 's/.*\[\(.*\)\].*/\1/'`
        if [ -z $sonamelink ]; then
                bbfatal "oe_soinstall: $libname is missing ELF tag 'SONAME'."
        fi
@@ -147,7 +147,7 @@ oe_libinstall() {
                # special case hack for non-libtool .so.#.#.# links
                baselibfile=`basename "$libfile"`
                if (echo $baselibfile | grep -qE '^lib.*\.so\.[0-9.]*$'); then
-                       sonamelink=`${HOST_PREFIX}readelf -d $libfile |grep 'Library soname:' |sed -e 's/.*\[\(.*\)\].*/\1/'`
+                       sonamelink=`${READELF} -d $libfile |grep 'Library soname:' |sed -e 's/.*\[\(.*\)\].*/\1/'`
                        solink=`echo $baselibfile | sed -e 's/\.so\..*/.so/'`
                        if [ -n "$sonamelink" -a x"$baselibfile" != x"$sonamelink" ]; then
                                __runcmd ln -sf $baselibfile $destpath/$sonamelink