diff options
author | Andy Shaw <andy.shaw@qt.io> | 2019-10-31 13:10:33 +0100 |
---|---|---|
committer | Andy Shaw <andy.shaw@qt.io> | 2020-08-03 07:20:49 +0000 |
commit | 819983972f3e8d7062c94d073b83ee7821a188ab (patch) | |
tree | c1cd4cface0f7229fd1ba94d8ef80108038bf875 /src/macdeployqt/shared | |
parent | c7aacbea27ac802ac6e248f8084b0820c70fab1b (diff) |
macdeployqt: Don't copy .prl files into the Resources folder
Since the prl files are now in the Resources folder for a framework,
then we should avoid copying these as they are not needed in the
deployed framework.
Pick-to: 5.15
Change-Id: I0c728a647784b3d770bdd289c6deb8ff3d5ec9bd
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Diffstat (limited to 'src/macdeployqt/shared')
-rw-r--r-- | src/macdeployqt/shared/shared.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/macdeployqt/shared/shared.cpp b/src/macdeployqt/shared/shared.cpp index aaf66d2a8..838bd0b91 100644 --- a/src/macdeployqt/shared/shared.cpp +++ b/src/macdeployqt/shared/shared.cpp @@ -639,7 +639,8 @@ QStringList getBinaryDependencies(const QString executablePath, } // copies everything _inside_ sourcePath to destinationPath -bool recursiveCopy(const QString &sourcePath, const QString &destinationPath) +bool recursiveCopy(const QString &sourcePath, const QString &destinationPath, + const QRegularExpression &ignoreRegExp = QRegularExpression()) { if (!QDir(sourcePath).exists()) return false; @@ -648,7 +649,10 @@ bool recursiveCopy(const QString &sourcePath, const QString &destinationPath) LogNormal() << "copy:" << sourcePath << destinationPath; QStringList files = QDir(sourcePath).entryList(QStringList() << "*", QDir::Files | QDir::NoDotAndDotDot); + const bool hasValidRegExp = ignoreRegExp.isValid(); foreach (QString file, files) { + if (hasValidRegExp && ignoreRegExp.match(file).hasMatch()) + continue; const QString fileSourcePath = sourcePath + "/" + file; const QString fileDestinationPath = destinationPath + "/" + file; copyFilePrintStatus(fileSourcePath, fileDestinationPath); @@ -781,7 +785,9 @@ QString copyFramework(const FrameworkInfo &framework, const QString path) // Copy Resouces/, Libraries/ and Helpers/ const QString resourcesSourcePath = framework.frameworkPath + "/Resources"; const QString resourcesDestianationPath = frameworkDestinationDirectory + "/Versions/" + framework.version + "/Resources"; - recursiveCopy(resourcesSourcePath, resourcesDestianationPath); + // Ignore *.prl files that are in the Resources directory + recursiveCopy(resourcesSourcePath, resourcesDestianationPath, + QRegularExpression("\\A(?:[^/]*\\.prl)\\z")); const QString librariesSourcePath = framework.frameworkPath + "/Libraries"; const QString librariesDestianationPath = frameworkDestinationDirectory + "/Versions/" + framework.version + "/Libraries"; bool createdLibraries = recursiveCopy(librariesSourcePath, librariesDestianationPath); |