diff --git a/lldb/test/lldbtest.py b/lldb/test/lldbtest.py index 51d2afd534ecd0bd5c9e58d53b0c43684ee69b09..40a8903bda9095b4efea4420c457d9b7727aa0db 100644 --- a/lldb/test/lldbtest.py +++ b/lldb/test/lldbtest.py @@ -458,6 +458,12 @@ class TestBase(unittest2.TestCase): # End of while loop. + def buildDefault(self): + """Platform specific way to build the default binaries.""" + module = __import__(sys.platform) + if not module.buildDefault(): + raise Exception("Don't know how to build default binary") + def buildDsym(self): """Platform specific way to build binaries with dsym info.""" module = __import__(sys.platform) diff --git a/lldb/test/macosx/universal/TestUniversal.py b/lldb/test/macosx/universal/TestUniversal.py index 6a93e4aa714d499cb7fb167ced1cef4667af8268..7785f63a11f74b0d1fb83f8742bb9feed918481d 100644 --- a/lldb/test/macosx/universal/TestUniversal.py +++ b/lldb/test/macosx/universal/TestUniversal.py @@ -9,9 +9,14 @@ class UniversalTestCase(TestBase): mydir = "macosx/universal" + @unittest2.skipUnless(sys.platform.startswith("darwin") and os.uname()[4]=='i386', + "requires Darwin & i386") def test_process_launch_for_universal(self): """Test process launch of a universal binary.""" + # Invoke the default build rule. + self.buildDefault() + # Note that "testit" is a universal binary. exe = os.path.join(os.getcwd(), "testit") diff --git a/lldb/test/plugins/darwin.py b/lldb/test/plugins/darwin.py index 6a2cadfe3b9928286fcc4d5a11bfd1eceb5dec61..f5a6ee07542fca116668cfe924f3b5c048fea26f 100644 --- a/lldb/test/plugins/darwin.py +++ b/lldb/test/plugins/darwin.py @@ -2,6 +2,12 @@ import lldbtest #print "Hello, darwin plugin!" +def buildDefault(): + lldbtest.system(["/bin/sh", "-c", "make clean; make"]) + + # True signifies that we can handle building default. + return True + def buildDsym(): lldbtest.system(["/bin/sh", "-c", "make clean; make MAKE_DSYM=YES"])