diff options
author | Sam Thursfield <sam.thursfield@codethink.co.uk> | 2013-02-25 11:45:30 +0000 |
---|---|---|
committer | Sam Thursfield <sam.thursfield@codethink.co.uk> | 2013-03-13 15:20:02 +0000 |
commit | 92d98f57eaa6e0871b70d0d0ab1db879cf3ea47a (patch) | |
tree | e8d6629110f8c079c2d94b6f1e3fe8e239b9fd43 /morphlib/buildenvironment_tests.py | |
parent | ece7f823de6bd61a0676edf71a9525697848824e (diff) | |
download | morph-92d98f57eaa6e0871b70d0d0ab1db879cf3ea47a.tar.gz |
Set environment variables defining target for build-essential
In the future we will allow this to be modified to provide a
cross-bootstrap mode, but for now we use the same target as
the host compiler.
Diffstat (limited to 'morphlib/buildenvironment_tests.py')
-rw-r--r-- | morphlib/buildenvironment_tests.py | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/morphlib/buildenvironment_tests.py b/morphlib/buildenvironment_tests.py index 2af3f605..03799190 100644 --- a/morphlib/buildenvironment_tests.py +++ b/morphlib/buildenvironment_tests.py @@ -29,20 +29,28 @@ class BuildEnvironmentTests(unittest.TestCase): 'no-ccache': True, 'no-distcc': True } + self.target = '%s-baserock-linux-gnu' % morphlib.util.arch() self.fake_env = { 'PATH': '/fake_bin', } self.default_path = 'no:such:path' + def new_build_env(self, settings=None, target=None, **kws): + settings = settings or self.settings + target = target or self.target + return buildenvironment.BuildEnvironment(settings, target, **kws) + def test_arch_defaults_to_host(self): - buildenv = buildenvironment.BuildEnvironment(self.settings) + buildenv = self.new_build_env() self.assertEqual(buildenv.arch, morphlib.util.arch()) def test_arch_overridable(self): - buildenv = buildenvironment.BuildEnvironment(self.settings, - arch='noarch') + buildenv = self.new_build_env(arch='noarch') self.assertEqual(buildenv.arch, 'noarch') + def test_target_always_valid(self): + self.assertRaises(morphlib.Error, self.new_build_env, target="invalid") + def test_copies_whitelist_vars(self): env = self.fake_env safe = { @@ -57,19 +65,19 @@ class BuildEnvironmentTests(unittest.TestCase): old_osenv = buildenvironment.BuildEnvironment._osenv buildenvironment.BuildEnvironment._osenv = env - buildenv = buildenvironment.BuildEnvironment(self.settings) + buildenv = self.new_build_env() self.assertEqual(sorted(safe.items()), sorted([(k, buildenv.env[k]) for k in safe.keys()])) buildenvironment.BuildEnvironment._osenv = old_osenv def test_user_spellings_equal(self): - buildenv = buildenvironment.BuildEnvironment(self.settings) + buildenv = self.new_build_env() self.assertTrue(buildenv.env['USER'] == buildenv.env['USERNAME'] == buildenv.env['LOGNAME']) def test_environment_overrides(self): - buildenv = buildenvironment.BuildEnvironment(self.settings) + buildenv = self.new_build_env() self.assertEqual(buildenv.env['TERM'], buildenv._override_term) self.assertEqual(buildenv.env['SHELL'], buildenv._override_shell) self.assertEqual(buildenv.env['USER'], buildenv._override_username) @@ -79,14 +87,13 @@ class BuildEnvironmentTests(unittest.TestCase): self.assertEqual(buildenv.env['HOME'], buildenv._override_home) def test_environment_settings_set(self): - buildenv = buildenvironment.BuildEnvironment(self.settings) - #self.assertEqual(buildenv.env['TOOLCHAIN_TARGET'], - # self.settings['toolchain-target']) + buildenv = self.new_build_env() + self.assertEqual(buildenv.env['TARGET'], self.target) def test_ccache_vars_set(self): new_settings = copy.copy(self.settings) new_settings['no-ccache'] = False new_settings['no-distcc'] = False - buildenv = buildenvironment.BuildEnvironment(new_settings) + buildenv = self.new_build_env(settings=new_settings) self.assertTrue(buildenv._ccache_path in buildenv.extra_path) self.assertEqual(buildenv.env['CCACHE_PREFIX'], 'distcc') |