diff --git a/Makefile.in b/Makefile.in
index 226e7e8d0d2407fe4cf057043c7861b570cc737a..1356e8825d06c626c9b5806e34564a1b8fb1f470 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -263,6 +263,13 @@ endif
 
 ifdef MOZ_PHOENIX
 tier_99_dirs	+= browser
+endif
+
+ifdef MOZ_THUNDERBIRD
+tier_99_dirs	+= toolkit/xre mail
+endif
+
+ifdef MOZ_XUL_APP
 else
 ifneq (,$(MOZ_XPFE_COMPONENTS)$(MOZ_XUL))
 tier_99_dirs	+= xpfe/bootstrap
diff --git a/allmakefiles.sh b/allmakefiles.sh
index 0475605cabd8a4a1a87535730400af70035214cf..cde2aba4838e12aa0e58cbd7d179008b78cffaba 100755
--- a/allmakefiles.sh
+++ b/allmakefiles.sh
@@ -857,6 +857,9 @@ browser/components/prefwindow/content/Makefile
 browser/components/prefwindow/locale/Makefile
 browser/components/search/Makefile
 browser/components/search/resources/Makefile
+"
+
+MAKEFILES_xulapp="
 toolkit/Makefile
 toolkit/components/autocomplete/Makefile
 toolkit/components/autocomplete/public/Makefile
@@ -872,11 +875,19 @@ toolkit/skin/win/Makefile
 toolkit/xre/Makefile
 "
 
-MAKEFILES_minotaur="
+MAKEFILES_thunderbird="
 mail/Makefile
+mail/app/Makefile
+mail/app/profile/Makefile
 mail/base/Makefile
 mail/components/Makefile
 mail/components/compose/Makefile
+mail/components/addrbook/Makefile
+mail/components/prefwindow/Makefile
+mail/extensions/Makefile
+mail/extensions/smime/Makefile
+mail/extensions/offline/Makefile
+xpfe/components/build2/Makefile
 "
 
 MAKEFILES_sql="
@@ -1298,8 +1309,12 @@ if test -n "$MOZ_PHOENIX"; then
     add_makefiles "$MAKEFILES_phoenix"
 fi
 
-if test -n "$MOZ_MINOTAUR"; then
-    add_makefiles "$MAKEFILES_minotaur"
+if test -n "$MOZ_XUL_APP"; then
+    add_makefiles "$MAKEFILES_xulapp"
+fi
+
+if test -n "$MOZ_THUNDERBIRD"; then
+    add_makefiles "$MAKEFILES_thunderbird"
 fi
 
 else
diff --git a/client.mk b/client.mk
index 9442b579621f2f8e996ef3e2713106d9e589e685..bbf9c0f6fd21cc2510724943a40975920f2cf275 100644
--- a/client.mk
+++ b/client.mk
@@ -351,16 +351,44 @@ endif
 ####################################
 # CVS defines for Phoenix (pulled and built if MOZ_PHOENIX is set)
 #
-CVSCO_PHOENIX := $(CVSCO) $(CVS_CO_DATE_FLAGS) mozilla/toolkit mozilla/browser
+CVSCO_PHOENIX := $(CVSCO) $(CVS_CO_DATE_FLAGS) mozilla/browser
 
 ifdef MOZ_PHOENIX
 FASTUPDATE_PHOENIX := fast_update $(CVSCO_PHOENIX)
 CHECKOUT_PHOENIX := cvs_co $(CVSCO_PHOENIX)
+MOZ_XUL_APP = 1
 else
 CHECKOUT_PHOENIX := true
 FASTUPDATE_PHOENIX := true
 endif
 
+####################################
+# CVS defines for Thunderbird (pulled and built if MOZ_THUNDERBIRD is set)
+#
+
+CVSCO_THUNDERBIRD := $(CVSCO) $(CVS_CO_DATE_FLAGS) mozilla/mail
+ifdef MOZ_THUNDERBIRD
+FASTUPDATE_THUNDERBIRD := fast_update $(CVSCO_THUNDERBIRD)
+CHECKOUT_THUNDERBIRD := cvs_co $(CVSCO_THUNDERBIRD)
+MOZ_XUL_APP = 1
+else
+FASTUPDATE_THUNDERBIRD := true
+CHECKOUT_THUNDERBIRD := true
+endif
+
+####################################
+# CVS defines for mozilla/toolkit (pulled and built if MOZ_XUL_APP is set)
+#
+
+CVSCO_MOZTOOLKIT := $(CVSCO) $(CVS_CO_DATE_FLAGS) mozilla/toolkit
+ifdef MOZ_XUL_APP
+FASTUPDATE_MOZTOOLKIT := fast_update $(CVSCO_MOZTOOLKIT)
+CHECKOUT_MOZTOOLKIT := cvs_co $(CVSCO_MOZTOOLKIT)
+else
+FASTUPDATE_MOZTOOLKIT := true
+CHECKOUT_MOZTOOLKIT := true
+endif
+
 ####################################
 # CVS defines for codesighs (pulled and built if MOZ_MAPINFO is set)
 #
@@ -441,7 +469,9 @@ real_checkout:
         cvs_co $(CVSCO_IMGLIB2) && \
 	cvs_co $(CVSCO_CALENDAR) && \
 	$(CHECKOUT_LIBART) && \
+	$(CHECKOUT_MOZTOOLKIT) && \
 	$(CHECKOUT_PHOENIX) && \
+	$(CHECKOUT_THUNDERBIRD) && \
 	$(CHECKOUT_CODESIGHS) && \
 	cvs_co $(CVSCO_SEAMONKEY)
 	@echo "checkout finish: "`date` | tee -a $(CVSCO_LOGFILE)
@@ -501,7 +531,9 @@ real_fast-update:
 	fast_update $(CVSCO_IMGLIB2) && \
 	fast_update $(CVSCO_CALENDAR) && \
 	$(FASTUPDATE_LIBART) && \
+	$(FASTUPDATE_MOZTOOLKIT) && \
 	$(FASTUPDATE_PHOENIX) && \
+	$(FASTUPDATE_THUNDERBIRD) && \
 	$(FASTUPDATE_CODESIGHS) && \
 	fast_update $(CVSCO_SEAMONKEY)
 	@echo "fast_update finish: "`date` | tee -a $(CVSCO_LOGFILE)
diff --git a/config/autoconf.mk.in b/config/autoconf.mk.in
index 0f1e730f4e2e2796b56ba18efe07f3a15fa2e9d9..fecb22d70c481c79120db9c72b5e5700b39af6ef 100644
--- a/config/autoconf.mk.in
+++ b/config/autoconf.mk.in
@@ -414,3 +414,4 @@ MOZ_MAPINFO	= @MOZ_MAPINFO@
 
 MOZ_PHOENIX	= @MOZ_PHOENIX@
 MOZ_XUL_APP	= @MOZ_XUL_APP@
+MOZ_THUNDERBIRD = @MOZ_THUNDERBIRD@
diff --git a/configure.in b/configure.in
index b8d6db3b0b38013bec53c82a3d5eab7f3a872c4a..a67f7fe22689c9437ddbebd6ed8230b397aabf2c 100644
--- a/configure.in
+++ b/configure.in
@@ -3275,6 +3275,17 @@ if test "$MOZ_PHOENIX"; then
 fi
 
 AC_SUBST(MOZ_PHOENIX)
+
+dnl ========================================================
+dnl = Thunderbird
+dnl ========================================================
+if test "$MOZ_THUNDERBIRD"; then
+   AC_DEFINE(MOZ_THUNDERBIRD)
+   MOZ_XUL_APP=1
+   AC_DEFINE(MOZ_XUL_APP)
+fi
+
+AC_SUBST(MOZ_THUNDERBIRD)
 AC_SUBST(MOZ_XUL_APP)
 
 dnl ========================================================