kmpkg_qmake_configure
配置基于 qmake 构建系统的项目。
用法
kmpkg_qmake_configure(
SOURCE_PATH <pro_file_path>
[QMAKE_OPTIONS arg1 [arg2 ...]]
[QMAKE_OPTIONS_RELEASE arg1 [arg2 ...]]
[QMAKE_OPTIONS_DEBUG arg1 [arg2 ...]]
[OPTIONS arg1 [arg2 ...]]
[OPTIONS_RELEASE arg1 [arg2 ...]]
[OPTIONS_DEBUG arg1 [arg2 ...]]
)
使用该函数前,必须依赖辅助端口 kmpkg-qmake(需配置为 host 依赖):
"dependencies": [
{
"name": "kmpkg-qmake",
"host": true
}
]
参数
函数参数
SOURCE_PATH
qmake 项目文件(*.pro)的路径(必填)。
QMAKE_OPTIONS、QMAKE_OPTIONS_RELEASE、QMAKE_OPTIONS_DEBUG
传递给 qmake 命令的额外选项(会放在 -- 分隔符之前)。
这类选项通常采用 QMAKE_X=<值> 或 CONFIG=<值> 的形式,例如 QMAKE_CXXFLAGS=-O2、CONFIG+=qtquickcompiler。其中:
QMAKE_OPTIONS:对 Debug/Release 构建均生效;QMAKE_OPTIONS_RELEASE:仅对 Release 构建生效;QMAKE_OPTIONS_DEBUG:仅对 Debug 构建生效。
OPTIONS、OPTIONS_RELEASE、OPTIONS_DEBUG
传递给 qmake 命令的额外选项(会放在 -- 分隔符之后)。
作用域规则同 QMAKE_OPTIONS 系列参数,用于传递 qmake 中 -- 之后的自定义参数。
三元组参数(Triplet Parameters)
以下参数通过 kmpkg 三元组(triplet)配置(通常在 triplets/ 目录下的配置文件中设置),用于全局定制 qmake 的构建行为:
KMPKG_OSX_DEPLOYMENT_TARGET
指定 macOS 部署目标版本,该值会同步映射为 qmake 的 QMAKE_MACOSX_DEPLOYMENT_TARGET 变量。
KMPKG_QMAKE_COMMAND
指定 qmake 可执行文件的路径。
默认值:"${CURRENT_HOST_INSTALLED_DIR}/tools/Qt6/bin/qmake${KMPKG_HOST_EXECUTABLE_SUFFIX}"。
KMPKG_QT_CONF_RELEASE
Release 构建模式下使用的 qt.config 配置文件路径。
默认值:"${CURRENT_INSTALLED_DIR}/tools/Qt6/qt_release.conf"。
KMPKG_QT_CONF_DEBUG
Debug 构建模式下使用的 qt.config 配置文件路径。
默认值:"${CURRENT_INSTALLED_DIR}/tools/Qt6/qt_debug.conf"。
KMPKG_QT_TARGET_MKSPEC
该参数在 kmpkg-qmake 版本 2022-11-16 中新增。
指定要使用的 Qt mkspec(构建规范),例如 win32-msvc(Windows + MSVC)、linux-g++(Linux + GCC)、macx-clang(macOS + Clang)等。
KMPKG_QMAKE_OPTIONS_RELEASE
Release 构建模式下,传递给 qmake 的额外全局选项(会补充到 QMAKE_OPTIONS_RELEASE 之后)。
KMPKG_QMAKE_OPTIONS_DEBUG
Debug 构建模式下,传递给 qmake 的额外全局选项(会补充到 QMAKE_OPTIONS_DEBUG 之后)。
示例
基础配置 Qt 项目
kmpkg_qmake_configure(
SOURCE_PATH ${SOURCE_PATH}/myproject.pro
# 全局 qmake 选项(-- 前)
QMAKE_OPTIONS "QMAKE_INSTALL_PREFIX=${CURRENT_PACKAGES_DIR}"
# Release 模式额外选项
QMAKE_OPTIONS_RELEASE "CONFIG+=release"
# Debug 模式额外选项
QMAKE_OPTIONS_DEBUG "CONFIG+=debug"
)