Merge pull request #409 from QuasarApp/v1.4

V1.4
This commit is contained in:
Andrei Yankovich 2020-08-16 09:29:20 -07:00 committed by GitHub
commit 6e5e5636b5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 266 additions and 7 deletions

View File

@ -149,8 +149,9 @@ void Extracter::copyExtraPlugins(const QString& package) {
if (info.isDir()) { if (info.isDir()) {
QStringList plugins; QStringList plugins;
if (!_fileManager->copyFolder(info.absoluteFilePath(), if (!_fileManager->copyFolder(info.absoluteFilePath(),
targetPath + distro.getPluginsOutDir() + info.fileName() targetPath + distro.getPluginsOutDir() + info.fileName(),
, {}, &plugins)) { QStringList() << ".so.debug" << "d.dll" << ".pdb" << ".dll.debug",
&plugins)) {
QuasarAppUtils::Params::log("fail to copy extra plugin from:" + info.absoluteFilePath() + QuasarAppUtils::Params::log("fail to copy extra plugin from:" + info.absoluteFilePath() +
" to: " + targetPath + distro.getPluginsOutDir(), " to: " + targetPath + distro.getPluginsOutDir(),
@ -179,7 +180,7 @@ void Extracter::extractPlugins() {
_pluginsParser->scan(cnf->qtDir.getPlugins(), plugins, _packageDependencyes[i.key()].qtModules(), i.key()); _pluginsParser->scan(cnf->qtDir.getPlugins(), plugins, _packageDependencyes[i.key()].qtModules(), i.key());
_fileManager->copyFiles(plugins, targetPath + distro.getPluginsOutDir(), 1, _fileManager->copyFiles(plugins, targetPath + distro.getPluginsOutDir(), 1,
QStringList() << ".so.debug" << "d.dll" << ".pdb", &listItems); QStringList() << ".so.debug" << "d.dll" << ".pdb" << ".dll.debug", &listItems);
for (const auto &item : listItems) { for (const auto &item : listItems) {
extractPluginLib(item, i.key()); extractPluginLib(item, i.key());
@ -380,7 +381,7 @@ bool Extracter::extractQmlAll() {
QStringList listItems; QStringList listItems;
if (!_fileManager->copyFolder(cnf->qtDir.getQmls(), targetPath + distro.getQmlOutDir(), if (!_fileManager->copyFolder(cnf->qtDir.getQmls(), targetPath + distro.getQmlOutDir(),
QStringList() << ".so.debug" << "d.dll" << ".pdb", QStringList() << ".so.debug" << "d.dll" << ".pdb" << ".dll.debug",
&listItems)) { &listItems)) {
return false; return false;
} }
@ -405,7 +406,7 @@ bool Extracter::extractQmlFromSource() {
QStringList plugins; QStringList plugins;
QStringList listItems; QStringList listItems;
QStringList filter; QStringList filter;
filter << ".so.debug" << "d.dll" << ".pdb"; filter << ".so.debug" << "d.dll" << ".pdb" << ".dll.debug";
for (const auto &qmlInput: distro.qmlInput()) { for (const auto &qmlInput: distro.qmlInput()) {
QFileInfo info(qmlInput); QFileInfo info(qmlInput);

View File

@ -115,7 +115,8 @@ bool QML::deployPath(const QString &path, QStringList &res) {
for (auto info : infoList) { for (auto info : infoList) {
if (info.fileName().contains(".so.debug") || if (info.fileName().contains(".so.debug") ||
info.fileName().contains("d.dll")) { info.fileName().contains("d.dll") ||
info.fileName().contains(".dll.debug")) {
QuasarAppUtils::Params::log("sciped debug lib " + QuasarAppUtils::Params::log("sciped debug lib " +
info.absoluteFilePath()); info.absoluteFilePath());
continue; continue;

View File

@ -36,6 +36,7 @@ SOURCES += tst_deploytest.cpp \
modules.cpp \ modules.cpp \
modulesqt513.cpp \ modulesqt513.cpp \
modulesqt514.cpp \ modulesqt514.cpp \
modulesqt515.cpp \
qmlcreator.cpp \ qmlcreator.cpp \
testutils.cpp testutils.cpp
@ -47,5 +48,6 @@ HEADERS += \
modules.h \ modules.h \
modulesqt513.h \ modulesqt513.h \
modulesqt514.h \ modulesqt514.h \
modulesqt515.h \
qmlcreator.h \ qmlcreator.h \
testutils.h testutils.h

View File

@ -12,7 +12,11 @@
#include <configparser.h> #include <configparser.h>
#include <QSet> #include <QSet>
#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0) #if QT_VERSION >= QT_VERSION_CHECK(5, 15, 0)
#include "modulesqt515.h"
class Modules : public ModulesQt515
#elif QT_VERSION >= QT_VERSION_CHECK(5, 14, 0)
#include "modulesqt514.h" #include "modulesqt514.h"
class Modules : public ModulesQt514 class Modules : public ModulesQt514

228
UnitTests/modulesqt515.cpp Normal file
View File

@ -0,0 +1,228 @@
#include "modulesqt515.h"
ModulesQt515::ModulesQt515()
{
}
QSet<QString> ModulesQt515::onlyC(const QString &distDir) const {
TestUtils utils;
auto res = ModulesQt514::onlyC(distDir);
return res;
}
QSet<QString> ModulesQt515::qtLibs(const QString &distDir) const {
TestUtils utils;
auto res = ModulesQt514::qtLibs(distDir);
#ifdef Q_OS_WIN
res -= utils.createTree({
});
#else
res += utils.createTree({
});
#endif
return res;
}
QSet<QString> ModulesQt515::qmlLibs(const QString &distDir) const {
TestUtils utils;
auto res = ModulesQt514::qmlLibs(distDir);
#ifdef Q_OS_WIN
res += utils.createTree({
"./" + distDir + "/qml/QtQuick/Controls.2/Fusion/VerticalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/Fusion/HorizontalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/HorizontalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/Imagine/HorizontalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/Imagine/VerticalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/Material/HorizontalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/Material/VerticalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/Universal/HorizontalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/Universal/VerticalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/VerticalHeaderView.qml"
});
#else
res -= utils.createTree({
"./" + distDir + "/plugins/wayland-graphics-integration-server/libdmabuf-server.so",
"./" + distDir + "/plugins/wayland-graphics-integration-server/libdrm-egl-server.so",
"./" + distDir + "/plugins/wayland-graphics-integration-server/liblinux-dmabuf-unstable-v1.so",
"./" + distDir + "/plugins/wayland-graphics-integration-server/libqt-plugin-wayland-egl.so",
"./" + distDir + "/plugins/wayland-graphics-integration-server/libshm-emulation-server.so",
"./" + distDir + "/plugins/wayland-graphics-integration-server/libvulkan-server.so",
"./" + distDir + "/plugins/wayland-graphics-integration-server/libwayland-eglstream-controller.so",
"./" + distDir + "/plugins/wayland-graphics-integration-server/libxcomposite-egl.so",
"./" + distDir + "/plugins/wayland-graphics-integration-server/libxcomposite-glx.so"
});
res += utils.createTree({
"./" + distDir + "/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-dmabuf-server-buffer.so",
"./" + distDir + "/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-drm-egl-server-buffer.so",
"./" + distDir + "/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-linux-dmabuf-unstable-v1.so",
"./" + distDir + "/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-shm-emulation-server.so",
"./" + distDir + "/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-vulkan-server.so",
"./" + distDir + "/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-wayland-egl.so",
"./" + distDir + "/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-wayland-eglstream-controller.so",
"./" + distDir + "/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-xcomposite-egl.so",
"./" + distDir + "/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-xcomposite-glx.so",
"./" + distDir + "/qml/QtQuick/Controls.2/Fusion/HorizontalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/Fusion/VerticalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/HorizontalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/Imagine/HorizontalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/Imagine/VerticalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/Material/HorizontalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/Material/VerticalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/Universal/HorizontalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/Universal/VerticalHeaderView.qml",
"./" + distDir + "/qml/QtQuick/Controls.2/VerticalHeaderView.qml"
}
);
#endif
return res;
}
QSet<QString> ModulesQt515::qtWithoutTr(const QString &distDir) const {
TestUtils utils;
auto res = ModulesQt514::qtWithoutTr(distDir);
#ifdef Q_OS_WIN
res += utils.createTree({
});
#else
res += utils.createTree({
});
#endif
return res;
}
QSet<QString> ModulesQt515::qtWebEngine(const QString &distDir) const {
TestUtils utils;
auto res = ModulesQt514::qtWebEngine(distDir);
#ifdef Q_OS_WIN
#else
res -= utils.createTree({
"./" + distDir + "/plugins/wayland-graphics-integration-server/libvulkan-server.so"
});
#endif
return res;
}
QSet<QString> ModulesQt515::testDistroLibs(const QString &distDir) const {
TestUtils utils;
auto res = ModulesQt514::testDistroLibs(distDir);
#ifdef Q_OS_WIN
res += utils.createTree({
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/Fusion/VerticalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/Fusion/HorizontalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/HorizontalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/Imagine/HorizontalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/Imagine/VerticalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/Material/HorizontalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/Material/VerticalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/Universal/HorizontalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/Universal/VerticalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/VerticalHeaderView.qml"
});
#else
res += utils.createTree({
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-dmabuf-server-buffer.so",
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-drm-egl-server-buffer.so",
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-linux-dmabuf-unstable-v1.so",
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-shm-emulation-server.so",
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-vulkan-server.so",
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-wayland-egl.so",
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-wayland-eglstream-controller.so",
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-xcomposite-egl.so",
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-xcomposite-glx.so",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/Fusion/HorizontalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/Fusion/VerticalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/HorizontalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/Imagine/HorizontalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/Imagine/VerticalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/Material/HorizontalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/Material/VerticalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/Universal/HorizontalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/Universal/VerticalHeaderView.qml",
"./" + distDir + "/package2/ZzZ/q/and/q/QtQuick/Controls.2/VerticalHeaderView.qml"
});
res -= utils.createTree({
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/libdmabuf-server.so",
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/libdrm-egl-server.so",
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/liblinux-dmabuf-unstable-v1.so",
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/libqt-plugin-wayland-egl.so",
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/libshm-emulation-server.so",
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/libvulkan-server.so",
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/libwayland-eglstream-controller.so",
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/libxcomposite-egl.so",
"./" + distDir + "/package2/ZzZ/plugins/wayland-graphics-integration-server/libxcomposite-glx.so"
});
#endif
return res;
}
QSet<QString> ModulesQt515::testOutLibs(const QString &distDir) const {
TestUtils utils;
auto res = ModulesQt514::testOutLibs(distDir);
#ifdef Q_OS_WIN
res += utils.createTree({
"./" + distDir + "/q/QtQuick/Controls.2/Fusion/VerticalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/Fusion/HorizontalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/HorizontalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/Imagine/HorizontalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/Imagine/VerticalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/Material/HorizontalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/Material/VerticalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/Universal/HorizontalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/Universal/VerticalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/VerticalHeaderView.qml"
});
#else
res += utils.createTree({
"./" + distDir + "/q/QtQuick/Controls.2/Fusion/HorizontalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/Fusion/VerticalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/HorizontalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/Imagine/HorizontalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/Imagine/VerticalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/Material/HorizontalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/Material/VerticalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/Universal/HorizontalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/Universal/VerticalHeaderView.qml",
"./" + distDir + "/q/QtQuick/Controls.2/VerticalHeaderView.qml",
"./" + distDir + "/p/wayland-graphics-integration-server/libqt-wayland-compositor-dmabuf-server-buffer.so",
"./" + distDir + "/p/wayland-graphics-integration-server/libqt-wayland-compositor-drm-egl-server-buffer.so",
"./" + distDir + "/p/wayland-graphics-integration-server/libqt-wayland-compositor-linux-dmabuf-unstable-v1.so",
"./" + distDir + "/p/wayland-graphics-integration-server/libqt-wayland-compositor-shm-emulation-server.so",
"./" + distDir + "/p/wayland-graphics-integration-server/libqt-wayland-compositor-vulkan-server.so",
"./" + distDir + "/p/wayland-graphics-integration-server/libqt-wayland-compositor-wayland-egl.so",
"./" + distDir + "/p/wayland-graphics-integration-server/libqt-wayland-compositor-wayland-eglstream-controller.so",
"./" + distDir + "/p/wayland-graphics-integration-server/libqt-wayland-compositor-xcomposite-egl.so",
"./" + distDir + "/p/wayland-graphics-integration-server/libqt-wayland-compositor-xcomposite-glx.so"
});
res -= utils.createTree({
"./" + distDir + "/p/wayland-graphics-integration-server/libdmabuf-server.so",
"./" + distDir + "/p/wayland-graphics-integration-server/libdrm-egl-server.so",
"./" + distDir + "/p/wayland-graphics-integration-server/liblinux-dmabuf-unstable-v1.so",
"./" + distDir + "/p/wayland-graphics-integration-server/libqt-plugin-wayland-egl.so",
"./" + distDir + "/p/wayland-graphics-integration-server/libshm-emulation-server.so",
"./" + distDir + "/p/wayland-graphics-integration-server/libvulkan-server.so",
"./" + distDir + "/p/wayland-graphics-integration-server/libwayland-eglstream-controller.so",
"./" + distDir + "/p/wayland-graphics-integration-server/libxcomposite-egl.so",
"./" + distDir + "/p/wayland-graphics-integration-server/libxcomposite-glx.so"
});
#endif
return res;
}

23
UnitTests/modulesqt515.h Normal file
View File

@ -0,0 +1,23 @@
#ifndef MODULESQT515_H
#define MODULESQT515_H
#include "modulesqt514.h"
class ModulesQt515 : public ModulesQt514
{
public:
ModulesQt515();
// ModulesQt513 interface
public:
QSet<QString> onlyC(const QString &distDir = DISTRO_DIR) const override;
QSet<QString> qtLibs(const QString &distDir = DISTRO_DIR) const override;
QSet<QString> qmlLibs(const QString &distDir = DISTRO_DIR) const override;
QSet<QString> qtWithoutTr(const QString &distDir = DISTRO_DIR) const override;
QSet<QString> qtWebEngine(const QString &distDir = DISTRO_DIR) const override;
QSet<QString> testDistroLibs(const QString &distDir = DISTRO_DIR) const override;
QSet<QString> testOutLibs(const QString &distDir = DISTRO_DIR) const override;
};
#endif // MODULESQT515_H