diff --git a/source/dub/generators/build.d b/source/dub/generators/build.d
index 14971cc..10d7dee 100644
--- a/source/dub/generators/build.d
+++ b/source/dub/generators/build.d
@@ -378,7 +378,7 @@
 		foreach (p; packages)
 			allfiles ~= (p.recipePath != Path.init ? p : p.basePackage).recipePath.toNativeString();
 		foreach (f; additional_dep_files) allfiles ~= f.toNativeString();
-		if (main_pack is m_project.rootPackage)
+		if (main_pack is m_project.rootPackage && m_project.rootPackage.getAllDependencies().length > 0)
 			allfiles ~= (main_pack.path ~ SelectedVersions.defaultFile).toNativeString();
 
 		foreach (file; allfiles.data) {
diff --git a/test/issue1091-bogus-rebuild.sh b/test/issue1091-bogus-rebuild.sh
new file mode 100755
index 0000000..689f572
--- /dev/null
+++ b/test/issue1091-bogus-rebuild.sh
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+set -e
+
+cd ${CURR_DIR}/1-exec-simple
+rm -f dub.selections.json
+${DUB} build --compiler=${DC} 2>&1 | grep -e "building configuration" -c || exit 1
+${DUB} build --compiler=${DC} 2>&1 | grep -e "building configuration" -c && exit 1 || exit 0