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

Provide an alternative way to run qdoc with different combinations of modules

    XMLWordPrintable

Details

    • Task
    • Resolution: Done
    • P2: Important
    • 5.0.0
    • None
    • Documentation
    • None
    • 309af9377bd0296eb637b76d83d843f634346cef, c4616e04c3e702e0a3cc78dcc4e7c0787de9253c

    Description

      In Qt5, qdoc includes several qdocconf files from the main qt-project.qdocconf file:

      include($QT_ACTIVEQT_QDOCCONF)
      include($QT_CLUCENE_QDOCCONF)
      include($QT_CORE_QDOCCONF)
      include($QT_DECLARATIVE_QDOCCONF)
      include($QT_DOC_QDOCCONF)
      include($QT_LOCATION_QDOCCONF)
      include($QT_MULTIMEDIA_QDOCCONF)
      include($QT_PHONON_QDOCCONF)
      include($QT_QT3SUPPORT_QDOCCONF)
      include($QT_SCRIPT_QDOCCONF)
      include($QT_SENSORS_QDOCCONF)
      include($QT_SVG_QDOCCONF)
      include($QT_WEBKIT_EXAMPLES_AND_DEMOS_QDOCCONF)
      include($QT_XMLPATTERNS_QDOCCONF)

      All these environment variables are defined in the Makefile when you run make docs, and the Makefile itself is generated by qmake, when you run configure. The files being included above are in qt5/qtdoc/doc/config/modules. each one adds directories to certain configuration variables, including headerdirs, sourcedirs, exampledirs, imagedirs, and excludedirs.

      You get something like this in the Makefile in qt5/qtdoc/Makefile:

      online_docs: sub-qdoc3
      (QT_ACTIVEQT_SOURCES=/Users/msmith/depot/qt5/qtactiveqt/src/activeqt QT_CORE_SOURCES=/Users/msmith/depot/qt5/qtbase/src/corelib QT_DECLARATIVE_SOURCES=/Users/msmith/depot/qt5/qtdeclarative/src/declarative QT_DOC_SOURCES=/Users/msmith/depot/qt5/qtdoc QT_CLUCENE_SOURCES=/Users/msmith/depot/qt5/qttools/src/assistant/lib/fulltextsearch QT_LOCATION_SOURCES=/Users/msmith/depot/qt5/qtlocation/src/location QT_MULTIMEDIA_SOURCES=/Users/msmith/depot/qt5/qtmultimedia/src/multimedia QT_PHONON_SOURCES=/Users/msmith/depot/qt5/qtphonon/src/3rdparty/phonon/phonon QT_SCRIPT_SOURCES=/Users/msmith/depot/qt5/qtscript/src/script QT_SENSORS_SOURCES=/Users/msmith/depot/qt5/qtsensors/src/sensors QT_SYSTEMINFO_SOURCES=/Users/msmith/depot/qt5/qtsystems/src/systeminfo QT_SVG_SOURCES=/Users/msmith/depot/qt5/qtsvg/src/svg QT_XMLPATTERNS_SOURCES=/Users/msmith/depot/qt5/qtxmlpatterns/src/xmlpatterns QT_ACTIVEQT_QDOCCONF=modules/qtactiveqt.qdocconf QT_CORE_QDOCCONF=modules/qtcore.qdocconf QT_DECLARATIVE_QDOCCONF=modules/qtdeclarative.qdocconf QT_DOC_QDOCCONF=modules/qtdoc.qdocconf QT_CLUCENE_QDOCCONF=modules/qtclucene.qdocconf QT_LOCATION_QDOCCONF=modules/qtlocation.qdocconf QT_MULTIMEDIA_QDOCCONF=modules/qtmultimedia.qdocconf QT_PHONON_QDOCCONF=modules/qtphonon.qdocconf QT_SCRIPT_QDOCCONF=modules/qtscript.qdocconf QT_SENSORS_QDOCCONF=modules/qtsensors.qdocconf QT_SYSTEMINFO_QDOCCONF=modules/qtsysteminfo.qdocconf QT_SVG_QDOCCONF=modules/qtsvg.qdocconf QT_WEBKIT_QDOCCONF=modules/missing.qdocconf QT_WEBKIT_EXAMPLES_AND_DEMOS_QDOCCONF=modules/missing.qdocconf QT_XMLPATTERNS_QDOCCONF=modules/qtxmlpatterns.qdocconf QT_QT3SUPPORT_QDOCCONF=modules/missing.qdocconf MODULE_SOURCE_TREE=/Users/msmith/depot/qt5/qtdoc MODULE_BUILD_TREE=/Users/msmith/depot/qt5/qtdoc /Users/msmith/depot/qt5/qtbase/bin/qdoc3 /Users/msmith/depot/qt5/qtdoc/doc/config/qt-build-docs-online.qdocconf)

      ...which is fine, but I'm not sure it improves the process of generating the documentation, and it adds a bit of uncertainty about what qdoc is actually being told to do. Note that you have to produce an additional qdocconf file for each module anyway.

      So I think we need an alternative way to run qdoc that doesn't depend on running configure and qmake. Not to worry. This way will still work.

      Attachments

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

        Activity

          People

            gbk Martin Smith (Qt)
            gbk Martin Smith (Qt)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes