QMake SUBDIRS项目:如何从顶级Makefile调用release-clean?

Tim*_*yer 5 qt qmake nmake makefile

我使用SUBDIRS模板使用Qt .pro文件(主要是按照这个答案).

此外,我正在使用qmake -recursive MyProject.pro和构建我的解决方案nmake Release.

现在我想提供一个单独的批处理文件来清理发布输出和元文件(虽然不是调试文件).

的问题是,对于顶层Makefile,仅cleandistclean由产生qmake,而对于子目录,也有release-cleandebug-clean(也是文件夹包含一个额外的Makefile.DebugMakefile.Release).

我想做的就是打电话

nmake Makefile release-clean
Run Code Online (Sandbox Code Playgroud)

从批处理脚本.但是,顶级makefile不包含此配置.

现在我可以手动为每个子项目调用相等的行,但这显然是我最不喜欢的选项.

有没有办法让qmake release-clean为顶级makefile 生成目标,还是有另一种方法来简单地清理发布文件?

PS:我正在使用nmake,所以我是Windows(XP)并使用MSVC(2008)

azf*_*azf 2

以下批处理脚本完成这项工作:

REM set up environment
SET VISUALDIR=C:\PROGRA~1\MICROS~1.0
PUSHD %VISUALDIR%\VC
CALL vcvarsall.bat x86
POPD

REM clean solution
msbuild yoursolution.sln /p:Configuration=Release /t:clean

REM and you may want to add a build command :
msbuild yoursolution.sln /p:Configuration=Release
Run Code Online (Sandbox Code Playgroud)