diff --git a/scripts/oe-setup-builddir b/scripts/oe-setup-builddir
index 678aeac4be..3bd3df0930 100755
--- a/scripts/oe-setup-builddir
+++ b/scripts/oe-setup-builddir
@@ -64,7 +64,7 @@ unset SHOWYPDOC
 if [ -z "$OECORELOCALCONF" ]; then
     OECORELOCALCONF="$OEROOT/meta/conf/templates/default/local.conf.sample"
 fi
-if [ ! -r "$BUILDDIR/conf/local.conf" ]; then
+if [ ! -r "$BUILDDIR/conf/local.conf" ] || [ -n "$FORCE_TEMPLATECONF" ]; then
     cat <<EOM
 You had no conf/local.conf file. This configuration file has therefore been
 created for you from $OECORELOCALCONF
@@ -79,7 +79,7 @@ fi
 if [ -z "$OECORELAYERCONF" ]; then
     OECORELAYERCONF="$OEROOT/meta/conf/templates/default/bblayers.conf.sample"
 fi
-if [ ! -r "$BUILDDIR/conf/bblayers.conf" ]; then
+if [ ! -r "$BUILDDIR/conf/bblayers.conf" ] || [ -n "$FORCE_TEMPLATECONF" ]; then
     cat <<EOM
 You had no conf/bblayers.conf file. This configuration file has therefore been
 created for you from $OECORELAYERCONF
@@ -101,7 +101,7 @@ fi
 if [ -z "$OECORENOTESCONF" ]; then
     OECORENOTESCONF="$OEROOT/meta/conf/templates/default/conf-notes.txt"
 fi
-if [ ! -r "$BUILDDIR/conf/conf-notes.txt" ]; then
+if [ ! -r "$BUILDDIR/conf/conf-notes.txt" ] || [ -n "$FORCE_TEMPLATECONF" ]; then
     [ ! -r "$OECORENOTESCONF" ] || cp "$OECORENOTESCONF" "$BUILDDIR/conf/conf-notes.txt"
 fi
 
