From f9bf6e0138e71dd076aa173fd9bbf2ae4bd91ae2 Mon Sep 17 00:00:00 2001 From: Cristian Maureira-Fredes Date: Fri, 1 Feb 2019 11:55:09 +0100 Subject: Avoid __pycache__ directories We are currently shipping the __pycache__ directory of the examples, so this filter will remove them. Change-Id: Ia387108d8867cf08f8bfc2677f166fb33b521ad5 Reviewed-by: Christian Tismer --- .gitignore | 1 + build_scripts/platforms/unix.py | 7 ++++++- build_scripts/platforms/windows_desktop.py | 7 ++++++- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 903fc81f3..34709d824 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,4 @@ explore2 build_history/2* *.qdocconf *.qdocconf.in +__pycache__ diff --git a/build_scripts/platforms/unix.py b/build_scripts/platforms/unix.py index d3767976f..83de489df 100644 --- a/build_scripts/platforms/unix.py +++ b/build_scripts/platforms/unix.py @@ -39,6 +39,7 @@ import os import sys +import fnmatch from .linux import prepare_standalone_package_linux from .macos import prepare_standalone_package_macos @@ -193,10 +194,14 @@ def prepare_packages_posix(self, vars): vars=vars) if not OPTION_NOEXAMPLES: + def pycache_dir_filter(dir_name, parent_full_path, dir_full_path): + if fnmatch.fnmatch(dir_name, "__pycache__"): + return False + return True # examples/* -> /{st_package_name}/examples copydir(os.path.join(self.script_dir, "examples"), "{st_build_dir}/{st_package_name}/examples", - force=False, vars=vars) + force=False, vars=vars, dir_filter_function=pycache_dir_filter) # Re-generate examples Qt resource files for Python 3 # compatibility if sys.version_info[0] == 3: diff --git a/build_scripts/platforms/windows_desktop.py b/build_scripts/platforms/windows_desktop.py index f204ba3a4..5208ed949 100644 --- a/build_scripts/platforms/windows_desktop.py +++ b/build_scripts/platforms/windows_desktop.py @@ -40,6 +40,7 @@ import functools import os import sys +import fnmatch from ..config import config from ..options import * @@ -222,10 +223,14 @@ def prepare_packages_win32(self, vars): recursive=False, vars=vars) if not OPTION_NOEXAMPLES: + def pycache_dir_filter(dir_name, parent_full_path, dir_full_path): + if fnmatch.fnmatch(dir_name, "__pycache__"): + return False + return True # examples/* -> /{st_package_name}/examples copydir(os.path.join(self.script_dir, "examples"), "{st_build_dir}/{st_package_name}/examples", - force=False, vars=vars) + force=False, vars=vars, dir_filter_function=pycache_dir_filter) # Re-generate examples Qt resource files for Python 3 # compatibility if sys.version_info[0] == 3: -- cgit v1.2.3