From 8815ef1cfddd79b99314a8e8e351b1a2235afc26 Mon Sep 17 00:00:00 2001 From: Alexandru Croitor Date: Thu, 2 Nov 2017 11:50:25 +0100 Subject: Make standalone option work on macOS Implements standalone option on macOS, both for .dylib Qt build and framework build. Multiple rules are applied to figure out which files need to be copied into the final package. We also take care to embed a proper LC_RPATH for the PySide libraries, so that they point to the copied over Qt libraries. Change-Id: I442749e7c2318a66a22e3a1dd0ae703fb8943acf Task-number: PYSIDE-558 Reviewed-by: Friedemann Kleint Reviewed-by: Christian Tismer --- utils.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'utils.py') diff --git a/utils.py b/utils.py index 1762bb8ee..98410838e 100644 --- a/utils.py +++ b/utils.py @@ -275,8 +275,8 @@ def makefile(dst, content=None, vars=None): f.close() -def copydir(src, dst, filter=None, ignore=None, force=True, - recursive=True, vars=None): +def copydir(src, dst, filter=None, ignore=None, force=True, recursive=True, vars=None, + dir_filter_function=None): if vars is not None: src = src.format(**vars) @@ -305,8 +305,12 @@ def copydir(src, dst, filter=None, ignore=None, force=True, dstname = os.path.join(dst, name) try: if os.path.isdir(srcname): + if dir_filter_function and not dir_filter_function(name, src, srcname): + continue if recursive: - results.extend(copydir(srcname, dstname, filter, ignore, force, recursive, vars)) + results.extend( + copydir(srcname, dstname, filter, ignore, force, recursive, + vars, dir_filter_function)) else: if (filter is not None and not filter_match(name, filter)) or \ (ignore is not None and filter_match(name, ignore)): -- cgit v1.2.3