Add rpath checking and fixing functionalities on macOS
AbandonedPublic

Authored by Inoki on Nov 7 2019, 11:19 PM.

Details

Reviewers
vonreth
Group Reviewers
Craft
Summary

In the previous versions, rpath in some libraries are still Craft Home or /packaging/xxx, which will lead an error after signing and notarizing app package.

This patch can check the rpath and fix it if one is broken.

Test Plan

Test and fix name == "main", check if all libraries are fixed.

Diff Detail

Repository
R138 Craft
Lint
Lint Skipped
Unit
Unit Tests Skipped
Inoki requested review of this revision.Nov 7 2019, 11:19 PM
Inoki created this revision.
Inoki added inline comments.
bin/Packager/MacDMGPackager.py
414

I prefer to use re to squash out the rpath, TODO

Inoki added inline comments.Nov 7 2019, 11:22 PM
bin/Packager/MacDMGPackager.py
258

Maybe we should check the rpath after copying the dependencies.

Otherwise, some libraries which are depending on the rpath, will not be properly found.

Inoki updated this revision to Diff 69831.Nov 16 2019, 10:12 AM
Inoki marked an inline comment as done.
vonreth added inline comments.Nov 21 2019, 3:40 PM
bin/Packager/MacDMGPackager.py
259

rpaths isn't used afterwards?

422

just return a [] to make it clear that this is empty

423

lines is unused?

428

please add a comment for the magic 3

Inoki abandoned this revision.Apr 22 2020, 7:11 PM