Bug 888643 - Part b: Move CPP_UNIT_TESTS definitions into moz.build files; r=gps
authorMs2ger <ms2ger@gmail.com>
Wed, 24 Jul 2013 09:23:06 +0200
changeset 151933 321a9432686db2dd566435fef316bb2b6114e48b
parent 151932 8a0c0ccab65f7b204316861fab5004d2fdbf84fc
child 151934 60dac6b9c68acbedcc8eabc54a8d084d78812df8
push id2859
push userakeybl@mozilla.com
push dateMon, 16 Sep 2013 19:14:59 +0000
treeherdermozilla-beta@87d3c51cd2bf [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersgps
bugs888643
milestone25.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 888643 - Part b: Move CPP_UNIT_TESTS definitions into moz.build files; r=gps
content/base/test/Makefile.in
content/base/test/moz.build
content/canvas/compiledtest/Makefile.in
content/canvas/compiledtest/moz.build
content/media/webaudio/compiledtest/Makefile.in
content/media/webaudio/compiledtest/moz.build
dom/audiochannel/tests/Makefile.in
dom/audiochannel/tests/moz.build
editor/txmgr/tests/Makefile.in
editor/txmgr/tests/moz.build
intl/lwbrk/tests/Makefile.in
intl/lwbrk/tests/moz.build
media/mtransport/test/Makefile.in
media/mtransport/test/moz.build
media/webrtc/signaling/test/Makefile.in
media/webrtc/signaling/test/moz.build
mfbt/tests/Makefile.in
mfbt/tests/moz.build
netwerk/test/Makefile.in
netwerk/test/moz.build
startupcache/test/Makefile.in
startupcache/test/moz.build
storage/test/Makefile.in
storage/test/moz.build
toolkit/components/places/tests/cpp/Makefile.in
toolkit/components/places/tests/cpp/moz.build
widget/tests/Makefile.in
widget/tests/moz.build
xpcom/tests/Makefile.in
xpcom/tests/moz.build
xpcom/tests/windows/Makefile.in
xpcom/tests/windows/moz.build
--- a/content/base/test/Makefile.in
+++ b/content/base/test/Makefile.in
@@ -6,24 +6,16 @@
 DEPTH		= @DEPTH@
 topsrcdir	= @top_srcdir@
 srcdir		= @srcdir@
 VPATH		= @srcdir@
 relativesrcdir  = @relativesrcdir@
 
 include $(DEPTH)/config/autoconf.mk
 
-CPP_UNIT_TESTS = \
-                 TestNativeXMLHttpRequest.cpp \
-                 TestGetURL.cpp \
-                 TestPlainTextSerializer.cpp \
-                 $(NULL)
-
-# Split files arbitrarily in three groups to not run into too-long command lines
-# which break on Windows (see bug 563151 and bug 831989)
 MOCHITEST_FILES_A = \
 		responseIdentical.sjs \
 		test_bug5141.html \
 		test_bug51034.html \
 		test_bug166235.html \
 		test_bug199959.html \
 		test_bug218236.html \
 		test_bug218277.html \
--- a/content/base/test/moz.build
+++ b/content/base/test/moz.build
@@ -8,8 +8,15 @@ DIRS += ['chrome', 'websocket_hybi']
 
 MODULE = 'content'
 
 XPCSHELL_TESTS_MANIFESTS += ['unit/xpcshell.ini']
 
 # FIXME/bug 575918: out-of-process xpcshell is broken on OS X
 if CONFIG['OS_ARCH'] != 'Darwin':
     XPCSHELL_TESTS_MANIFESTS += ['unit_ipc/xpcshell.ini']
+
+CPP_UNIT_TESTS += [
+    'TestGetURL.cpp',
+    'TestNativeXMLHttpRequest.cpp',
+    'TestPlainTextSerializer.cpp',
+]
+
--- a/content/canvas/compiledtest/Makefile.in
+++ b/content/canvas/compiledtest/Makefile.in
@@ -10,13 +10,9 @@ VPATH := @srcdir@
 FAIL_ON_WARNINGS = 1
 
 include $(DEPTH)/config/autoconf.mk
 
 LOCAL_INCLUDES := \
   -I$(srcdir)/../src \
   $(NULL)
 
-CPP_UNIT_TESTS := \
-  TestWebGLElementArrayCache.cpp \
-  $(NULL)
-
 include $(topsrcdir)/config/rules.mk
--- a/content/canvas/compiledtest/moz.build
+++ b/content/canvas/compiledtest/moz.build
@@ -1,6 +1,10 @@
 # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+CPP_UNIT_TESTS += [
+    'TestWebGLElementArrayCache.cpp',
+]
+
--- a/content/media/webaudio/compiledtest/Makefile.in
+++ b/content/media/webaudio/compiledtest/Makefile.in
@@ -9,13 +9,9 @@ VPATH          := @srcdir@
 relativesrcdir := @relativesrcdir@
 
 include $(DEPTH)/config/autoconf.mk
 
 FAIL_ON_WARNINGS = 1
 
 LOCAL_INCLUDES := -I$(srcdir)/..
 
-CPP_UNIT_TESTS := \
-  TestAudioEventTimeline.cpp \
-  $(NULL)
-
 include $(topsrcdir)/config/rules.mk
--- a/content/media/webaudio/compiledtest/moz.build
+++ b/content/media/webaudio/compiledtest/moz.build
@@ -1,6 +1,10 @@
 # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+CPP_UNIT_TESTS += [
+    'TestAudioEventTimeline.cpp',
+]
+
--- a/dom/audiochannel/tests/Makefile.in
+++ b/dom/audiochannel/tests/Makefile.in
@@ -7,14 +7,10 @@ topsrcdir	= @top_srcdir@
 srcdir		= @srcdir@
 VPATH		= @srcdir@
 relativesrcdir = @relativesrcdir@
 
 include $(DEPTH)/config/autoconf.mk
 
 FAIL_ON_WARNINGS = 1
 
-CPP_UNIT_TESTS = \
-		TestAudioChannelService.cpp \
-		$(NULL)
-
 include $(topsrcdir)/config/rules.mk
 
--- a/dom/audiochannel/tests/moz.build
+++ b/dom/audiochannel/tests/moz.build
@@ -1,8 +1,12 @@
 # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 MODULE = 'dom'
 
+CPP_UNIT_TESTS += [
+    'TestAudioChannelService.cpp',
+]
+
--- a/editor/txmgr/tests/Makefile.in
+++ b/editor/txmgr/tests/Makefile.in
@@ -7,11 +7,9 @@ DEPTH		= @DEPTH@
 topsrcdir	= @top_srcdir@
 srcdir		= @srcdir@
 VPATH		= @srcdir@
 FAIL_ON_WARNINGS = 1
 
 include $(DEPTH)/config/autoconf.mk
 
 
-CPP_UNIT_TESTS = TestTXMgr.cpp
-
 include $(topsrcdir)/config/rules.mk
--- a/editor/txmgr/tests/moz.build
+++ b/editor/txmgr/tests/moz.build
@@ -1,6 +1,10 @@
 # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+CPP_UNIT_TESTS += [
+    'TestTXMgr.cpp',
+]
+
--- a/intl/lwbrk/tests/Makefile.in
+++ b/intl/lwbrk/tests/Makefile.in
@@ -5,13 +5,11 @@
 
 DEPTH		= @DEPTH@
 topsrcdir	= @top_srcdir@
 srcdir		= @srcdir@
 VPATH		= @srcdir@
 
 include $(DEPTH)/config/autoconf.mk
 
-CPP_UNIT_TESTS	= TestLineBreak.cpp
-
 include $(topsrcdir)/config/rules.mk
 
 LOCAL_INCLUDES	= -I$(srcdir)/../public
--- a/intl/lwbrk/tests/moz.build
+++ b/intl/lwbrk/tests/moz.build
@@ -1,6 +1,10 @@
 # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+CPP_UNIT_TESTS += [
+    'TestLineBreak.cpp',
+]
+
--- a/media/mtransport/test/Makefile.in
+++ b/media/mtransport/test/Makefile.in
@@ -98,27 +98,9 @@ LIBS += \
 CPPFLAGS += \
   $(STLPORT_CPPFLAGS) \
   $(NULL)
 DEFINES += \
   -DGTEST_USE_OWN_TR1_TUPLE=1 \
   $(NULL)
 endif
 
-ifneq ($(OS_TARGET),WINNT)
-ifneq (gonk,$(MOZ_WIDGET_TOOLKIT))
-CPP_UNIT_TESTS = \
-  ice_unittest.cpp \
-  nrappkit_unittest.cpp \
-  sockettransportservice_unittest.cpp \
-  transport_unittests.cpp \
-  runnable_utils_unittest.cpp \
-  turn_unittest.cpp \
-  TestSyncRunnable.cpp \
-  $(NULL)
-ifdef MOZ_SCTP
-CPP_UNIT_TESTS += sctp_unittest.cpp
-endif
-
-endif
-endif
-
 include $(topsrcdir)/config/rules.mk
--- a/media/mtransport/test/moz.build
+++ b/media/mtransport/test/moz.build
@@ -1,8 +1,23 @@
 # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 MODULE = 'test_mtransport'
 
+if CONFIG['OS_TARGET'] != 'WINNT' and CONFIG['MOZ_WIDGET_TOOLKIT'] != 'gonk':
+    CPP_UNIT_TESTS += [
+        'TestSyncRunnable.cpp',
+        'ice_unittest.cpp',
+        'nrappkit_unittest.cpp',
+        'runnable_utils_unittest.cpp',
+        'sockettransportservice_unittest.cpp',
+        'transport_unittests.cpp',
+        'turn_unittest.cpp',
+    ]
+
+    if CONFIG['MOZ_SCTP']:
+        CPP_UNIT_TESTS += [
+            'sctp_unittest.cpp',
+        ]
--- a/media/webrtc/signaling/test/Makefile.in
+++ b/media/webrtc/signaling/test/Makefile.in
@@ -143,22 +143,15 @@ LOCAL_INCLUDES += \
  -I$(topsrcdir)/xpcom/base/ \
  $(NULL)
 
 ifneq ($(OS_TARGET),WINNT)
 ifneq (gonk,$(MOZ_WIDGET_TOOLKIT))
 ifdef JS_SHARED_LIBRARY
 LIBS += $(MOZ_ZLIB_LIBS)
 endif
-
-CPP_UNIT_TESTS = \
-  sdp_unittests.cpp \
-  signaling_unittests.cpp \
-  mediapipeline_unittest.cpp \
-  mediaconduit_unittests.cpp \
-  $(NULL)
 endif
 endif
 
 include $(topsrcdir)/config/config.mk
 include $(topsrcdir)/media/webrtc/webrtc-config.mk
 include $(topsrcdir)/config/rules.mk
 include $(topsrcdir)/ipc/chromium/chromium-config.mk
--- a/media/webrtc/signaling/test/moz.build
+++ b/media/webrtc/signaling/test/moz.build
@@ -1,8 +1,15 @@
 # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 MODULE = 'test_signaling'
 
+if CONFIG['OS_TARGET'] != 'WINNT' and CONFIG['MOZ_WIDGET_TOOLKIT'] != 'gonk':
+    CPP_UNIT_TESTS += [
+        'mediaconduit_unittests.cpp',
+        'mediapipeline_unittest.cpp',
+        'sdp_unittests.cpp',
+        'signaling_unittests.cpp',
+    ]
--- a/mfbt/tests/Makefile.in
+++ b/mfbt/tests/Makefile.in
@@ -6,38 +6,16 @@ DEPTH = @DEPTH@
 topsrcdir = @top_srcdir@
 srcdir = @srcdir@
 VPATH = @srcdir@
 
 include $(DEPTH)/config/autoconf.mk
 
 STL_FLAGS =
 
-CPP_UNIT_TESTS = \
-  TestAtomics.cpp \
-  TestBloomFilter.cpp \
-  TestCasting.cpp \
-  TestCeilingFloor.cpp \
-  TestCheckedInt.cpp \
-  TestCountZeroes.cpp \
-  TestEndian.cpp \
-  TestEnumSet.cpp \
-  TestFloatingPoint.cpp \
-  TestSHA1.cpp \
-  TestTypeTraits.cpp \
-  TestWeakPtr.cpp \
-  $(NULL)
-
-# These tests don't work with AddressSanitizer enabled
-ifndef MOZ_ASAN
-CPP_UNIT_TESTS += \
-  TestPoisonArea.cpp \
-  $(NULL)
-endif
-
 # in order to prevent rules.mk from trying to link to libraries that are
 # not available to MFBT, we have to reset these MOZ_GLUE*_LDFLAGS before including it
 # and LIBS_ after including it. For WRAP_LDFLAGS, it shouldn't matter.
 # See later comments in bug 732875.
 
 MOZ_GLUE_PROGRAM_LDFLAGS=
 MOZ_GLUE_LDFLAGS =
 WRAP_LDFLAGS=
--- a/mfbt/tests/moz.build
+++ b/mfbt/tests/moz.build
@@ -1,6 +1,25 @@
 # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+CPP_UNIT_TESTS += [
+    'TestAtomics.cpp',
+    'TestBloomFilter.cpp',
+    'TestCasting.cpp',
+    'TestCeilingFloor.cpp',
+    'TestCheckedInt.cpp',
+    'TestCountZeroes.cpp',
+    'TestEndian.cpp',
+    'TestEnumSet.cpp',
+    'TestFloatingPoint.cpp',
+    'TestSHA1.cpp',
+    'TestTypeTraits.cpp',
+    'TestWeakPtr.cpp',
+]
+
+if not CONFIG['MOZ_ASAN']:
+    CPP_UNIT_TESTS += [
+        'TestPoisonArea.cpp',
+    ]
--- a/netwerk/test/Makefile.in
+++ b/netwerk/test/Makefile.in
@@ -41,21 +41,16 @@ DISABLED_SIMPLE_PROGRAMS := $(cppsrcs:.c
 #		TestSocketTransport$(BIN_SUFFIX) \
 #		TestStreamTransport$(BIN_SUFFIX) \
 #		TestStreamChannel$(BIN_SUFFIX) \
 #		TestStreamPump$(BIN_SUFFIX) \
 #		TestIOThreads$(BIN_SUFFIX) \
 #		TestUDPSocketProvider$(BIN_SUFFIX) \
 #		$(NULL)
 
-CPP_UNIT_TESTS = \
-		 TestSTSParser.cpp \
-		 TestUDPServerSocket.cpp \
-		 $(NULL)
-
 include $(topsrcdir)/config/config.mk
 
 LIBS		= $(XPCOM_LIBS) \
 		  $(NSPR_LIBS) \
 		  $(NULL)
 
 DEFINES += $(TK_CFLAGS)
 
--- a/netwerk/test/moz.build
+++ b/netwerk/test/moz.build
@@ -32,8 +32,14 @@ CPP_SOURCES += [
     'TestUpload.cpp',
     'urltest.cpp',
 ]
 
 bin_suffix = CONFIG['BIN_SUFFIX']
 SIMPLE_PROGRAMS += [
     "%s%s" % (x[0:-4], bin_suffix) for x in CPP_SOURCES
 ]
+
+CPP_UNIT_TESTS += [
+    'TestSTSParser.cpp',
+    'TestUDPServerSocket.cpp',
+]
+
--- a/startupcache/test/Makefile.in
+++ b/startupcache/test/Makefile.in
@@ -5,13 +5,11 @@
 
 DEPTH		= @DEPTH@
 topsrcdir	= @top_srcdir@
 srcdir		= @srcdir@
 VPATH		= @srcdir@
 
 include $(DEPTH)/config/autoconf.mk
 
-CPP_UNIT_TESTS = TestStartupCache.cpp
-
 LIBS += $(MOZ_COMPONENT_LIBS)
 
 include $(topsrcdir)/config/rules.mk
--- a/startupcache/test/moz.build
+++ b/startupcache/test/moz.build
@@ -1,8 +1,12 @@
 # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 MODULE = 'test_startupcache'
 
+CPP_UNIT_TESTS += [
+    'TestStartupCache.cpp',
+]
+
--- a/storage/test/Makefile.in
+++ b/storage/test/Makefile.in
@@ -6,42 +6,16 @@
 DEPTH		= @DEPTH@
 topsrcdir	= @top_srcdir@
 srcdir		= @srcdir@
 VPATH		= @srcdir@
 relativesrcdir = @relativesrcdir@
 
 include $(DEPTH)/config/autoconf.mk
 
-CPP_UNIT_TESTS = \
-  test_transaction_helper.cpp \
-  test_statement_scoper.cpp \
-  test_mutex.cpp \
-  test_binding_params.cpp \
-  test_true_async.cpp \
-  test_unlock_notify.cpp \
-  test_service_init_background_thread.cpp \
-  test_AsXXX_helpers.cpp \
-  test_StatementCache.cpp \
-  test_async_callbacks_with_spun_event_loops.cpp \
-  test_file_perms.cpp \
-  test_asyncStatementExecution_transaction.cpp \
-  $(NULL)
-
-ifdef MOZ_DEBUG
-# FIXME bug 523392: test_deadlock_detector doesn't like Windows
-# FIXME bug 523378: also fails on OS X
-ifneq (,$(filter-out WINNT Darwin,$(OS_ARCH)))
-CPP_UNIT_TESTS += \
-  test_deadlock_detector.cpp \
-  $(NULL)
-endif
-endif
-
-
 LOCAL_INCLUDES = \
   -I$(srcdir)/../src \
   $(NULL)
 
 LIBS = \
 	$(LIBS_DIR) \
 	$(MOZ_COMPONENT_LIBS) \
 	$(SQLITE_LIBS) \
--- a/storage/test/moz.build
+++ b/storage/test/moz.build
@@ -2,8 +2,30 @@
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 MODULE = 'test_storage'
 
 XPCSHELL_TESTS_MANIFESTS += ['unit/xpcshell.ini']
+
+CPP_UNIT_TESTS += [
+    'test_AsXXX_helpers.cpp',
+    'test_StatementCache.cpp',
+    'test_asyncStatementExecution_transaction.cpp',
+    'test_async_callbacks_with_spun_event_loops.cpp',
+    'test_binding_params.cpp',
+    'test_file_perms.cpp',
+    'test_mutex.cpp',
+    'test_service_init_background_thread.cpp',
+    'test_statement_scoper.cpp',
+    'test_transaction_helper.cpp',
+    'test_true_async.cpp',
+    'test_unlock_notify.cpp',
+]
+
+if CONFIG['MOZ_DEBUG'] and CONFIG['OS_ARCH'] not in ('WINNT', 'Darwin'):
+    # FIXME bug 523392: test_deadlock_detector doesn't like Windows
+    # FIXME bug 523378: also fails on OS X
+    CPP_UNIT_TESTS += [
+        'test_deadlock_detector.cpp',
+    ]
--- a/toolkit/components/places/tests/cpp/Makefile.in
+++ b/toolkit/components/places/tests/cpp/Makefile.in
@@ -6,13 +6,9 @@ DEPTH     = @DEPTH@
 topsrcdir = @top_srcdir@
 srcdir    = @srcdir@
 VPATH     = @srcdir@
 relativesrcdir = @relativesrcdir@
 FAIL_ON_WARNINGS = 1
 
 include $(DEPTH)/config/autoconf.mk
 
-CPP_UNIT_TESTS = \
-  test_IHistory.cpp \
-  $(NULL)
-
 include $(topsrcdir)/config/rules.mk
--- a/toolkit/components/places/tests/cpp/moz.build
+++ b/toolkit/components/places/tests/cpp/moz.build
@@ -1,8 +1,12 @@
 # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 MODULE = 'test_places'
 
+CPP_UNIT_TESTS += [
+    'test_IHistory.cpp',
+]
+
--- a/widget/tests/Makefile.in
+++ b/widget/tests/Makefile.in
@@ -21,18 +21,16 @@ ifdef NS_ENABLE_TSF
 endif
 
 # Test disabled because it requires the internal API.  Re-enabling this test is
 # bug 652123.
 #CPP_UNIT_TESTS += TestChromeMargin.cpp  \
 #                 $(NULL)
 endif
 
-CPP_UNIT_TESTS += TestAppShellSteadyState.cpp
-
 MOCHITEST_CHROME_FILES =	test_bug343416.xul \
 		test_bug429954.xul \
 		window_bug429954.xul \
 		test_bug444800.xul \
 		$(filter disabled-for-intermittent-timeouts--bug-561929, test_bug478536.xul) \
 		test_bug462106_perwindow.xul \
 		window_bug478536.xul \
 		test_bug517396.xul \
--- a/widget/tests/moz.build
+++ b/widget/tests/moz.build
@@ -2,8 +2,13 @@
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 MODULE = 'test_widget'
 
 XPCSHELL_TESTS_MANIFESTS += ['unit/xpcshell.ini']
+
+CPP_UNIT_TESTS += [
+    'TestAppShellSteadyState.cpp',
+]
+
--- a/xpcom/tests/Makefile.in
+++ b/xpcom/tests/Makefile.in
@@ -38,79 +38,16 @@ endif
 # This can be deleted when SIMPLE_PROGRAMS is in moz.build
 ifdef WRAP_STL_INCLUDES
 cppsrcs += TestSTLWrappers.cpp
 endif
 
 # TODO: Use CPPSRCS from moz.build
 SIMPLE_PROGRAMS	:= $(cppsrcs:.cpp=$(BIN_SUFFIX))
 
-CPP_UNIT_TESTS = \
-                 ShowAlignments.cpp \
-                 ShowSSEConfig.cpp \
-                 TestAutoPtr.cpp \
-                 TestAutoRef.cpp \
-                 TestCOMArray.cpp \
-                 TestCOMPtr.cpp \
-                 TestCOMPtrEq.cpp \
-                 TestDeque.cpp \
-                 TestFile.cpp \
-                 TestHashtables.cpp \
-                 TestID.cpp \
-                 TestObserverArray.cpp \
-                 TestObserverService.cpp \
-                 TestPipe.cpp \
-                 TestRefPtr.cpp \
-                 TestTextFormatter.cpp \
-                 TestTArray.cpp \
-                 $(NULL)
-
-ifdef MOZ_MEMORY
-CPP_UNIT_TESTS += TestJemalloc.cpp
-endif
-
-# XXX Make this tests work in libxul builds.
-#CPP_UNIT_TESTS += \
-#                  TestArray.cpp \
-#                  TestCRT.cpp \
-#                  TestEncoding.cpp \
-#                  TestExpirationTracker.cpp \
-#                  TestPipes.cpp \
-#                  TestPriorityQueue.cpp \
-#                  TestStorageStream.cpp \
-#                  TestStrings.cpp \
-#                  TestSynchronization.cpp \
-#                  TestTArray.cpp \
-#                  TestThreadPool.cpp \
-#                  TestThreads.cpp \
-#                  TestTimeStamp.cpp \
-#                  TestXPIDLString.cpp \
-#                  TestUTF.cpp \
-#                  TestAtoms.cpp \
-#                  $(NULL)
-## FIXME: bug 577500 TestStaticAtoms fails when run in dist/bin
-## TestStaticAtoms.cpp
-
-ifdef MOZ_DEBUG
-# FIXME bug 523392: TestDeadlockDetector doesn't like Windows
-# FIXME bug 523378: also fails on OS X
-ifneq (,$(filter-out WINNT Darwin,$(OS_ARCH)))
-CPP_UNIT_TESTS += \
-                  TestDeadlockDetector.cpp \
-                  TestDeadlockDetectorScalability.cpp \
-                  $(NULL)
-endif
-endif
-
-ifndef MOZILLA_INTERNAL_API
-CPP_UNIT_TESTS += \
-                  TestStringAPI.cpp \
-                  $(NULL)
-endif
-
 include $(topsrcdir)/config/config.mk
 
 LIBS += $(XPCOM_LIBS)
 
 # Needed to resolve __yylex (?)
 ifeq ($(OS_ARCH)$(OS_RELEASE),FreeBSD2)
 LIBS		+= -lpcap
 endif
--- a/xpcom/tests/moz.build
+++ b/xpcom/tests/moz.build
@@ -44,8 +44,71 @@ CPP_SOURCES += [
     'TestQuickReturn.cpp',
     'TestRacingServiceManager.cpp',
     'TestRegistrationOrder.cpp',
     'TestThreadPoolListener.cpp',
     'TestTimers.cpp',
     'TestUnicodeArguments.cpp',
     'nsIFileEnumerator.cpp',
 ]
+
+CPP_UNIT_TESTS += [
+    'ShowAlignments.cpp',
+    'ShowSSEConfig.cpp',
+    'TestAutoPtr.cpp',
+    'TestAutoRef.cpp',
+    'TestCOMArray.cpp',
+    'TestCOMPtr.cpp',
+    'TestCOMPtrEq.cpp',
+    'TestDeque.cpp',
+    'TestFile.cpp',
+    'TestHashtables.cpp',
+    'TestID.cpp',
+    'TestObserverArray.cpp',
+    'TestObserverService.cpp',
+    'TestPipe.cpp',
+    'TestRefPtr.cpp',
+    'TestTArray.cpp',
+    'TestTextFormatter.cpp',
+]
+
+if CONFIG['MOZ_MEMORY']:
+    CPP_UNIT_TESTS += [
+        'TestJemalloc.cpp',
+    ]
+
+# XXX Make these tests work in libxul builds.
+#CPP_UNIT_TESTS += [
+#    'TestArray.cpp',
+#    'TestCRT.cpp',
+#    'TestEncoding.cpp',
+#    'TestExpirationTracker.cpp',
+#    'TestPipes.cpp',
+#    'TestPriorityQueue.cpp',
+#    'TestStorageStream.cpp',
+#    'TestStrings.cpp',
+#    'TestSynchronization.cpp',
+#    'TestTArray.cpp',
+#    'TestThreadPool.cpp',
+#    'TestThreads.cpp',
+#    'TestTimeStamp.cpp',
+#    'TestXPIDLString.cpp',
+#    'TestUTF.cpp',
+#    'TestAtoms.cpp',
+#]
+
+# FIXME: bug 577500 TestStaticAtoms fails when run in dist/bin
+#CPP_UNIT_TESTS += [
+#    'TestStaticAtoms.cpp',
+#]
+
+if CONFIG['MOZ_DEBUG'] and CONFIG['OS_ARCH'] not in ('WINNT', 'Darwin'):
+    # FIXME bug 523392: TestDeadlockDetector doesn't like Windows
+    # FIXME bug 523378: also fails on OS X
+    CPP_UNIT_TESTS += [
+        'TestDeadlockDetector.cpp',
+        'TestDeadlockDetectorScalability.cpp',
+    ]
+
+if not CONFIG['MOZILLA_INTERNAL_API']:
+    CPP_UNIT_TESTS += [
+        'TestStringAPI.cpp',
+    ]
--- a/xpcom/tests/windows/Makefile.in
+++ b/xpcom/tests/windows/Makefile.in
@@ -5,19 +5,11 @@
 
 DEPTH		= @DEPTH@
 topsrcdir	= @top_srcdir@
 srcdir		= @srcdir@
 VPATH		= @srcdir@
 
 include $(DEPTH)/config/autoconf.mk
 
-CPP_UNIT_TESTS	= \
-                  TestCOM.cpp \
-                  $(NULL)
-
-# TestNTFSPermissions is causing oranges because it's creating directories
-# multiple times, and then leaving them in a state where they can't be cleaned
-#CPP_UNIT_TESTS += TestNTFSPermissions.cpp
-
 include $(topsrcdir)/config/rules.mk
 
 OS_LIBS	+= $(call EXPAND_LIBNAME,rpcrt4 uuid)
--- a/xpcom/tests/windows/moz.build
+++ b/xpcom/tests/windows/moz.build
@@ -1,8 +1,12 @@
 # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 MODULE = 'xpcom'
 
+CPP_UNIT_TESTS += [
+    'TestCOM.cpp',
+]
+