diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2017-02-23 00:21:01 +0200 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2017-07-17 19:20:00 +0300 |
commit | 6119beed4db77529830e466f581591c86e32e0d0 (patch) | |
tree | a4344af47c5e27fae8fe132454f1e2cd923877e1 | |
parent | fe86c9c39953b47946fbf242ad3ced3d75c4d2b7 (diff) | |
download | meson-6119beed4db77529830e466f581591c86e32e0d0.zip meson-6119beed4db77529830e466f581591c86e32e0d0.tar.gz meson-6119beed4db77529830e466f581591c86e32e0d0.tar.bz2 |
Create a new configuration data object and return it as the result.
-rw-r--r-- | mesonbuild/modules/simd.py | 9 | ||||
-rw-r--r-- | test cases/common/139 simd/meson.build | 9 |
2 files changed, 8 insertions, 10 deletions
diff --git a/mesonbuild/modules/simd.py b/mesonbuild/modules/simd.py index 4a9bdd7..b666f4b 100644 --- a/mesonbuild/modules/simd.py +++ b/mesonbuild/modules/simd.py @@ -46,11 +46,8 @@ class SimdModule(ExtensionModule): compiler = kwargs['compiler'].compiler if not isinstance(compiler, compilers.Compiler): raise mesonlib.MesonException('Compiler argument must be a compiler object.') - if 'configuration' not in kwargs: - raise mesonlib.MesonException('Must specify configuration object.') - conf = kwargs['configuration'].held_object - if not isinstance(conf, build.ConfigurationData): - raise mesonlib.MesonException('Configuration must be a configuration object.') + cdata = interpreter.func_configuration_data(None, [], {}) + conf = cdata.held_object for iset in self.isets: if iset not in kwargs: continue @@ -69,7 +66,7 @@ class SimdModule(ExtensionModule): lib_kwargs = {'sources': iset_fname, compiler.get_language() + '_args': args} result.append(interpreter.func_static_lib(None, [libname], lib_kwargs)) - return result + return [result, cdata] def initialize(): return SimdModule() diff --git a/test cases/common/139 simd/meson.build b/test cases/common/139 simd/meson.build index 9eff0a5..2b7d722 100644 --- a/test cases/common/139 simd/meson.build +++ b/test cases/common/139 simd/meson.build @@ -4,8 +4,6 @@ simd = import('simd') cc = meson.get_compiler('c') -cdata = configuration_data() - if not meson.is_cross_build() and host_machine.cpu_family() == 'arm' and cc.get_id() == 'clang' message('Adding -march=armv7 because assuming that this build happens on Raspbian.') message('Its Clang seems to be misconfigured and does not support NEON by default.') @@ -16,7 +14,8 @@ if cc.get_id() == 'msvc' and cc.version().version_compare('<17') error('MESON_SKIP_TEST VS2010 produces broken binaries on x86.') endif -simdlibs = simd.check('mysimds', +# FIXME add [a, b] = function() +rval = simd.check('mysimds', mmx : 'simd_mmx.c', sse : 'simd_sse.c', sse2 : 'simd_sse2.c', @@ -27,9 +26,11 @@ simdlibs = simd.check('mysimds', avx : 'simd_avx.c', avx2 : 'simd_avx2.c', neon : 'simd_neon.c', - configuration : cdata, compiler : cc) +simdlibs = rval[0] +# FIXME add cdata1.merge_from(cdata2) +cdata = rval[1] configure_file(output : 'simdconfig.h', configuration : cdata) |