diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 85ce632..fdf99d7 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -36,6 +36,8 @@ set_target_properties(KirigamiPrivate PROPERTIES
     EXPORT_NAME "KirigamiPrivate"
 )
 
+add_dependencies(Kirigami KirigamiPrivate)
+
 target_sources(KirigamiPrivate PRIVATE
     copyhelper.cpp
     copyhelper.h
diff --git a/src/delegates/CMakeLists.txt b/src/delegates/CMakeLists.txt
index 734ad0a..b4fa71b 100644
--- a/src/delegates/CMakeLists.txt
+++ b/src/delegates/CMakeLists.txt
@@ -5,6 +5,8 @@ ecm_add_qml_module(KirigamiDelegates URI "org.kde.kirigami.delegates"
     DEPENDENCIES QtQuick org.kde.kirigami.platform org.kde.kirigami.primitives
 )
 
+add_dependencies(KirigamiDelegates KirigamiPrimitives)
+
 ecm_target_qml_sources(KirigamiDelegates SOURCES
     IconTitleSubtitle.qml
     TitleSubtitle.qml
diff --git a/src/dialogs/CMakeLists.txt b/src/dialogs/CMakeLists.txt
index 5688fd4..239e903 100644
--- a/src/dialogs/CMakeLists.txt
+++ b/src/dialogs/CMakeLists.txt
@@ -6,7 +6,7 @@ ecm_add_qml_module(KirigamiDialogs URI "org.kde.kirigami.dialogs"
     DEPENDENCIES QtQuick org.kde.kirigami.platform
 )
 
-
+add_dependencies(KirigamiDialogs KirigamiPrimitives KirigamiDelegates)
 
 ecm_target_qml_sources(KirigamiDialogs SOURCES
     Dialog.qml