forked from mirrors/nixpkgs
4b76c4605e
This package contains several CMake files used for setting up its provided tools for use in other projects build with CMake. While packaging *ktouch* I found out that the ${_qt5Core_install_prefix} variable doesn't expand at all, rendering the path to the `qmlcachegen` binary useless. As a fix, the command itself is used instead of the path to the binary.
47 lines
1.9 KiB
Diff
47 lines
1.9 KiB
Diff
diff --git a/src/qml/qml/qqmlimport.cpp b/src/qml/qml/qqmlimport.cpp
|
|
index 005db4248..685c5b1b2 100644
|
|
--- a/src/qml/qml/qqmlimport.cpp
|
|
+++ b/src/qml/qml/qqmlimport.cpp
|
|
@@ -1760,6 +1760,15 @@ QQmlImportDatabase::QQmlImportDatabase(QQmlEngine *e)
|
|
QString installImportsPath = QLibraryInfo::location(QLibraryInfo::Qml2ImportsPath);
|
|
addImportPath(installImportsPath);
|
|
|
|
+ // Add import paths derived from PATH
|
|
+ const QStringList paths = QFile::decodeName(qgetenv("PATH")).split(':');
|
|
+ const QString qmldir = QStringLiteral("../" NIXPKGS_QML2_IMPORT_PREFIX);
|
|
+ for (const QString &path: paths) {
|
|
+ if (!path.isEmpty()) {
|
|
+ addImportPath(QDir::cleanPath(path + QDir::separator() + qmldir));
|
|
+ }
|
|
+ }
|
|
+
|
|
// env import paths
|
|
if (Q_UNLIKELY(!qEnvironmentVariableIsEmpty("QML2_IMPORT_PATH"))) {
|
|
const QString envImportPath = qEnvironmentVariable("QML2_IMPORT_PATH");
|
|
diff --git a/tools/qmlcachegen/Qt5QuickCompilerConfig.cmake b/tools/qmlcachegen/Qt5QuickCompilerConfig.cmake
|
|
index 56cb3fb55..74509d601 100644
|
|
--- a/tools/qmlcachegen/Qt5QuickCompilerConfig.cmake
|
|
+++ b/tools/qmlcachegen/Qt5QuickCompilerConfig.cmake
|
|
@@ -17,7 +17,7 @@ function(QTQUICK_COMPILER_ADD_RESOURCES outfiles)
|
|
|
|
find_package(Qt5 COMPONENTS Qml Core)
|
|
|
|
- set(compiler_path "${_qt5Core_install_prefix}/bin/qmlcachegen")
|
|
+ set(compiler_path "qmlcachegen")
|
|
|
|
get_target_property(rcc_path ${Qt5Core_RCC_EXECUTABLE} IMPORTED_LOCATION)
|
|
|
|
diff --git a/tools/qmlcachegen/qmlcache.prf b/tools/qmlcachegen/qmlcache.prf
|
|
index 537eaf62e..e21de58f6 100644
|
|
--- a/tools/qmlcachegen/qmlcache.prf
|
|
+++ b/tools/qmlcachegen/qmlcache.prf
|
|
@@ -26,7 +26,7 @@ defineReplace(qmlCacheOutputFileName) {
|
|
}
|
|
|
|
qmlcacheinst.base = $$QMLCACHE_DESTDIR
|
|
-qmlcacheinst.path = $$[QT_INSTALL_QML]/$$TARGETPATH
|
|
+qmlcacheinst.path = $$NIX_OUTPUT_QML/$$TARGETPATH
|
|
qmlcacheinst.CONFIG = no_check_exist
|
|
|
|
qmlcachegen.input = CACHEGEN_FILES
|