Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package meson for openSUSE:Factory checked in at 2022-04-25 23:34:59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/meson (Old) and /work/SRC/openSUSE:Factory/.meson.new.1538 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "meson" Mon Apr 25 23:34:59 2022 rev:82 rq:972475 version:0.61.4 Changes: -------- --- /work/SRC/openSUSE:Factory/meson/meson.changes 2022-03-16 20:20:15.556961256 +0100 +++ /work/SRC/openSUSE:Factory/.meson.new.1538/meson.changes 2022-04-25 23:35:00.722373142 +0200 @@ -1,0 +2,15 @@ +Mon Apr 25 07:08:30 UTC 2022 - Dominique Leuenberger <dims...@opensuse.org> + +- Add 34daa53a.patch: gnome module: properly fallback to + gtk-update-icon-cache. + +------------------------------------------------------------------- +Sat Apr 23 11:35:57 UTC 2022 - Ferdinand Thiessen <r...@fthiessen.de> + +- Update to 0.61.4: + * Fixes for the ninja backend + * Fixes for the rust module + * Fixes for the gnome module: Fix incorrect lookup of nonexistent + dependencies + +------------------------------------------------------------------- Old: ---- meson-0.61.3.tar.gz meson-0.61.3.tar.gz.asc New: ---- 34daa53a.patch meson-0.61.4.tar.gz meson-0.61.4.tar.gz.asc ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ meson.spec ++++++ --- /var/tmp/diff_new_pack.M7z5r5/_old 2022-04-25 23:35:01.854374728 +0200 +++ /var/tmp/diff_new_pack.M7z5r5/_new 2022-04-25 23:35:01.858374733 +0200 @@ -28,7 +28,7 @@ %{!?vim_data_dir:%global vim_data_dir %{_datadir}/vim} %bcond_with setuptools Name: meson%{name_ext} -Version: 0.61.3 +Version: 0.61.4 Release: 0 Summary: Python-based build system License: Apache-2.0 @@ -37,6 +37,8 @@ Source: https://github.com/%{_name}/meson/releases/download/%{version}/meson-%{version}.tar.gz Source1: https://github.com/%{_name}/meson/releases/download/%{version}/meson-%{version}.tar.gz.asc Source2: meson.keyring +# PATCH-FIX-UPSTREAM 34daa53a.patch dims...@opensuse.org -- gnome module: properly fallback to gtk-update-icon-cache +Patch0: https://github.com/mesonbuild/meson/commit/34daa53a.patch # PATCH-FIX-OPENSUSE meson-test-installed-bin.patch dims...@opensuse.org -- We want the test suite to run against /usr/bin/meson coming from our meson package. Patch1: meson-test-installed-bin.patch # PATCH-FEATURE-OPENSUSE meson-distutils.patch tchva...@suse.com -- build and install using distutils instead of full setuptools @@ -159,6 +161,7 @@ %prep %setup -q -n meson-%{version} +%patch0 -p1 %patch1 -p1 %if !%{with setuptools} %patch2 -p1 ++++++ 34daa53a.patch ++++++ >From 34daa53aa6e6714f906f20bcc17f5300c21abcde Mon Sep 17 00:00:00 2001 From: Antoine Jacoutot <ajacou...@gnome.org> Date: Wed, 23 Mar 2022 22:15:11 +0100 Subject: [PATCH] gnome module: properly fallback to gtk-update-icon-cache Commit a0cade8f introduced a typo and wrongly check for gtk4-update-icon-cache twice. If gtk4-update-icon-cache (gtk4) is not found, look for gtk-update-icon-cache (gtk3) instead. --- mesonbuild/modules/gnome.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py index 673a781a41d..501be9ae4da 100644 --- a/mesonbuild/modules/gnome.py +++ b/mesonbuild/modules/gnome.py @@ -371,7 +371,7 @@ def post_install(self, state: 'ModuleState', args: T.List['TYPE_var'], kwargs: ' prog = state.find_program('gtk4-update-icon-cache', required=False) found = isinstance(prog, build.Executable) or prog.found() if not found: - prog = state.find_program('gtk4-update-icon-cache') + prog = state.find_program('gtk-update-icon-cache') icondir = os.path.join(datadir_abs, 'icons', 'hicolor') script = state.backend.get_executable_serialisation([prog, '-q', '-t', '-f', icondir]) script.skip_if_destdir = True ++++++ meson-0.61.3.tar.gz -> meson-0.61.4.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.61.3/PKG-INFO new/meson-0.61.4/PKG-INFO --- old/meson-0.61.3/PKG-INFO 2022-03-14 18:58:43.452145300 +0100 +++ new/meson-0.61.4/PKG-INFO 2022-03-25 21:13:12.571171300 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: meson -Version: 0.61.3 +Version: 0.61.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.61.3/man/meson.1 new/meson-0.61.4/man/meson.1 --- old/meson-0.61.3/man/meson.1 2022-03-14 18:54:43.000000000 +0100 +++ new/meson-0.61.4/man/meson.1 2022-03-25 21:12:07.000000000 +0100 @@ -1,4 +1,4 @@ -.TH MESON "1" "March 2022" "meson 0.61.3" "User Commands" +.TH MESON "1" "March 2022" "meson 0.61.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.61.3/meson.egg-info/PKG-INFO new/meson-0.61.4/meson.egg-info/PKG-INFO --- old/meson-0.61.3/meson.egg-info/PKG-INFO 2022-03-14 18:58:37.000000000 +0100 +++ new/meson-0.61.4/meson.egg-info/PKG-INFO 2022-03-25 21:13:11.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: meson -Version: 0.61.3 +Version: 0.61.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.61.3/meson.egg-info/SOURCES.txt new/meson-0.61.4/meson.egg-info/SOURCES.txt --- old/meson-0.61.3/meson.egg-info/SOURCES.txt 2022-03-14 18:58:37.000000000 +0100 +++ new/meson-0.61.4/meson.egg-info/SOURCES.txt 2022-03-25 21:13:11.000000000 +0100 @@ -1840,6 +1840,9 @@ test cases/cython/2 generated sources/test.py test cases/cython/2 generated sources/libdir/gen.py test cases/cython/2 generated sources/libdir/meson.build +test cases/cython/3 cython_args/cythonargs.pyx +test cases/cython/3 cython_args/meson.build +test cases/cython/3 cython_args/test.py test cases/d/1 simple/app.d test cases/d/1 simple/meson.build test cases/d/1 simple/test.json diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.61.3/mesonbuild/backend/ninjabackend.py new/meson-0.61.4/mesonbuild/backend/ninjabackend.py --- old/meson-0.61.3/mesonbuild/backend/ninjabackend.py 2022-03-14 18:54:43.000000000 +0100 +++ new/meson-0.61.4/mesonbuild/backend/ninjabackend.py 2022-03-25 21:12:07.000000000 +0100 @@ -605,7 +605,7 @@ with open(os.path.join(builddir, 'compile_commands.json'), 'wb') as f: f.write(jsondb) except Exception: - mlog.warning('Could not create compilation database.') + mlog.warning('Could not create compilation database.', fatal=False) # Get all generated headers. Any source file might need them so # we need to add an order dependency to them. @@ -1608,6 +1608,7 @@ args += cython.get_option_compile_args(opt_proxy) args += self.build.get_global_args(cython, target.for_machine) args += self.build.get_project_args(cython, target.subproject, target.for_machine) + args += target.get_extra_args('cython') ext = opt_proxy[OptionKey('language', machine=target.for_machine, lang='cython')].value diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.61.3/mesonbuild/build.py new/meson-0.61.4/mesonbuild/build.py --- old/meson-0.61.3/mesonbuild/build.py 2022-03-14 18:54:43.000000000 +0100 +++ new/meson-0.61.4/mesonbuild/build.py 2022-03-25 21:12:07.000000000 +0100 @@ -36,7 +36,7 @@ MesonBugException, ) from .compilers import ( - Compiler, is_object, clink_langs, sort_clink, lang_suffixes, + Compiler, is_object, clink_langs, sort_clink, lang_suffixes, all_languages, is_known_suffix, detect_static_linker, detect_compiler_for ) from .linkers import StaticLinker @@ -54,23 +54,12 @@ pch_kwargs = {'c_pch', 'cpp_pch'} -lang_arg_kwargs = { - 'c_args', - 'cpp_args', - 'cuda_args', - 'd_args', +lang_arg_kwargs = {f'{lang}_args' for lang in all_languages} +lang_arg_kwargs |= { 'd_import_dirs', 'd_unittest', 'd_module_versions', 'd_debug', - 'fortran_args', - 'java_args', - 'objc_args', - 'objcpp_args', - 'rust_args', - 'vala_args', - 'cs_args', - 'cython_args', } vala_kwargs = {'vala_header', 'vala_gir', 'vala_vapi'} @@ -1078,24 +1067,18 @@ for linktarget in lwhole: self.link_whole(linktarget) - c_pchlist, cpp_pchlist, clist, cpplist, cudalist, cslist, valalist, objclist, objcpplist, fortranlist, rustlist \ - = (extract_as_list(kwargs, c) for c in ['c_pch', 'cpp_pch', 'c_args', 'cpp_args', 'cuda_args', 'cs_args', 'vala_args', 'objc_args', 'objcpp_args', 'fortran_args', 'rust_args']) + for lang in all_languages: + lang_args = extract_as_list(kwargs, f'{lang}_args') + self.add_compiler_args(lang, lang_args) - self.add_pch('c', c_pchlist) - self.add_pch('cpp', cpp_pchlist) - compiler_args = {'c': clist, 'cpp': cpplist, 'cuda': cudalist, 'cs': cslist, 'vala': valalist, 'objc': objclist, 'objcpp': objcpplist, - 'fortran': fortranlist, 'rust': rustlist - } - for key, value in compiler_args.items(): - self.add_compiler_args(key, value) + self.add_pch('c', extract_as_list(kwargs, 'c_pch')) + self.add_pch('cpp', extract_as_list(kwargs, 'cpp_pch')) if not isinstance(self, Executable) or 'export_dynamic' in kwargs: self.vala_header = kwargs.get('vala_header', self.name + '.h') self.vala_vapi = kwargs.get('vala_vapi', self.name + '.vapi') self.vala_gir = kwargs.get('vala_gir', None) - dlist = stringlistify(kwargs.get('d_args', [])) - self.add_compiler_args('d', dlist) dfeatures = dict() dfeature_unittest = kwargs.get('d_unittest', False) if dfeature_unittest: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.61.3/mesonbuild/compilers/cpp.py new/meson-0.61.4/mesonbuild/compilers/cpp.py --- old/meson-0.61.3/mesonbuild/compilers/cpp.py 2022-03-14 18:54:33.000000000 +0100 +++ new/meson-0.61.4/mesonbuild/compilers/cpp.py 2022-03-25 21:12:07.000000000 +0100 @@ -251,11 +251,9 @@ # be passed to a different compiler with a different set of default # search paths, such as when using Clang for C/C++ and gfortran for # fortran, - search_dir = self._get_search_dirs(env) search_dirs: T.List[str] = [] - if search_dir is not None: - for d in search_dir.split()[-1][len('libraries: ='):].split(':'): - search_dirs.append(f'-L{d}') + for d in self.get_compiler_dirs(env, 'libraries'): + search_dirs.append(f'-L{d}') return search_dirs + ['-lstdc++'] @@ -265,11 +263,9 @@ # be passed to a different compiler with a different set of default # search paths, such as when using Clang for C/C++ and gfortran for # fortran, - search_dir = self._get_search_dirs(env) search_dirs: T.List[str] = [] - if search_dir is not None: - for d in search_dir.split()[-1][len('libraries: ='):].split(':'): - search_dirs.append(f'-L{d}') + for d in self.get_compiler_dirs(env, 'libraries'): + search_dirs.append(f'-L{d}') return search_dirs + ['-lc++'] @@ -419,11 +415,9 @@ # be passed to a different compiler with a different set of default # search paths, such as when using Clang for C/C++ and gfortran for # fortran, - search_dir = self._get_search_dirs(env) search_dirs: T.List[str] = [] - if search_dir is not None: - for d in search_dir.split()[-1][len('libraries: ='):].split(':'): - search_dirs.append(f'-L{d}') + for d in self.get_compiler_dirs(env, 'libraries'): + search_dirs.append(f'-L{d}') return ['-lstdc++'] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.61.3/mesonbuild/compilers/fortran.py new/meson-0.61.4/mesonbuild/compilers/fortran.py --- old/meson-0.61.3/mesonbuild/compilers/fortran.py 2022-03-14 18:54:33.000000000 +0100 +++ new/meson-0.61.4/mesonbuild/compilers/fortran.py 2022-03-25 21:12:07.000000000 +0100 @@ -215,11 +215,9 @@ # be passed to a different compiler with a different set of default # search paths, such as when using Clang for C/C++ and gfortran for # fortran, - search_dir = self._get_search_dirs(env) search_dirs: T.List[str] = [] - if search_dir is not None: - for d in search_dir.split()[-1][len('libraries: ='):].split(':'): - search_dirs.append(f'-L{d}') + for d in self.get_compiler_dirs(env, 'libraries'): + search_dirs.append(f'-L{d}') return search_dirs + ['-lgfortran', '-lm'] def has_header(self, hname: str, prefix: str, env: 'Environment', *, @@ -487,11 +485,9 @@ # search paths, such as when using Clang for C/C++ and gfortran for # fortran, # XXX: Untested.... - search_dir = self._get_search_dirs(env) search_dirs: T.List[str] = [] - if search_dir is not None: - for d in search_dir.split()[-1][len('libraries: ='):].split(':'): - search_dirs.append(f'-L{d}') + for d in self.get_compiler_dirs(env, 'libraries'): + search_dirs.append(f'-L{d}') return search_dirs + ['-lflang', '-lpgmath'] class Open64FortranCompiler(FortranCompiler): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.61.3/mesonbuild/coredata.py new/meson-0.61.4/mesonbuild/coredata.py --- old/meson-0.61.3/mesonbuild/coredata.py 2022-03-14 18:54:43.000000000 +0100 +++ new/meson-0.61.4/mesonbuild/coredata.py 2022-03-25 21:12:07.000000000 +0100 @@ -50,7 +50,7 @@ # # Pip requires that RCs are named like this: '0.1.0.rc1' # But the corresponding Git tag needs to be '0.1.0rc1' -version = '0.61.3' +version = '0.61.4' backendlist = ['ninja', 'vs', 'vs2010', 'vs2012', 'vs2013', 'vs2015', 'vs2017', 'vs2019', 'vs2022', 'xcode'] @@ -1040,7 +1040,7 @@ obj = pickle.load(f) except (pickle.UnpicklingError, EOFError): raise MesonException(load_fail_msg) - except (ModuleNotFoundError, AttributeError): + except (TypeError, ModuleNotFoundError, AttributeError): raise MesonException( f"Coredata file {filename!r} references functions or classes that don't " "exist. This probably means that it was generated with an old " diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.61.3/mesonbuild/modules/gnome.py new/meson-0.61.4/mesonbuild/modules/gnome.py --- old/meson-0.61.3/mesonbuild/modules/gnome.py 2022-03-14 18:54:33.000000000 +0100 +++ new/meson-0.61.4/mesonbuild/modules/gnome.py 2022-03-25 21:12:07.000000000 +0100 @@ -361,17 +361,17 @@ rv.append(script) if kwargs['gtk_update_icon_cache'] and not self.install_gtk_update_icon_cache: self.install_gtk_update_icon_cache = True - prog = self._get_native_binary(state, 'gtk4-update-icon-cache', 'gtk4', 'gtk4_update_icon_cache', required=False) + prog = state.find_program('gtk4-update-icon-cache', required=False) found = isinstance(prog, build.Executable) or prog.found() if not found: - prog = self._get_native_binary(state, 'gtk-update-icon-cache', 'gtk+-3.0', 'gtk_update_icon_cache') + prog = state.find_program('gtk4-update-icon-cache') icondir = os.path.join(datadir_abs, 'icons', 'hicolor') script = state.backend.get_executable_serialisation([prog, '-q', '-t', '-f', icondir]) script.skip_if_destdir = True rv.append(script) if kwargs['update_desktop_database'] and not self.install_update_desktop_database: self.install_update_desktop_database = True - prog = self._get_native_binary(state, 'update-desktop-database', 'desktop-file-utils', 'update_desktop_database') + prog = state.find_program('update-desktop-database') appdir = os.path.join(datadir_abs, 'applications') script = state.backend.get_executable_serialisation([prog, '-q', appdir]) script.skip_if_destdir = True diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.61.3/mesonbuild/modules/unstable_rust.py new/meson-0.61.4/mesonbuild/modules/unstable_rust.py --- old/meson-0.61.3/mesonbuild/modules/unstable_rust.py 2022-03-14 18:54:33.000000000 +0100 +++ new/meson-0.61.4/mesonbuild/modules/unstable_rust.py 2022-03-25 21:12:07.000000000 +0100 @@ -195,7 +195,8 @@ inc_strs: T.List[str] = [] for i in kwargs['include_directories']: # bindgen always uses clang, so it's safe to hardcode -I here - inc_strs.extend([f'-I{x}' for x in i.to_string_list(state.environment.get_source_dir())]) + inc_strs.extend([f'-I{x}' for x in i.to_string_list( + state.environment.get_source_dir(), state.environment.get_build_dir())]) if self._bindgen_bin is None: self._bindgen_bin = state.find_program('bindgen') diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.61.3/mesonbuild/mtest.py new/meson-0.61.4/mesonbuild/mtest.py --- old/meson-0.61.3/mesonbuild/mtest.py 2022-03-14 18:54:43.000000000 +0100 +++ new/meson-0.61.4/mesonbuild/mtest.py 2022-03-25 21:12:07.000000000 +0100 @@ -1344,12 +1344,9 @@ self.console_mode = ConsoleUser.LOGGER def _get_test_cmd(self) -> T.Optional[T.List[str]]: - testentry = self.test.fname[0] - if self.options.no_rebuild and not os.path.isfile(testentry): - raise TestException(f'The test program {testentry!r} does not exist. Cannot run tests before building them.') - if testentry.endswith('.jar'): + if self.test.fname[0].endswith('.jar'): return ['java', '-jar'] + self.test.fname - elif not self.test.is_cross_built and run_with_mono(testentry): + elif not self.test.is_cross_built and run_with_mono(self.test.fname[0]): return ['mono'] + self.test.fname elif self.test.cmd_is_built and self.test.is_cross_built and self.test.needs_exe_wrapper: if self.test.exe_wrapper is None: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' "old/meson-0.61.3/test cases/cython/3 cython_args/cythonargs.pyx" "new/meson-0.61.4/test cases/cython/3 cython_args/cythonargs.pyx" --- "old/meson-0.61.3/test cases/cython/3 cython_args/cythonargs.pyx" 1970-01-01 01:00:00.000000000 +0100 +++ "new/meson-0.61.4/test cases/cython/3 cython_args/cythonargs.pyx" 2022-03-25 21:12:07.000000000 +0100 @@ -0,0 +1,5 @@ +def test(): + IF VALUE: + return 1 + ELSE: + return 0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' "old/meson-0.61.3/test cases/cython/3 cython_args/meson.build" "new/meson-0.61.4/test cases/cython/3 cython_args/meson.build" --- "old/meson-0.61.3/test cases/cython/3 cython_args/meson.build" 1970-01-01 01:00:00.000000000 +0100 +++ "new/meson-0.61.4/test cases/cython/3 cython_args/meson.build" 2022-03-25 21:12:07.000000000 +0100 @@ -0,0 +1,30 @@ +project('cython_args', ['cython', 'c']) + +pymod = import('python') +python = pymod.find_installation('python3') +python_dep = python.dependency() +if not python_dep.found() + error('MESON_SKIP_TEST: Python library not found.') +endif + +mod = python.extension_module( + 'cythonargs', + files('cythonargs.pyx'), + cython_args: [ + '--compile-time-env', + 'VALUE=1' + ], + dependencies: [python_dep] +) + +test( + 'test', + python, + args: [ + 'test.py' + ], + workdir: meson.current_source_dir(), + env: environment({ + 'PYTHONPATH': meson.current_build_dir(), + }) +) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' "old/meson-0.61.3/test cases/cython/3 cython_args/test.py" "new/meson-0.61.4/test cases/cython/3 cython_args/test.py" --- "old/meson-0.61.3/test cases/cython/3 cython_args/test.py" 1970-01-01 01:00:00.000000000 +0100 +++ "new/meson-0.61.4/test cases/cython/3 cython_args/test.py" 2022-03-25 21:12:07.000000000 +0100 @@ -0,0 +1,3 @@ +import cythonargs + +assert cythonargs.test() == 1