|  | TEMPLATE = subdirs | 
|  | QT_FOR_CONFIG += qml-private | 
|  |  | 
|  | qtConfig(qml-devtools) { | 
|  | SUBDIRS += \ | 
|  | qmllint \ | 
|  | qmlmin \ | 
|  | qmlimportscanner | 
|  |  | 
|  | qtConfig(commandlineparser):qtConfig(xmlstreamwriter): SUBDIRS += qmlcachegen | 
|  | } | 
|  |  | 
|  | qtConfig(thread):!android|android_app:!wasm:!rtems { | 
|  | SUBDIRS += \ | 
|  | qml | 
|  |  | 
|  | qtConfig(qml-profiler): SUBDIRS += qmlprofiler | 
|  | qtConfig(qml-preview): SUBDIRS += qmlpreview | 
|  |  | 
|  | qtHaveModule(quick) { | 
|  | !static: { | 
|  | SUBDIRS += \ | 
|  | qmlscene \ | 
|  | qmltime | 
|  |  | 
|  | qtConfig(regularexpression):qtConfig(process) { | 
|  | SUBDIRS += \ | 
|  | qmlplugindump | 
|  | } | 
|  | } | 
|  | qtHaveModule(widgets) { | 
|  | QT_FOR_CONFIG += widgets | 
|  | qtConfig(dialogbuttonbox) { | 
|  | SUBDIRS += \ | 
|  | qmleasing | 
|  | } | 
|  | } | 
|  | } | 
|  | qtHaveModule(qmltest): SUBDIRS += qmltestrunner | 
|  | qtConfig(private_tests): SUBDIRS += qmljs | 
|  | } | 
|  |  | 
|  | qtConfig(qml-devtools) { | 
|  | qml.depends = qmlimportscanner | 
|  | qmleasing.depends = qmlimportscanner | 
|  | } | 
|  |  | 
|  | # qmlmin, qmlimportscanner & qmlcachegen are build tools. | 
|  | # qmlscene is needed by the autotests. | 
|  | # qmltestrunner may be useful for manual testing. | 
|  | # qmlplugindump cannot be a build tool, because it loads target plugins. | 
|  | # The other apps are mostly "desktop" tools and are thus excluded. | 
|  | qtNomakeTools( \ | 
|  | qmlprofiler \ | 
|  | qmlplugindump \ | 
|  | qmleasing \ | 
|  | ) |