From 03a5a7eab673d18d00c9b5eb8c7d5b790079e8ff Mon Sep 17 00:00:00 2001 From: OPNA2608 Date: Mon, 12 Apr 2021 20:20:46 +0200 Subject: [PATCH 03/11] qtbase-mkspecs --- mkspecs/features/create_cmake.prf | 51 +++--------- .../data/cmake/Qt5BasicConfig.cmake.in | 80 +------------------ mkspecs/features/qml_module.prf | 2 +- mkspecs/features/qml_plugin.prf | 2 +- mkspecs/features/qt_app.prf | 2 +- mkspecs/features/qt_build_paths.prf | 4 +- mkspecs/features/qt_docs.prf | 10 +-- mkspecs/features/qt_example_installs.prf | 2 +- mkspecs/features/qt_functions.prf | 27 ++++--- mkspecs/features/qt_installs.prf | 22 ++--- mkspecs/features/qt_plugin.prf | 2 +- 11 files changed, 52 insertions(+), 152 deletions(-) diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf index 24ed125f12..f0666a1986 100644 --- a/mkspecs/features/create_cmake.prf +++ b/mkspecs/features/create_cmake.prf @@ -21,7 +21,7 @@ load(cmake_functions) # at cmake time whether package has been found via a symlink, and correct # that to an absolute path. This is only done for installations to # the /usr or / prefix. -CMAKE_INSTALL_LIBS_DIR = $$cmakeTargetPath($$[QT_INSTALL_LIBS]) +CMAKE_INSTALL_LIBS_DIR = $$cmakeTargetPath($$NIX_OUTPUT_OUT/lib/) contains(CMAKE_INSTALL_LIBS_DIR, ^(/usr)?/lib(64)?.*): CMAKE_USR_MOVE_WORKAROUND = $$CMAKE_INSTALL_LIBS_DIR CMAKE_OUT_DIR = $$MODULE_BASE_OUTDIR/lib/cmake @@ -77,45 +77,20 @@ split_incpath { $$cmake_extra_source_includes.output } -CMAKE_INCLUDE_DIR = $$cmakeRelativePath($$[QT_INSTALL_HEADERS], $$[QT_INSTALL_PREFIX]) -contains(CMAKE_INCLUDE_DIR, "^\\.\\./.*") { - CMAKE_INCLUDE_DIR = $$[QT_INSTALL_HEADERS]/ - CMAKE_INCLUDE_DIR_IS_ABSOLUTE = True -} +CMAKE_INCLUDE_DIR = $$NIX_OUTPUT_DEV/include/ +CMAKE_INCLUDE_DIR_IS_ABSOLUTE = True -CMAKE_LIB_DIR = $$cmakeRelativePath($$[QT_INSTALL_LIBS], $$[QT_INSTALL_PREFIX]) -contains(CMAKE_LIB_DIR,"^\\.\\./.*") { - CMAKE_LIB_DIR = $$[QT_INSTALL_LIBS]/ - CMAKE_LIB_DIR_IS_ABSOLUTE = True -} else { - CMAKE_RELATIVE_INSTALL_LIBS_DIR = $$cmakeRelativePath($$[QT_INSTALL_PREFIX], $$[QT_INSTALL_LIBS]) - # We need to go up another two levels because the CMake files are - # installed in $${CMAKE_LIB_DIR}/cmake/Qt5$${CMAKE_MODULE_NAME} - CMAKE_RELATIVE_INSTALL_DIR = "$${CMAKE_RELATIVE_INSTALL_LIBS_DIR}../../" -} +CMAKE_BIN_DIR = $$NIX_OUTPUT_BIN/bin/ +CMAKE_BIN_DIR_IS_ABSOLUTE = True -CMAKE_BIN_DIR = $$cmakeRelativePath($$[QT_HOST_BINS], $$[QT_INSTALL_PREFIX]) -contains(CMAKE_BIN_DIR, "^\\.\\./.*") { - CMAKE_BIN_DIR = $$[QT_HOST_BINS]/ - CMAKE_BIN_DIR_IS_ABSOLUTE = True -} +CMAKE_LIB_DIR = $$NIX_OUTPUT_OUT/lib/ +CMAKE_LIB_DIR_IS_ABSOLUTE = True -CMAKE_PLUGIN_DIR = $$cmakeRelativePath($$[QT_INSTALL_PLUGINS], $$[QT_INSTALL_PREFIX]) -contains(CMAKE_PLUGIN_DIR, "^\\.\\./.*") { - CMAKE_PLUGIN_DIR = $$[QT_INSTALL_PLUGINS]/ - CMAKE_PLUGIN_DIR_IS_ABSOLUTE = True -} +CMAKE_PLUGIN_DIR = $$NIX_OUTPUT_PLUGIN/ +CMAKE_PLUGIN_DIR_IS_ABSOLUTE = True -win32:!static:!staticlib { - CMAKE_DLL_DIR = $$cmakeRelativePath($$[QT_INSTALL_BINS], $$[QT_INSTALL_PREFIX]) - contains(CMAKE_DLL_DIR, "^\\.\\./.*") { - CMAKE_DLL_DIR = $$[QT_INSTALL_BINS]/ - CMAKE_DLL_DIR_IS_ABSOLUTE = True - } -} else { - CMAKE_DLL_DIR = $$CMAKE_LIB_DIR - CMAKE_DLL_DIR_IS_ABSOLUTE = $$CMAKE_LIB_DIR_IS_ABSOLUTE -} +CMAKE_DLL_DIR = $$NIX_OUTPUT_OUT/lib/ +CMAKE_DLL_DIR_IS_ABSOLUTE = True static|staticlib:CMAKE_STATIC_TYPE = true @@ -258,7 +233,7 @@ contains(CONFIG, plugin) { cmake_qt5_plugin_file.files = $$cmake_target_file.output static|staticlib: cmake_qt5_plugin_file.files += $$cmake_qt5_plugin_import_file.output - cmake_qt5_plugin_file.path = $$[QT_INSTALL_LIBS]/cmake/Qt5$${CMAKE_MODULE_NAME} + cmake_qt5_plugin_file.path = $$NIX_OUTPUT_OUT/lib/cmake/Qt5$${CMAKE_MODULE_NAME} INSTALLS += cmake_qt5_plugin_file return() @@ -400,7 +375,7 @@ exists($$cmake_macros_file.input) { cmake_qt5_module_files.files += $$cmake_macros_file.output } -cmake_qt5_module_files.path = $$[QT_INSTALL_LIBS]/cmake/Qt5$${CMAKE_MODULE_NAME} +cmake_qt5_module_files.path = $$NIX_OUTPUT_OUT/lib/cmake/Qt5$${CMAKE_MODULE_NAME} # We are generating cmake files. Most developers of Qt are not aware of cmake, # so we require automatic tests to be available. The only module which should diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in index db18dbece6..8246f37931 100644 --- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in +++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in @@ -2,30 +2,6 @@ if (CMAKE_VERSION VERSION_LESS 3.1.0) message(FATAL_ERROR \"Qt 5 $${CMAKE_MODULE_NAME} module requires at least CMake version 3.1.0\") endif() -!!IF !isEmpty(CMAKE_USR_MOVE_WORKAROUND) -!!IF !isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\") -!!ELSE -get_filename_component(_IMPORT_PREFIX \"${CMAKE_CURRENT_LIST_FILE}\" PATH) -# Use original install prefix when loaded through a -# cross-prefix symbolic link such as /lib -> /usr/lib. -get_filename_component(_realCurr \"${_IMPORT_PREFIX}\" REALPATH) -get_filename_component(_realOrig \"$$CMAKE_INSTALL_LIBS_DIR/cmake/Qt5$${CMAKE_MODULE_NAME}\" REALPATH) -if(_realCurr STREQUAL _realOrig) - get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$CMAKE_INSTALL_LIBS_DIR/$${CMAKE_RELATIVE_INSTALL_LIBS_DIR}\" ABSOLUTE) -else() - get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE) -endif() -unset(_realOrig) -unset(_realCurr) -unset(_IMPORT_PREFIX) -!!ENDIF -!!ELIF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE) -!!ELSE -set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\") -!!ENDIF - !!IF !equals(TEMPLATE, aux) # For backwards compatibility only. Use Qt5$${CMAKE_MODULE_NAME}_VERSION instead. set(Qt5$${CMAKE_MODULE_NAME}_VERSION_STRING "$$eval(QT.$${MODULE}.VERSION)") @@ -145,11 +121,7 @@ macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATI IsDebugAndRelease) set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) -!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) - set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\") -!!ELSE set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\") -!!ENDIF _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) set(_deps ${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES} @@ -209,11 +181,7 @@ macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATI !!ENDIF !!IF !isEmpty(CMAKE_WINDOWS_BUILD) -!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) - set(imported_implib \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") -!!ELSE set(imported_implib \"IMPORTED_IMPLIB_${Configuration}\" \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") -!!ENDIF _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_implib}) if(NOT \"${IMPLIB_LOCATION}\" STREQUAL \"\") set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES @@ -229,24 +197,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) !!IF !no_module_headers !!IF !isEmpty(CMAKE_BUILD_IS_FRAMEWORK) set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS - \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework\" - \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Headers\" + \"$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework\" + \"$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Headers\" ) !!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES) set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS - \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/\" - \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\" - ) -!!ELSE - set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\") -!!ENDIF -!!ELSE -!!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE) - set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR\" \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}\") -!!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES) - set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS - \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION\" - \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION/$${MODULE_INCNAME}\" + \"$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Versions/$$section(VERSION, .,0, 0)/Headers/$$VERSION/\" + \"$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Versions/$$section(VERSION, .,0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\" ) !!ELSE set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\") @@ -262,7 +219,6 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\") !!ENDIF !!ENDIF -!!ENDIF !!IF !isEmpty(CMAKE_ADD_SOURCE_INCLUDE_DIRS) include(\"${CMAKE_CURRENT_LIST_DIR}/ExtraSourceIncludes.cmake\" OPTIONAL) !!ENDIF @@ -491,25 +447,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) !!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD) !!IF isEmpty(CMAKE_DEBUG_TYPE) !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD) -!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) - if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) -!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) -!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE _populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" \"\" $${CMAKE_DEBUG_AND_RELEASE}) !!ELSE // CMAKE_STATIC_WINDOWS_BUILD if (EXISTS -!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) - \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" -!!ELSE \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" -!!ENDIF AND EXISTS -!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) - \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) -!!ELSE \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) -!!ENDIF _populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" $${CMAKE_DEBUG_AND_RELEASE}) !!ENDIF // CMAKE_STATIC_WINDOWS_BUILD endif() @@ -528,25 +472,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) !!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD) !!IF isEmpty(CMAKE_RELEASE_TYPE) !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD) -!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) - if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) -!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) -!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE _populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" \"\" $${CMAKE_DEBUG_AND_RELEASE}) !!ELSE // CMAKE_STATIC_WINDOWS_BUILD if (EXISTS -!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) - \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" -!!ELSE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" -!!ENDIF AND EXISTS -!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) - \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) -!!ELSE \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) -!!ENDIF _populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" $${CMAKE_DEBUG_AND_RELEASE}) !!ENDIF // CMAKE_STATIC_WINDOWS_BUILD endif() @@ -573,11 +505,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) IsDebugAndRelease) set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) -!!IF isEmpty(CMAKE_PLUGIN_DIR_IS_ABSOLUTE) - set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") -!!ELSE set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") -!!ENDIF _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) set_target_properties(Qt5::${Plugin} PROPERTIES \"IMPORTED_LOCATION_${Configuration}\" ${imported_location} diff --git a/mkspecs/features/qml_module.prf b/mkspecs/features/qml_module.prf index 3d6cd9b3db..ca8b0b2701 100644 --- a/mkspecs/features/qml_module.prf +++ b/mkspecs/features/qml_module.prf @@ -51,7 +51,7 @@ builtin_resources { # Install rules qmldir.base = $$qmldir_path qmldir.files = $$qmldir_file -qmldir.path = $$[QT_INSTALL_QML]/$$TARGETPATH +qmldir.path = $$NIX_OUTPUT_QML/$$TARGETPATH qmlfiles.base = $$_PRO_FILE_PWD_ qmlfiles.files = $$fq_aux_qml_files diff --git a/mkspecs/features/qml_plugin.prf b/mkspecs/features/qml_plugin.prf index 1b67435787..24a1f78c17 100644 --- a/mkspecs/features/qml_plugin.prf +++ b/mkspecs/features/qml_plugin.prf @@ -50,7 +50,7 @@ load(qt_build_paths) DESTDIR = $$MODULE_BASE_OUTDIR/qml/$$TARGETPATH -target.path = $$[QT_INSTALL_QML]/$$TARGETPATH +target.path = $$NIX_OUTPUT_QML/$$TARGETPATH INSTALLS += target # Some final setup diff --git a/mkspecs/features/qt_app.prf b/mkspecs/features/qt_app.prf index 8354f30eea..62028fef8e 100644 --- a/mkspecs/features/qt_app.prf +++ b/mkspecs/features/qt_app.prf @@ -30,7 +30,7 @@ host_build:force_bootstrap { target.path = $$[QT_HOST_BINS] } else { !build_pass:qtConfig(debug_and_release): CONFIG += release - target.path = $$[QT_INSTALL_BINS] + target.path = $$NIX_OUTPUT_BIN/bin CONFIG += relative_qt_rpath # Qt's tools and apps should be relocatable } INSTALLS += target diff --git a/mkspecs/features/qt_build_paths.prf b/mkspecs/features/qt_build_paths.prf index 3bb3823a8e..655b7b7db8 100644 --- a/mkspecs/features/qt_build_paths.prf +++ b/mkspecs/features/qt_build_paths.prf @@ -24,6 +24,6 @@ exists($$MODULE_BASE_INDIR/.git): \ !force_independent { # If the module is not built independently, everything ends up in qtbase. # This is the case in non-prefix builds, except for selected modules. - MODULE_BASE_OUTDIR = $$[QT_HOST_PREFIX] - MODULE_QMAKE_OUTDIR = $$[QT_HOST_PREFIX] + MODULE_BASE_OUTDIR = $$NIX_OUTPUT_OUT + MODULE_QMAKE_OUTDIR = $$NIX_OUTPUT_OUT } diff --git a/mkspecs/features/qt_docs.prf b/mkspecs/features/qt_docs.prf index 095bf15dac..4cc977bea5 100644 --- a/mkspecs/features/qt_docs.prf +++ b/mkspecs/features/qt_docs.prf @@ -65,7 +65,7 @@ QMAKE_DOCS_OUTPUTDIR = $$QMAKE_DOCS_BASE_OUTDIR/$$QMAKE_DOCS_TARGETDIR QDOC += -outputdir $$shell_quote($$QMAKE_DOCS_OUTPUTDIR) !build_online_docs: \ - QDOC += -installdir $$shell_quote($$[QT_INSTALL_DOCS]) + QDOC += -installdir $$shell_quote($$NIX_OUTPUT_DOC) PREP_DOC_INDEXES = DOC_INDEXES = !isEmpty(QTREPOS) { @@ -84,8 +84,8 @@ DOC_INDEXES = DOC_INDEXES += -indexdir $$shell_quote($$qrep/doc) } else { prepare_docs: \ - PREP_DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get]) - DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get]) + PREP_DOC_INDEXES += -indexdir $$shell_quote($$NIX_OUTPUT_DOC) + DOC_INDEXES += -indexdir $$shell_quote($$NIX_OUTPUT_DOC) } qtattributionsscanner.target = qtattributionsscanner @@ -108,12 +108,12 @@ prepare_docs { qch_docs.commands = $$QHELPGENERATOR $$shell_quote($$QMAKE_DOCS_OUTPUTDIR/$${QMAKE_DOCS_TARGET}.qhp) -o $$shell_quote($$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch) inst_html_docs.files = $$QMAKE_DOCS_OUTPUTDIR - inst_html_docs.path = $$[QT_INSTALL_DOCS] + inst_html_docs.path = $$NIX_OUTPUT_DOC inst_html_docs.CONFIG += no_check_exist directory no_default_install no_build INSTALLS += inst_html_docs inst_qch_docs.files = $$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch - inst_qch_docs.path = $$[QT_INSTALL_DOCS] + inst_qch_docs.path = $$NIX_OUTPUT_DOC inst_qch_docs.CONFIG += no_check_exist no_default_install no_build INSTALLS += inst_qch_docs diff --git a/mkspecs/features/qt_example_installs.prf b/mkspecs/features/qt_example_installs.prf index 15b373ba40..5c373fe1d5 100644 --- a/mkspecs/features/qt_example_installs.prf +++ b/mkspecs/features/qt_example_installs.prf @@ -91,7 +91,7 @@ sourcefiles += \ $$SOURCES $$HEADERS $$FORMS $$RESOURCES $$TRANSLATIONS \ $$DBUS_ADAPTORS $$DBUS_INTERFACES addInstallFiles(sources.files, $$sourcefiles) -sources.path = $$[QT_INSTALL_EXAMPLES]/$$probase +sources.path = $$NIX_OUTPUT_DEV/share/examples/$$probase INSTALLS += sources check_examples { diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf index 7777e615bd..b0c6880a74 100644 --- a/mkspecs/features/qt_functions.prf +++ b/mkspecs/features/qt_functions.prf @@ -87,19 +87,22 @@ defineTest(qtHaveModule) { defineTest(qtPrepareTool) { cmd = $$eval(QT_TOOL.$${2}.binary) isEmpty(cmd) { - cmd = $$[QT_HOST_BINS]/$$2 - exists($${cmd}.pl) { - $${1}_EXE = $${cmd}.pl - cmd = perl -w $$system_path($${cmd}.pl) - } else: contains(QMAKE_HOST.os, Windows) { - $${1}_EXE = $${cmd}.exe - cmd = $$system_path($${cmd}.exe) - } else:contains(QMAKE_HOST.os, Darwin) { - BUNDLENAME = $${cmd}.app/Contents/MacOS/$$2 - exists($$BUNDLENAME) { - cmd = $$BUNDLENAME + cmd = $$system("command -v $${2}") + isEmpty(cmd) { + cmd = $$system("command -v $${2}.pl") + !isEmpty(cmd) { + $${1}_EXE = $$cmd + cmd = perl -w $$system_path($${cmd}) + } else: contains(QMAKE_HOST.os, Windows) { + cmd = $$system("command -v $${2}.exe") + $${1}_EXE = $$cmd + } else: contains(QMAKE_HOST.os, Darwin) { + cmd = $$system("command -v $${2}.app") + !isEmpty(cmd) { + cmd = $${cmd}/Contents/MacOS/$${2} + $${1}_EXE = $$cmd + } } - $${1}_EXE = $$cmd } else { $${1}_EXE = $$cmd } diff --git a/mkspecs/features/qt_installs.prf b/mkspecs/features/qt_installs.prf index 1ebca17366..a8f958eae8 100644 --- a/mkspecs/features/qt_installs.prf +++ b/mkspecs/features/qt_installs.prf @@ -12,16 +12,10 @@ #library !qt_no_install_library { win32 { - host_build: \ - dlltarget.path = $$[QT_HOST_BINS] - else: \ - dlltarget.path = $$[QT_INSTALL_BINS] + dlltarget.path = $$NIX_OUTPUT_BIN/bin INSTALLS += dlltarget } - host_build: \ - target.path = $$[QT_HOST_LIBS] - else: \ - target.path = $$[QT_INSTALL_LIBS] + target.path = $$NIX_OUTPUT_OUT/lib !static: target.CONFIG = no_dll INSTALLS += target } @@ -29,35 +23,35 @@ #headers qt_install_headers { gen_headers.files = $$SYNCQT.GENERATED_HEADER_FILES - gen_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME + gen_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME INSTALLS += gen_headers targ_headers.files = $$SYNCQT.HEADER_FILES $$SYNCQT.INJECTED_HEADER_FILES - targ_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME + targ_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME INSTALLS += targ_headers private_headers.files = $$SYNCQT.PRIVATE_HEADER_FILES $$SYNCQT.INJECTED_PRIVATE_HEADER_FILES - private_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private + private_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private generated_privates: \ private_headers.CONFIG += no_check_exist INSTALLS += private_headers qpa_headers.files = $$SYNCQT.QPA_HEADER_FILES - qpa_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/qpa + qpa_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/qpa INSTALLS += qpa_headers } #module qt_install_module { !isEmpty(MODULE_PRI) { - pritarget.path = $$[QT_HOST_DATA]/mkspecs/modules + pritarget.path = $$NIX_OUTPUT_DEV/mkspecs/modules pritarget.files = $$MODULE_PRI INSTALLS += pritarget } else: isEmpty(MODULE_PRIVATE_PRI) { warning("Project $$basename(_PRO_FILE_) is a module, but has not defined MODULE_PRI, which is required for Qt to expose the module to other projects.") } !isEmpty(MODULE_PRIVATE_PRI) { - privpritarget.path = $$[QT_HOST_DATA]/mkspecs/modules + privpritarget.path = $$NIX_OUTPUT_DEV/mkspecs/modules privpritarget.files = $$MODULE_PRIVATE_PRI INSTALLS += privpritarget } diff --git a/mkspecs/features/qt_plugin.prf b/mkspecs/features/qt_plugin.prf index 573d717eea..024c624cb6 100644 --- a/mkspecs/features/qt_plugin.prf +++ b/mkspecs/features/qt_plugin.prf @@ -88,7 +88,7 @@ CONFIG(static, static|shared)|prefix_build { } } -target.path = $$[QT_INSTALL_PLUGINS]/$$PLUGIN_TYPE +target.path = $$NIX_OUTPUT_PLUGIN/$$PLUGIN_TYPE INSTALLS += target qt_libinfix_plugins: TARGET = $$TARGET$$QT_LIBINFIX -- 2.29.3