[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
>
> 86:   echo 1 /* CREATEPROCESS_MANIFEST_RESOURCE_ID */ 24 /* RT_MANIFEST */
>    "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


BR,

Jörg

-- 
Joerg Bornemann
Senior Software Engineer - Digia, Qt
http://qt.digia.com/




More information about the Interest mailing list