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

[REG v6.0.0-beta3 -> dev] cmake-based configure pollutes the source tree

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P3: Somewhat important
    • None
    • 6.0.0 Beta4
    • Build System: CMake

    Description

      Found when building Qt from CI-approved commit 43291fd110 in the dev branch of qt5.git.

      After running configure, git status reports that files in the source tree have been modified.

      It is a fundamental principle of build systems that they must not modify the source files that they are building from.

      $ git clone git://code.qt.io/qt/qt5.git
      ...
      $ cd qt5
      $ perl init-repository -f
      ...
      $ git status
      On branch dev
      Your branch is up to date with 'origin/dev'.
      
      nothing to commit, working tree clean
      $ ./configure -opensource
      ...
      Qt is now configured for building. Just run 'cmake --build . --parallel'
      ...
      $ git status
      On branch dev
      Your branch is up to date with 'origin/dev'.Changes not staged for commit:
        (use "git add <file>..." to update what will be committed)
        (use "git restore <file>..." to discard changes in working directory)
        (commit or discard the untracked or modified content in submodules)
              modified:   qtdeclarative (modified content)
              modified:   qtquickcontrols2 (modified content)
              modified:   qtquicktimeline (modified content)
      
      no changes added to commit (use "git add" and/or "git commit -a")
      $ cd qtdeclarative
      $ git diff
      diff --git a/src/imports/labsanimation/qmldir b/src/imports/labsanimation/qmldir
      index 2f5abe5ba7..5fde7eb06a 100644
      --- a/src/imports/labsanimation/qmldir
      +++ b/src/imports/labsanimation/qmldir
      @@ -1,4 +1,4 @@
       module Qt.labs.animation
       plugin labsanimationplugin
      -typeinfo plugins.qmltypes
       classname QtLabsAnimationPlugin
      +typeinfo plugins.qmltypes
      diff --git a/src/imports/labsmodels/qmldir b/src/imports/labsmodels/qmldir
      index 2e18f0ae47..4a85520b76 100644
      --- a/src/imports/labsmodels/qmldir
      +++ b/src/imports/labsmodels/qmldir
      @@ -1,4 +1,4 @@
       module Qt.labs.qmlmodels
       plugin labsmodelsplugin
      -typeinfo plugins.qmltypes
       classname QtQmlLabsModelsPlugin
      +typeinfo plugins.qmltypes
      ...
      # There's six more (and even more if you also configure the exmaples)
      $ cd ../qtquickcontrols2
      $ git diff
      diff --git a/src/imports/controls/basic/impl/qmldir b/src/imports/controls/basic/impl/qmldir
      index a5fabe7f..ab6eb1e8 100644
      --- a/src/imports/controls/basic/impl/qmldir
      +++ b/src/imports/controls/basic/impl/qmldir
      @@ -1,3 +1,4 @@
       module QtQuick.Controls.Basic.impl
       plugin qtquickcontrols2basicstyleimplplugin
       classname QtQuickControls2BasicStyleImplPlugin
      +typeinfo plugins.qmltypes
      diff --git a/src/imports/controls/basic/qmldir b/src/imports/controls/basic/qmldir
      index 136db062..25e1ad27 100644
      --- a/src/imports/controls/basic/qmldir
      +++ b/src/imports/controls/basic/qmldir
      @@ -1,131 +1,118 @@
       module QtQuick.Controls.Basic
       plugin qtquickcontrols2basicstyleplugin
       classname QtQuickControls2BasicStylePlugin
      -
      -# QtQuick.Controls 2.0 (originally introduced in Qt 5.7)
      +typeinfo plugins.qmltypes
       AbstractButton 2.0 AbstractButton.qml
      -ApplicationWindow 2.0 ApplicationWindow.qml
      -BusyIndicator 2.0 BusyIndicator.qml
      -Button 2.0 Button.qml
      -ButtonGroup 2.0 ButtonGroup.qml
      -CheckBox 2.0 CheckBox.qml
      -CheckDelegate 2.0 CheckDelegate.qml
      -ComboBox 2.0 ComboBox.qml
      -Container 2.0 Container.qml
      -Control 2.0 Control.qml
      -Dial 2.0 Dial.qml
      -Drawer 2.0 Drawer.qml
      -Frame 2.0 Frame.qml
      -GroupBox 2.0 GroupBox.qml
      -ItemDelegate 2.0 ItemDelegate.qml
      -Label 2.0 Label.qml
      -Menu 2.0 Menu.qml
      -MenuItem 2.0 MenuItem.qml
      -Page 2.0 Page.qml
      -PageIndicator 2.0 PageIndicator.qml
      -Pane 2.0 Pane.qml
      -Popup 2.0 Popup.qml
      -ProgressBar 2.0 ProgressBar.qml
      -RadioButton 2.0 RadioButton.qml
      -RadioDelegate 2.0 RadioDelegate.qml
      -RangeSlider 2.0 RangeSlider.qml
      -ScrollBar 2.0 ScrollBar.qml
      -ScrollIndicator 2.0 ScrollIndicator.qml
      -Slider 2.0 Slider.qml
      -SpinBox 2.0 SpinBox.qml
      -StackView 2.0 StackView.qml
      -SwipeDelegate 2.0 SwipeDelegate.qml
      -SwipeView 2.0 SwipeView.qml
      -Switch 2.0 Switch.qml
      -SwitchDelegate 2.0 SwitchDelegate.qml
      -TabBar 2.0 TabBar.qml
      -TabButton 2.0 TabButton.qml
      -TextArea 2.0 TextArea.qml
      -TextField 2.0 TextField.qml
      -ToolBar 2.0 ToolBar.qml
      -ToolButton 2.0 ToolButton.qml
      -ToolTip 2.0 ToolTip.qml
      -Tumbler 2.0 Tumbler.qml
      -
      -# QtQuick.Controls 2.1 (new types in Qt 5.8)
      -Dialog 2.1 Dialog.qml
      -DialogButtonBox 2.1 DialogButtonBox.qml
      -MenuSeparator 2.1 MenuSeparator.qml
      -RoundButton 2.1 RoundButton.qml
      -ToolSeparator 2.1 ToolSeparator.qml
      -
      -# QtQuick.Controls 2.2 (new types in Qt 5.9)
      -DelayButton 2.2 DelayButton.qml
      -ScrollView 2.2 ScrollView.qml
      -
      -# QtQuick.Controls 2.3 (new types in Qt 5.10)
      -Action 2.3 Action.qml
      -ActionGroup 2.3 ActionGroup.qml
      -MenuBar 2.3 MenuBar.qml
      -MenuBarItem 2.3 MenuBarItem.qml
      -
      -# QtQuick.Controls 2.13 (new types in Qt 5.13)
      -SplitView 2.13 SplitView.qml
      -
      -# QtQuick.Controls 2.15 (new types in Qt 5.15)
      -HorizontalHeaderView 2.15 HorizontalHeaderView.qml
      -VerticalHeaderView 2.15 VerticalHeaderView.qml
      -
      -# Make sure we have types registered for Qt 6: QTBUG-85774, QTBUG-85685
       AbstractButton 6.0 AbstractButton.qml
      +Action 2.3 Action.qml
       Action 6.0 Action.qml
      +ActionGroup 2.3 ActionGroup.qml
       ActionGroup 6.0 ActionGroup.qml
      +ApplicationWindow 2.0 ApplicationWindow.qml
       ApplicationWindow 6.0 ApplicationWindow.qml
      +BusyIndicator 2.0 BusyIndicator.qml
       BusyIndicator 6.0 BusyIndicator.qml
      +Button 2.0 Button.qml
       Button 6.0 Button.qml
      +ButtonGroup 2.0 ButtonGroup.qml
       ButtonGroup 6.0 ButtonGroup.qml
      +CheckBox 2.0 CheckBox.qml
       CheckBox 6.0 CheckBox.qml
      ...
      # .... and so on...

       

      Attachments

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

        Activity

          People

            semlanik Alexey Edelev
            macadder Jason McDonald
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes