path: root/setup.py
diff options
authorAlexandru Croitor <alexandru.croitor@qt.io>2018-02-02 19:03:23 +0100
committerAlexandru Croitor <alexandru.croitor@qt.io>2018-02-20 13:10:12 +0000
commitea66a78ea73f677a9025e1482e658409cecd7e2a (patch)
tree58e55e34502a6df28578b507d019346112881b66 /setup.py
parent3ee37ddd84a40e543f30b4a33efc728b9979f709 (diff)
Fix rpath of QtWebEngineProcess in standalone macOS framework build
The rpath already present assumes the presence of some symlinks, which are not present when copying over the Qt frameworks. Thus the rpath needs adjustment. Task-number: PYSIDE-605 Change-Id: I2fec6f53c8b617a6e755718e9174cadd2c485b5e Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Diffstat (limited to 'setup.py')
1 files changed, 12 insertions, 0 deletions
diff --git a/setup.py b/setup.py
index 3bb9699b6..5918e2464 100644
--- a/setup.py
+++ b/setup.py
@@ -1277,6 +1277,18 @@ class pyside_build(_build):
recursive=True, vars=vars,
ignore=["*.la", "*.a", "*.cmake", "*.pc", "*.prl"],
+ # Fix rpath for WebEngine process executable. The already present rpath does not work
+ # because it assumes a symlink from Versions/5/Helpers, thus adding two more levels of
+ # directory hierarchy.
+ if 'QtWebEngineWidgets.framework' in framework_built_modules:
+ qt_lib_path = "{pyside_package_dir}/PySide2/Qt/lib".format(**vars)
+ bundle = "QtWebEngineCore.framework/Helpers/QtWebEngineProcess.app"
+ binary = "Contents/MacOS/QtWebEngineProcess"
+ webengine_process_path = os.path.join(bundle, binary)
+ final_path = os.path.join(qt_lib_path, webengine_process_path)
+ rpath = "@loader_path/../../../../../"
+ osx_fix_rpaths_for_library(final_path, rpath)
ignored_modules = []
if 'WebEngineWidgets' not in built_modules: