Skip to content

Should set rpath to $ORIGIN for libs with non-exist rpath #671

@oraluben

Description

@oraluben

Given a wheel with following libs.

When handling b.so, auditwheel will only set its rpath when b.so has a valid rpath:

return [p for p in dedupe(ldpaths) if os.path.isdir(p)]

if any(itertools.chain(rpaths["rpaths"], rpaths["runpaths"])):
patcher.set_rpath(dest_path, "$ORIGIN")

When rpath of b.so is not empty, we should also replace it with $ORIGIN no matter if it's valid.

a.so -> b.so -> c.so
a.so -> c.so

a.so: rpath=$ORIGIN
b.so: runpath=<nonexist>

Currently this failed because b.so could not fine c.so.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions