diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2020-05-06 23:21:37 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-06 23:21:37 +0300 |
commit | ec8db6a1b53072a08674bf2b4301dee7ab3dd589 (patch) | |
tree | 05d4ce55c00c98db68c3ca2070a92ad2a0887e57 | |
parent | 8ce4952890c9ed25ee471d811990eb1fc3fb13b1 (diff) | |
parent | d61f7a1e849e953a5478cd0f1b93cd5b7f4193a2 (diff) | |
download | meson-ec8db6a1b53072a08674bf2b4301dee7ab3dd589.tar.gz |
Merge pull request #7076 from mesonbuild/revertcrossfixup
Revert cross fixup
-rw-r--r-- | mesonbuild/coredata.py | 2 | ||||
-rwxr-xr-x | run_unittests.py | 11 | ||||
-rw-r--r-- | test cases/unit/75 subdir libdir/meson.build | 2 | ||||
-rw-r--r-- | test cases/unit/75 subdir libdir/subprojects/flub/meson.build | 1 |
4 files changed, 15 insertions, 1 deletions
diff --git a/mesonbuild/coredata.py b/mesonbuild/coredata.py index d3ca4f6fe..fcb13f60e 100644 --- a/mesonbuild/coredata.py +++ b/mesonbuild/coredata.py @@ -385,6 +385,7 @@ class CoreData: # Only to print a warning if it changes between Meson invocations. self.config_files = self.__load_config_files(options, scratch_dir, 'native') self.init_builtins('') + self.libdir_cross_fixup() @staticmethod def __load_config_files(options: argparse.Namespace, scratch_dir: str, ftype: str) -> T.List[str]: @@ -510,7 +511,6 @@ class CoreData: for for_machine in iter(MachineChoice): for key, opt in builtin_options_per_machine.items(): self.add_builtin_option(self.builtins_per_machine[for_machine], key, opt, subproject) - self.libdir_cross_fixup() def add_builtin_option(self, opts_map, key, opt, subproject): if subproject: diff --git a/run_unittests.py b/run_unittests.py index 39191a327..0cd52d1d0 100755 --- a/run_unittests.py +++ b/run_unittests.py @@ -6683,6 +6683,17 @@ class LinuxCrossArmTests(BasePlatformTests): return self.assertTrue(False, 'Option libdir not in introspect data.') + def test_cross_libdir_subproject(self): + # Guard against a regression where calling "subproject" + # would reset the value of libdir to its default value. + testdir = os.path.join(self.unit_test_dir, '75 subdir libdir') + self.init(testdir, extra_args=['--libdir=fuf']) + for i in self.introspect('--buildoptions'): + if i['name'] == 'libdir': + self.assertEqual(i['value'], 'fuf') + return + self.assertTrue(False, 'Libdir specified on command line gets reset.') + def test_std_remains(self): # C_std defined in project options must be in effect also when cross compiling. testdir = os.path.join(self.unit_test_dir, '51 noncross options') diff --git a/test cases/unit/75 subdir libdir/meson.build b/test cases/unit/75 subdir libdir/meson.build new file mode 100644 index 000000000..5099c91c7 --- /dev/null +++ b/test cases/unit/75 subdir libdir/meson.build @@ -0,0 +1,2 @@ +project('toplevel', 'c') +subproject('flub') diff --git a/test cases/unit/75 subdir libdir/subprojects/flub/meson.build b/test cases/unit/75 subdir libdir/subprojects/flub/meson.build new file mode 100644 index 000000000..7bfd2c553 --- /dev/null +++ b/test cases/unit/75 subdir libdir/subprojects/flub/meson.build @@ -0,0 +1 @@ +project('subflub', 'c') |