[Interest] Buggy Makefile for config.tests\arch?

Joerg Bornemann joerg.bornemann at digia.com
Wed Feb 13 17:43:19 CET 2013

On 13/02/2013 16:55, Gisle Vanem wrote:

> My generated "g:\Qt\5.0\config.tests\arch\Makefile" looks funny. If I do
> a dry-run:
> g:\Qt\5.0\qtbase\config.tests\arch> nmake -n -nologo
>    "arch.exe.embed.manifest">arch.exe_manifest.rc
> 87:        if not exist arch.exe del arch.exe.embed.manifest>NUL 2>&1
> 88:        if exist arch.exe.embed.manifest copy /Y arch.exe.embed.manifest arch.exe_manifest.bak
> Why on line 88 is it checking the presence of "arch.exe.embed.manifest"
> when it was potentially deleted on line 87. This doesn't look right. A bug in
> msvc_nmake.cpp?

Note that this is a standard qmake generated Makefile and nothing 
special. arch.exe.embed.manifest is generated by the linker and usually 
stems from a build you did before.
If arch.exe does not exist, then a old version of 
arch.exe.embed.manifest is not copied.

> If I nmake w/o '-n', the result is:
>          if not exist arch.exe del arch.exe.embed.manifest>NUL
> 4NT: (Sys) Systemet finner ikke angitt fil.     <<< ! file not found
>   "G:\Qt\5.0\qtbase\config.tests\arch\arch.exe.embed.manifest"
> NMAKE : fatal error U1077: 'if' : return code '0x2'
> Stop.

Looks like the link call did not produce a manifest file.
Can you confirm this?

To work around this issue you could add
CONFIG -= embed_manifest_exe
to config.tests/arch/arch.pro



Joerg Bornemann
Senior Software Engineer - Digia, Qt

More information about the Interest mailing list