Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-33412

Forms that have included promoted widgets cause UIC to always run under VS2012 Update 3

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • P3: Somewhat important
    • None
    • 5.1.1
    • Build tools: qmake
    • None
    • Windows 7 64-bit, QT 5.1.1, Visual Studio 2012 Update 3

    Description

      Currently the vcxproj/msbuild project generator seems to generate additional arguments for the UIC CustomBuild AdditionalInputs tag for each included widget in the ui file.

      Exhibit A (app.vcxproj):

      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">lib\some_widget.h;test.ui;%(AdditionalInputs)</AdditionalInputs>

      Due to what I can only assume is a behaviour change in MSBuild, this now triggers a bug in that MSBuild does not use the IncludePaths to resolve this relative path. (I assume that it is to prevent ambiguitities from multiple partial path matches in the include paths).

      Exhibit B (http://msdn.microsoft.com/en-us/library/ms171454.aspx)

      "If items in an item collection are not in the same directory as the project file, you must specify the full or relative path to the item. For example: Include="..\..\form2.cs"."

      Exhibit C (custombuild.read.1.tlog):

      C:\DEVELOPMENT\ALWAYS_REBUILD_TEST\APP\LIB\SOME_WIDGET.H

      As you can see, MSBuild has concatenated the relative path specified in the ui to the project path. This causes it to think that the file is missing and so triggers the UIC again, and every time.

      I believe that the correct fix here is for qmake not to append additional dependencies for included files into the CustomBuild option. I am not sure what benefit re-running UIC in the event that a header file has changed because the output of UIC doesn't depend on the included header files.

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              jbornema Joerg Bornemann
              taylorgb Oliver Taylor
              Votes:
              1 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes