Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package meson for openSUSE:Factory checked in at 2021-11-06 18:12:59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/meson (Old) and /work/SRC/openSUSE:Factory/.meson.new.1890 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "meson" Sat Nov 6 18:12:59 2021 rev:77 rq:928683 version:0.59.4 Changes: -------- --- /work/SRC/openSUSE:Factory/meson/meson.changes 2021-10-29 22:32:55.403652435 +0200 +++ /work/SRC/openSUSE:Factory/.meson.new.1890/meson.changes 2021-11-06 18:13:00.660727747 +0100 @@ -1,0 +2,6 @@ +Sun Oct 31 17:03:47 UTC 2021 - Andreas Stieger <andreas.stie...@gmx.de> + +- meson 0.59.4: + * Fix crash when getting cuda options + +------------------------------------------------------------------- Old: ---- meson-0.59.3.tar.gz meson-0.59.3.tar.gz.asc New: ---- meson-0.59.4.tar.gz meson-0.59.4.tar.gz.asc ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ meson.spec ++++++ --- /var/tmp/diff_new_pack.EaNiTe/_old 2021-11-06 18:13:01.272728067 +0100 +++ /var/tmp/diff_new_pack.EaNiTe/_new 2021-11-06 18:13:01.276728070 +0100 @@ -28,7 +28,7 @@ %{!?vim_data_dir:%global vim_data_dir %{_datadir}/vim} %bcond_with setuptools Name: meson%{name_ext} -Version: 0.59.3 +Version: 0.59.4 Release: 0 Summary: Python-based build system License: Apache-2.0 ++++++ meson-0.59.3.tar.gz -> meson-0.59.4.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.59.3/PKG-INFO new/meson-0.59.4/PKG-INFO --- old/meson-0.59.3/PKG-INFO 2021-10-23 19:08:57.638149000 +0200 +++ new/meson-0.59.4/PKG-INFO 2021-10-28 12:45:33.520619600 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: meson -Version: 0.59.3 +Version: 0.59.4 Summary: A high performance build system Home-page: https://mesonbuild.com Author: Jussi Pakkanen diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.59.3/man/meson.1 new/meson-0.59.4/man/meson.1 --- old/meson-0.59.3/man/meson.1 2021-10-23 18:36:11.000000000 +0200 +++ new/meson-0.59.4/man/meson.1 2021-10-28 12:40:04.000000000 +0200 @@ -1,4 +1,4 @@ -.TH MESON "1" "October 2021" "meson 0.59.3" "User Commands" +.TH MESON "1" "October 2021" "meson 0.59.4" "User Commands" .SH NAME meson - a high productivity build system .SH DESCRIPTION diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.59.3/meson.egg-info/PKG-INFO new/meson-0.59.4/meson.egg-info/PKG-INFO --- old/meson-0.59.3/meson.egg-info/PKG-INFO 2021-10-23 19:08:50.000000000 +0200 +++ new/meson-0.59.4/meson.egg-info/PKG-INFO 2021-10-28 12:45:26.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: meson -Version: 0.59.3 +Version: 0.59.4 Summary: A high performance build system Home-page: https://mesonbuild.com Author: Jussi Pakkanen diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.59.3/meson.egg-info/SOURCES.txt new/meson-0.59.4/meson.egg-info/SOURCES.txt --- old/meson-0.59.3/meson.egg-info/SOURCES.txt 2021-10-23 19:08:50.000000000 +0200 +++ new/meson-0.59.4/meson.egg-info/SOURCES.txt 2021-10-28 12:45:26.000000000 +0200 @@ -1753,6 +1753,7 @@ test cases/cuda/14 cuda has header symbol/meson.build test cases/cuda/15 sanitizer/meson.build test cases/cuda/15 sanitizer/prog.cu +test cases/cuda/16 multistd/lib.cu test cases/cuda/16 multistd/main.cu test cases/cuda/16 multistd/meson.build test cases/cuda/2 split/lib.cu diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.59.3/mesonbuild/coredata.py new/meson-0.59.4/mesonbuild/coredata.py --- old/meson-0.59.3/mesonbuild/coredata.py 2021-10-23 18:36:11.000000000 +0200 +++ new/meson-0.59.4/mesonbuild/coredata.py 2021-10-28 12:40:04.000000000 +0200 @@ -43,7 +43,7 @@ KeyedOptionDictType = T.Union[T.Dict['OptionKey', 'UserOption[T.Any]'], OptionOverrideProxy] CompilerCheckCacheKey = T.Tuple[T.Tuple[str, ...], str, str, T.Tuple[str, ...], str] -version = '0.59.3' +version = '0.59.4' backendlist = ['ninja', 'vs', 'vs2010', 'vs2012', 'vs2013', 'vs2015', 'vs2017', 'vs2019', 'xcode'] default_yielding = False diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.59.3/mesonbuild/mesonlib/universal.py new/meson-0.59.4/mesonbuild/mesonlib/universal.py --- old/meson-0.59.3/mesonbuild/mesonlib/universal.py 2021-10-23 18:36:06.000000000 +0200 +++ new/meson-0.59.4/mesonbuild/mesonlib/universal.py 2021-10-28 12:40:04.000000000 +0200 @@ -28,6 +28,7 @@ import typing as T import uuid import textwrap +import copy from mesonbuild import mlog @@ -63,7 +64,6 @@ 'OptionKey', 'dump_conf_header', 'OptionOverrideProxy', - 'OptionProxy', 'OptionType', 'OrderedSet', 'PerMachine', @@ -1902,16 +1902,6 @@ return wrapper -class OptionProxy(T.Generic[_T]): - def __init__(self, value: _T, choices: T.Optional[T.List[str]] = None): - self.value = value - self.choices = choices - - def set_value(self, v: _T) -> None: - # XXX: should this be an error - self.value = v - - class OptionOverrideProxy(collections.abc.MutableMapping): '''Mimic an option list but transparently override selected option @@ -1927,15 +1917,16 @@ for o in options: self.options.update(o) - def __getitem__(self, key: 'OptionKey') -> T.Union['UserOption', OptionProxy]: + def __getitem__(self, key: 'OptionKey') -> T.Union['UserOption']: if key in self.options: opt = self.options[key] if key in self.overrides: - return OptionProxy(opt.validate_value(self.overrides[key]), getattr(opt, 'choices', None)) + opt = copy.copy(opt) + opt.set_value(self.overrides[key]) return opt raise KeyError('Option not found', key) - def __setitem__(self, key: 'OptionKey', value: T.Union['UserOption', OptionProxy]) -> None: + def __setitem__(self, key: 'OptionKey', value: T.Union['UserOption']) -> None: self.overrides[key] = value.value def __delitem__(self, key: 'OptionKey') -> None: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' "old/meson-0.59.3/test cases/cuda/16 multistd/lib.cu" "new/meson-0.59.4/test cases/cuda/16 multistd/lib.cu" --- "old/meson-0.59.3/test cases/cuda/16 multistd/lib.cu" 1970-01-01 01:00:00.000000000 +0100 +++ "new/meson-0.59.4/test cases/cuda/16 multistd/lib.cu" 2021-10-28 12:40:04.000000000 +0200 @@ -0,0 +1,3 @@ +int do_cuda_stuff() { + return 0; +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' "old/meson-0.59.3/test cases/cuda/16 multistd/main.cu" "new/meson-0.59.4/test cases/cuda/16 multistd/main.cu" --- "old/meson-0.59.3/test cases/cuda/16 multistd/main.cu" 2021-04-10 11:22:14.000000000 +0200 +++ "new/meson-0.59.4/test cases/cuda/16 multistd/main.cu" 2021-10-28 12:40:04.000000000 +0200 @@ -7,6 +7,7 @@ return result; } +int do_cuda_stuff(); int main(void) { int n = cuda_devices(); @@ -16,5 +17,5 @@ } std::cout << "Found " << n << "Cuda devices.\n"; - return 0; + return do_cuda_stuff(); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' "old/meson-0.59.3/test cases/cuda/16 multistd/meson.build" "new/meson-0.59.4/test cases/cuda/16 multistd/meson.build" --- "old/meson-0.59.3/test cases/cuda/16 multistd/meson.build" 2021-10-23 18:36:06.000000000 +0200 +++ "new/meson-0.59.4/test cases/cuda/16 multistd/meson.build" 2021-10-28 12:40:04.000000000 +0200 @@ -1,4 +1,13 @@ -project('C++-CUDA multi-std', 'cpp', 'cuda', version : '1.0.0', default_options : ['cpp_std=c++17', 'cuda_std=c++14']) +project('C++-CUDA multi-std', 'cpp', 'cuda', + version : '1.0.0', + default_options : ['cpp_std=c++17', 'cuda_std=c++14']) -exe = executable('prog', 'main.cu') -test('cudatest', exe) +# Regression test: Passing override_options used to cause a crash. +# See https://github.com/mesonbuild/meson/issues/9448. +libcpp11 = static_library('testcpp11', 'lib.cu', + override_options: ['cpp_std=c++11'] +) + +exe = executable('prog', 'main.cu', link_with: libcpp11) +# The runtimes leak memory, so ignore it. +test('cudatest', exe, env: ['ASAN_OPTIONS=detect_leaks=0'])