diff --git a/src/src.pro b/src/src.pro
index 90f0a35711907844c85a1ebc6f769ceb9d0e61c3..3529478b30cc05d620345700af15134f353d4aff 100644
--- a/src/src.pro
+++ b/src/src.pro
@@ -1,7 +1,31 @@
 TEMPLATE = subdirs
 
-src_tools.subdir = $$PWD/tools
-src_tools.target = sub-tools
+src_tools_bootstrap.subdir = tools/bootstrap
+src_tools_bootstrap.target = sub-bootstrap
+
+src_tools_moc.subdir = tools/moc
+src_tools_moc.target = sub-moc
+src_tools_moc.depends = src_tools_bootstrap
+
+src_tools_rcc.subdir = tools/rcc
+src_tools_rcc.target = sub-rcc
+src_tools_rcc.depends = src_tools_bootstrap
+
+src_tools_uic.subdir = tools/uic
+src_tools_uic.target = sub-uic
+src_tools_uic.depends = src_tools_bootstrap
+
+src_tools_qdoc.subdir = tools/qdoc
+src_tools_qdoc.target = sub-qdoc
+src_tools_qdoc.depends = src_tools_bootstrap
+
+src_tools_qdbusxml2cpp.subdir = tools/qdbusxml2cpp
+src_tools_qdbusxml2cpp.target = sub-qdbusxml2cpp
+src_tools_qdbusxml2cpp.depends = src_tools_bootstrap
+
+src_tools_qdbuscpp2xml.subdir = tools/qdbuscpp2xml
+src_tools_qdbuscpp2xml.target = sub-qdbuscpp2xml
+src_tools_qdbuscpp2xml.depends = src_tools_bootstrap
 
 src_winmain.subdir = $$PWD/winmain
 src_winmain.target = sub-winmain
@@ -9,7 +33,7 @@ src_winmain.depends = sub-corelib  # just for the module .pri file
 
 src_corelib.subdir = $$PWD/corelib
 src_corelib.target = sub-corelib
-src_corelib.depends = src_tools
+src_corelib.depends = src_tools_moc src_tools_rcc
 
 src_xml.subdir = $$PWD/xml
 src_xml.target = sub-xml
@@ -48,7 +72,7 @@ src_platformsupport.depends = src_corelib src_gui src_network
 
 src_widgets.subdir = $$PWD/widgets
 src_widgets.target = sub-widgets
-src_widgets.depends = src_corelib src_gui
+src_widgets.depends = src_corelib src_gui src_tools_uic
 
 src_opengl.subdir = $$PWD/opengl
 src_opengl.target = sub-opengl
@@ -60,7 +84,7 @@ src_openglextensions.depends = src_gui
 
 src_printsupport.subdir = $$PWD/printsupport
 src_printsupport.target = sub-printsupport
-src_printsupport.depends = src_corelib src_gui src_widgets
+src_printsupport.depends = src_corelib src_gui src_widgets src_tools_uic
 
 src_plugins.subdir = $$PWD/plugins
 src_plugins.target = sub-plugins
@@ -69,12 +93,12 @@ src_plugins.depends = src_sql src_xml src_network
 src_android.subdir = $$PWD/android
 
 # this order is important
-SUBDIRS += src_tools src_corelib
+SUBDIRS += src_tools_bootstrap src_tools_moc src_tools_rcc src_corelib
 win32:SUBDIRS += src_winmain
 SUBDIRS += src_network src_sql src_xml src_testlib
 contains(QT_CONFIG, dbus) {
-    SUBDIRS += src_dbus
-    src_plugins.depends += src_dbus
+    SUBDIRS += src_dbus src_tools_qdbusxml2cpp src_tools_qdbuscpp2xml
+    src_plugins.depends += src_dbus src_tools_qdbusxml2cpp src_tools_qdbuscpp2xml
 }
 contains(QT_CONFIG, concurrent):SUBDIRS += src_concurrent
 !contains(QT_CONFIG, no-gui) {
@@ -85,7 +109,7 @@ contains(QT_CONFIG, concurrent):SUBDIRS += src_concurrent
     SUBDIRS += src_gui src_platformsupport src_openglextensions
     src_plugins.depends += src_gui src_platformsupport
     !contains(QT_CONFIG, no-widgets) {
-        SUBDIRS += src_widgets
+        SUBDIRS += src_tools_uic src_widgets
         src_plugins.depends += src_widgets
         contains(QT_CONFIG, opengl(es1|es2)?) {
             SUBDIRS += src_opengl
@@ -97,7 +121,7 @@ contains(QT_CONFIG, concurrent):SUBDIRS += src_concurrent
         }
     }
 }
-SUBDIRS += src_plugins
+SUBDIRS += src_plugins src_tools_qdoc
 
 nacl: SUBDIRS -= src_network src_testlib
 
diff --git a/src/tools/tools.pro b/src/tools/tools.pro
deleted file mode 100644
index 1eba102c206f2363f32450014997e5357e126b46..0000000000000000000000000000000000000000
--- a/src/tools/tools.pro
+++ /dev/null
@@ -1,36 +0,0 @@
-TEMPLATE = subdirs
-
-TOOLS_SUBDIRS = src_tools_bootstrap src_tools_moc src_tools_rcc src_tools_qdoc
-contains(QT_CONFIG, dbus): TOOLS_SUBDIRS += src_tools_qdbusxml2cpp src_tools_qdbuscpp2xml
-!contains(QT_CONFIG, no-widgets): TOOLS_SUBDIRS += src_tools_uic
-# Set subdir and respective target name
-src_tools_bootstrap.subdir = bootstrap
-src_tools_bootstrap.target = sub-tools-bootstrap
-src_tools_moc.subdir = moc
-src_tools_moc.target = sub-moc
-src_tools_rcc.subdir = rcc
-src_tools_rcc.target = sub-rcc
-src_tools_uic.subdir = uic
-src_tools_uic.target = sub-uic
-src_tools_qdoc.subdir = qdoc
-src_tools_qdoc.target = sub-qdoc
-contains(QT_CONFIG, dbus) {
-    src_tools_qdbusxml2cpp.subdir = qdbusxml2cpp
-    src_tools_qdbusxml2cpp.target = sub-qdbusxml2cpp
-    src_tools_qdbuscpp2xml.subdir = qdbuscpp2xml
-    src_tools_qdbuscpp2xml.target = sub-qdbuscpp2xml
-}
-
-!ordered {
-    # Set dependencies for each subdir
-    src_tools_moc.depends = src_tools_bootstrap
-    src_tools_rcc.depends = src_tools_bootstrap
-    src_tools_uic.depends = src_tools_bootstrap
-    src_tools_qdoc.depends = src_tools_bootstrap
-    contains(QT_CONFIG, dbus) {
-        src_tools_qdbusxml2cpp.depends = src_tools_bootstrap
-        src_tools_qdbuscpp2xml.depends = src_tools_bootstrap
-    }
-}
-
-SUBDIRS = $$TOOLS_SUBDIRS