Qt 如何将现有QMake项目(.pro项目文件)用作;“外部项目”;在CMake?
是否有一个简明的文档或示例,说明如何在CMake中将带有.pro项目文件的现有QMake项目用作“外部项目”?这可以在qtcreator中通过将一个项目标记为另一个项目的依赖项来完成,但最好使用ExternalProject()CMake语法更明确地定义它Qt 如何将现有QMake项目(.pro项目文件)用作;“外部项目”;在CMake?,qt,cmake,qmake,projects-and-solutions,external-project,Qt,Cmake,Qmake,Projects And Solutions,External Project,是否有一个简明的文档或示例,说明如何在CMake中将带有.pro项目文件的现有QMake项目用作“外部项目”?这可以在qtcreator中通过将一个项目标记为另一个项目的依赖项来完成,但最好使用ExternalProject()CMake语法更明确地定义它 相关问题:类似的方法很有效。然后,您可以从主CMake项目树中的qtcreator或打开.pro文件编辑文件;非常适合在大型cmake构建树中的一些垃圾应用程序中快速迭代QT小部件 macro(DeclareProjectFiles Tag
相关问题:类似的方法很有效。然后,您可以从主CMake项目树中的qtcreator或打开.pro文件编辑文件;非常适合在大型cmake构建树中的一些垃圾应用程序中快速迭代QT小部件
macro(DeclareProjectFiles Tag Filez)
######### Trick: use this syntax to make arbitrary files
######### appear in IDE project. #######################
### Note: pass in the raw name of a list variable,
### since it will get expanded here in this macro.
add_custom_target(${Tag}_files ALL
pwd
COMMAND ls -ltrh
COMMENT " ${Tag} files thunk... got list: [ ${${Filez}} ]"
VERBATIM
SOURCES ${${Filez}}
)
endmacro()
message(STATUS "QT_QMAKE_EXE is: ${QT_QMAKE_EXECUTABLE}")
set(Z SomeGarbageApplication)
file(GLOB ${Z}_Files
./*.cpp
./*.h
./*.ui
./*.pro
./*.png
./*.jpg)
DeclareProjectFiles( ${Z}_grbg ${Z}_Files )
add_custom_target(${Z}_pro ALL)
set(ExtraQMakeArgs -r -spec linux-g++ CONFIG+=release)
# note: use killall because this can/will fail if the exe is running
# But, need || true to not fail build when it's not running.
add_custom_command(TARGET ${Z}_pro
COMMAND killall
ARGS -q -9 -v ${Z} || true
COMMAND ${QT_QMAKE_EXECUTABLE}
ARGS -query
COMMAND ${QT_QMAKE_EXECUTABLE}
ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${Z}.pro ${ExtraQMakeArgs}
COMMAND make ${Z}
ARGS -j4
COMMAND cp
ARGS ${Z} ${CMAKE_CURRENT_SOURCE_DIR}/${${Z}_config} ${CMAKE_BINARY_DIR}/bin/
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
VERBATIM
)
#################################################################