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-09-16 13:31:52 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/meson (Old) and /work/SRC/openSUSE:Factory/.meson.new.2083 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "meson" Fri Sep 16 13:31:52 2022 rev:87 rq:1003529 version:0.63.2 Changes: -------- --- /work/SRC/openSUSE:Factory/meson/meson.changes 2022-08-26 09:08:03.221370010 +0200 +++ /work/SRC/openSUSE:Factory/.meson.new.2083/meson.changes 2022-09-16 13:32:02.717211428 +0200 @@ -1,0 +2,11 @@ +Wed Sep 14 12:50:06 UTC 2022 - Dominique Leuenberger <dims...@opensuse.org> + +- Update to version 0.63.2: + + make add_project_dependencies respect build version of include + dirs. + + minstall: do not trample install_mode by rpath fixer. + + fix linker regression for compilers that don't accept LDFLAGS + directly. + + tests/7 gnome: Fix incorrect unref of GResource. + +------------------------------------------------------------------- Old: ---- meson-0.63.1.tar.gz meson-0.63.1.tar.gz.asc New: ---- meson-0.63.2.tar.gz meson-0.63.2.tar.gz.asc ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ meson.spec ++++++ --- /var/tmp/diff_new_pack.hpLURK/_old 2022-09-16 13:32:05.485220370 +0200 +++ /var/tmp/diff_new_pack.hpLURK/_new 2022-09-16 13:32:05.489220383 +0200 @@ -30,7 +30,7 @@ %define _name mesonbuild %{!?vim_data_dir:%global vim_data_dir %{_datadir}/vim} Name: meson%{name_ext} -Version: 0.63.1 +Version: 0.63.2 Release: 0 Summary: Python-based build system License: Apache-2.0 ++++++ meson-0.63.1.tar.gz -> meson-0.63.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/PKG-INFO new/meson-0.63.2/PKG-INFO --- old/meson-0.63.1/PKG-INFO 2022-08-13 11:07:26.212793400 +0200 +++ new/meson-0.63.2/PKG-INFO 2022-09-03 18:33:12.716540600 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: meson -Version: 0.63.1 +Version: 0.63.2 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.63.1/man/meson.1 new/meson-0.63.2/man/meson.1 --- old/meson-0.63.1/man/meson.1 2022-08-13 10:48:46.000000000 +0200 +++ new/meson-0.63.2/man/meson.1 2022-09-03 14:45:43.000000000 +0200 @@ -1,4 +1,4 @@ -.TH MESON "1" "August 2022" "meson 0.63.1" "User Commands" +.TH MESON "1" "September 2022" "meson 0.63.2" "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.63.1/meson.egg-info/PKG-INFO new/meson-0.63.2/meson.egg-info/PKG-INFO --- old/meson-0.63.1/meson.egg-info/PKG-INFO 2022-08-13 11:07:22.000000000 +0200 +++ new/meson-0.63.2/meson.egg-info/PKG-INFO 2022-09-03 18:33:09.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: meson -Version: 0.63.1 +Version: 0.63.2 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.63.1/meson.egg-info/SOURCES.txt new/meson-0.63.2/meson.egg-info/SOURCES.txt --- old/meson-0.63.1/meson.egg-info/SOURCES.txt 2022-08-13 11:07:22.000000000 +0200 +++ new/meson-0.63.2/meson.egg-info/SOURCES.txt 2022-09-03 18:33:09.000000000 +0200 @@ -2991,11 +2991,6 @@ test cases/osx/7 bitcode/vis.h test cases/osx/8 pie/main.c test cases/osx/8 pie/meson.build -test cases/osx/9 global variable ar/libfile.c -test cases/osx/9 global variable ar/libfile2.c -test cases/osx/9 global variable ar/meson.build -test cases/osx/9 global variable ar/nativefile.ini -test cases/osx/9 global variable ar/prog.c test cases/python/1 basic/meson.build test cases/python/1 basic/prog.py test cases/python/1 basic/gluon/__init__.py diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/backend/backends.py new/meson-0.63.2/mesonbuild/backend/backends.py --- old/meson-0.63.1/mesonbuild/backend/backends.py 2022-08-13 10:48:46.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/backend/backends.py 2022-09-03 14:45:43.000000000 +0200 @@ -1044,7 +1044,7 @@ tests. """ result: T.Set[str] = set() - prospectives: T.Set[T.Union[build.BuildTarget, build.CustomTarget, build.CustomTargetIndex]] = set() + prospectives: T.Set[build.BuildTargetTypes] = set() if isinstance(target, build.BuildTarget): prospectives.update(target.get_transitive_link_deps()) # External deps diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/backend/ninjabackend.py new/meson-0.63.2/mesonbuild/backend/ninjabackend.py --- old/meson-0.63.1/mesonbuild/backend/ninjabackend.py 2022-08-13 10:48:46.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/backend/ninjabackend.py 2022-09-03 14:45:43.000000000 +0200 @@ -42,7 +42,7 @@ PGICCompiler, VisualStudioLikeCompiler, ) -from ..linkers import ArLinker, AppleArLinker, RSPFileSyntax +from ..linkers import ArLinker, RSPFileSyntax from ..mesonlib import ( File, LibType, MachineChoice, MesonException, OrderedSet, PerMachine, ProgressBar, quote_arg @@ -2028,7 +2028,7 @@ if static_linker is None: continue rule = 'STATIC_LINKER{}'.format(self.get_rule_suffix(for_machine)) - cmdlist: T.List[T.Union[str, NinjaCommandArg]] = [] + cmdlist = [] args = ['$in'] # FIXME: Must normalize file names with pathlib.Path before writing # them out to fix this properly on Windows. See: @@ -2042,17 +2042,6 @@ cmdlist += static_linker.get_exelist() cmdlist += ['$LINK_ARGS'] cmdlist += NinjaCommandArg.list(static_linker.get_output_args('$out'), Quoting.none) - # The default ar on MacOS (at least through version 12), does not - # add extern'd variables to the symbol table by default, and - # requires that apple's ranlib be called with a special flag - # instead after linking - if isinstance(static_linker, AppleArLinker): - # This is a bit of a hack, but we assume that that we won't need - # an rspfile on MacOS, otherwise the arguments are passed to - # ranlib, not to ar - cmdlist.extend(args) - args = [] - cmdlist.extend(['&&', 'ranlib', '-c', '$out']) description = 'Linking static target $out' if num_pools > 0: pool = 'pool = link_pool' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/build.py new/meson-0.63.2/mesonbuild/build.py --- old/meson-0.63.1/mesonbuild/build.py 2022-08-13 10:48:46.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/build.py 2022-09-03 14:45:43.000000000 +0200 @@ -56,6 +56,8 @@ from .mparser import BaseNode GeneratedTypes = T.Union['CustomTarget', 'CustomTargetIndex', 'GeneratedList'] + LibTypes = T.Union['SharedLibrary', 'StaticLibrary', 'CustomTarget', 'CustomTargetIndex'] + BuildTargetTypes = T.Union['BuildTarget', 'CustomTarget', 'CustomTargetIndex'] pch_kwargs = {'c_pch', 'cpp_pch'} @@ -754,7 +756,7 @@ self.external_deps: T.List[dependencies.Dependency] = [] self.include_dirs: T.List['IncludeDirs'] = [] self.link_language = kwargs.get('link_language') - self.link_targets: T.List[T.Union[SharedLibrary, StaticLibrary, 'CustomTarget', 'CustomTargetIndex']] = [] + self.link_targets: T.List[LibTypes] = [] self.link_whole_targets: T.List[T.Union[StaticLibrary, CustomTarget, CustomTargetIndex]] = [] self.link_depends = [] self.added_deps = set() @@ -1062,11 +1064,11 @@ return ExtractedObjects(self, self.sources, self.generated, self.objects, recursive) - def get_all_link_deps(self) -> 'ImmutableListProtocol[T.Union[BuildTarget, CustomTarget, CustomTargetIndex]]': + def get_all_link_deps(self) -> ImmutableListProtocol[BuildTargetTypes]: return self.get_transitive_link_deps() @lru_cache(maxsize=None) - def get_transitive_link_deps(self) -> 'ImmutableListProtocol[T.Union[BuildTarget, CustomTarget, CustomTargetIndex]]': + def get_transitive_link_deps(self) -> ImmutableListProtocol[BuildTargetTypes]: result: T.List[Target] = [] for i in self.link_targets: result += i.get_all_link_deps() @@ -2398,7 +2400,7 @@ dependencies: T.List[T.Union[BuildTarget, 'CustomTarget']] subproject: str - def flatten_command(self, cmd: T.Sequence[T.Union[str, File, programs.ExternalProgram, 'BuildTarget', 'CustomTarget', 'CustomTargetIndex']]) -> \ + def flatten_command(self, cmd: T.Sequence[T.Union[str, File, programs.ExternalProgram, BuildTargetTypes]]) -> \ T.List[T.Union[str, File, BuildTarget, 'CustomTarget']]: cmd = listify(cmd) final_cmd: T.List[T.Union[str, File, BuildTarget, 'CustomTarget']] = [] @@ -2440,10 +2442,11 @@ subproject: str, environment: environment.Environment, command: T.Sequence[T.Union[ - str, BuildTarget, CustomTarget, CustomTargetIndex, GeneratedList, programs.ExternalProgram, File]], + str, BuildTargetTypes, GeneratedList, + programs.ExternalProgram, File]], sources: T.Sequence[T.Union[ - str, File, BuildTarget, CustomTarget, CustomTargetIndex, - ExtractedObjects, GeneratedList, programs.ExternalProgram]], + str, File, BuildTargetTypes, ExtractedObjects, + GeneratedList, programs.ExternalProgram]], outputs: T.List[str], *, build_always_stale: bool = False, @@ -2629,7 +2632,7 @@ typename = 'run' def __init__(self, name: str, - command: T.Sequence[T.Union[str, File, BuildTarget, 'CustomTarget', 'CustomTargetIndex', programs.ExternalProgram]], + command: T.Sequence[T.Union[str, File, BuildTargetTypes, programs.ExternalProgram]], dependencies: T.Sequence[Target], subdir: str, subproject: str, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/compilers/compilers.py new/meson-0.63.2/mesonbuild/compilers/compilers.py --- old/meson-0.63.1/mesonbuild/compilers/compilers.py 2022-08-13 10:48:46.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/compilers/compilers.py 2022-09-03 14:45:43.000000000 +0200 @@ -690,10 +690,14 @@ """ raise EnvironmentException('Language %s does not support function checks.' % self.get_display_language()) - def unix_args_to_native(self, args: T.List[str]) -> T.List[str]: + @classmethod + def _unix_args_to_native(cls, args: T.List[str], info: 'MachineInfo') -> T.List[str]: "Always returns a copy that can be independently mutated" return args.copy() + def unix_args_to_native(self, args: T.List[str]) -> T.List[str]: + return self._unix_args_to_native(args, self.info) + @classmethod def native_args_to_unix(cls, args: T.List[str]) -> T.List[str]: "Always returns a copy that can be independently mutated" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/compilers/d.py new/meson-0.63.2/mesonbuild/compilers/d.py --- old/meson-0.63.1/mesonbuild/compilers/d.py 2022-08-13 10:48:46.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/compilers/d.py 2022-09-03 14:45:43.000000000 +0200 @@ -281,7 +281,8 @@ return super().build_rpath_args( env, build_dir, from_dir, rpath_paths, build_rpath, install_rpath) - def _translate_args_to_nongnu(self, args: T.List[str]) -> T.List[str]: + @classmethod + def _translate_args_to_nongnu(cls, args: T.List[str], info: 'MachineInfo', link_id: str) -> T.List[str]: # Translate common arguments to flags the LDC/DMD compilers # can understand. # The flags might have been added by pkg-config files, @@ -296,10 +297,10 @@ for arg in args: # Translate OS specific arguments first. osargs = [] # type: T.List[str] - if self.info.is_windows(): - osargs = self.translate_arg_to_windows(arg) - elif self.info.is_darwin(): - osargs = self._translate_arg_to_osx(arg) + if info.is_windows(): + osargs = cls.translate_arg_to_windows(arg) + elif info.is_darwin(): + osargs = cls._translate_arg_to_osx(arg) if osargs: dcargs.extend(osargs) continue @@ -384,7 +385,7 @@ continue # linker flag such as -L=/DEBUG must pass through - if self.linker.id == 'link' and self.info.is_windows() and suffix.startswith('/'): + if info.is_windows() and link_id == 'link' and suffix.startswith('/'): dcargs.append(arg) continue @@ -438,6 +439,10 @@ args.append('-L=' + arg) return args + @classmethod + def _unix_args_to_native(cls, args: T.List[str], info: 'MachineInfo', link_id: str = '') -> T.List[str]: + return cls._translate_args_to_nongnu(args, info, link_id) + def get_debug_args(self, is_debug: bool) -> T.List[str]: ddebug_args = [] if is_debug: @@ -897,7 +902,7 @@ return self._get_crt_args(crt_val, buildtype) def unix_args_to_native(self, args: T.List[str]) -> T.List[str]: - return self._translate_args_to_nongnu(args) + return self._unix_args_to_native(args, self.info, self.linker.id) def get_optimization_args(self, optimization_level: str) -> T.List[str]: return ldc_optimization_args[optimization_level] @@ -986,7 +991,7 @@ return self._get_crt_args(crt_val, buildtype) def unix_args_to_native(self, args: T.List[str]) -> T.List[str]: - return self._translate_args_to_nongnu(args) + return self._unix_args_to_native(args, self.info, self.linker.id) def get_optimization_args(self, optimization_level: str) -> T.List[str]: return dmd_optimization_args[optimization_level] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/compilers/detect.py new/meson-0.63.2/mesonbuild/compilers/detect.py --- old/meson-0.63.1/mesonbuild/compilers/detect.py 2022-08-13 10:48:46.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/compilers/detect.py 2022-09-03 14:45:43.000000000 +0200 @@ -24,7 +24,6 @@ guess_win_linker, guess_nix_linker, AIXArLinker, - AppleArLinker, ArLinker, ArmarLinker, ArmClangDynamicLinker, @@ -345,7 +344,7 @@ if p.returncode == 0: return ArLinker(compiler.for_machine, linker) if p.returncode == 1 and err.startswith('usage'): # OSX - return AppleArLinker(compiler.for_machine, linker) + return ArLinker(compiler.for_machine, linker) if p.returncode == 1 and err.startswith('Usage'): # AIX return AIXArLinker(linker) if p.returncode == 1 and err.startswith('ar: bad option: --'): # Solaris diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/compilers/mixins/ccrx.py new/meson-0.63.2/mesonbuild/compilers/mixins/ccrx.py --- old/meson-0.63.1/mesonbuild/compilers/mixins/ccrx.py 2022-06-19 21:10:06.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/compilers/mixins/ccrx.py 2022-09-03 14:45:43.000000000 +0200 @@ -11,6 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. +from __future__ import annotations """Representations specific to the Renesas CC-RX compiler family.""" @@ -20,6 +21,7 @@ from ...mesonlib import EnvironmentException if T.TYPE_CHECKING: + from ...envconfig import MachineInfo from ...environment import Environment from ...compilers.compilers import Compiler else: @@ -105,7 +107,7 @@ return ccrx_debug_args[is_debug] @classmethod - def unix_args_to_native(cls, args: T.List[str]) -> T.List[str]: + def _unix_args_to_native(cls, args: T.List[str], info: 'MachineInfo') -> T.List[str]: result = [] for i in args: if i.startswith('-D'): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/compilers/mixins/compcert.py new/meson-0.63.2/mesonbuild/compilers/mixins/compcert.py --- old/meson-0.63.1/mesonbuild/compilers/mixins/compcert.py 2022-06-19 21:10:06.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/compilers/mixins/compcert.py 2022-09-03 14:45:43.000000000 +0200 @@ -11,6 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. +from __future__ import annotations """Representations specific to the CompCert C compiler family.""" @@ -19,6 +20,7 @@ import typing as T if T.TYPE_CHECKING: + from envconfig import MachineInfo from ...environment import Environment from ...compilers.compilers import Compiler else: @@ -87,7 +89,8 @@ def get_pch_use_args(self, pch_dir: str, header: str) -> T.List[str]: return [] - def unix_args_to_native(self, args: T.List[str]) -> T.List[str]: + @classmethod + def _unix_args_to_native(cls, args: T.List[str], info: 'MachineInfo') -> T.List[str]: "Always returns a copy that can be independently mutated" patched_args = [] # type: T.List[str] for arg in args: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/compilers/mixins/ti.py new/meson-0.63.2/mesonbuild/compilers/mixins/ti.py --- old/meson-0.63.1/mesonbuild/compilers/mixins/ti.py 2022-06-19 21:10:06.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/compilers/mixins/ti.py 2022-09-03 14:45:43.000000000 +0200 @@ -11,6 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. +from __future__ import annotations """Representations specific to the Texas Instruments compiler family.""" @@ -20,6 +21,7 @@ from ...mesonlib import EnvironmentException if T.TYPE_CHECKING: + from ...envconfig import MachineInfo from ...environment import Environment from ...compilers.compilers import Compiler else: @@ -120,7 +122,7 @@ return ['-I=' + path] @classmethod - def unix_args_to_native(cls, args: T.List[str]) -> T.List[str]: + def _unix_args_to_native(cls, args: T.List[str], info: 'MachineInfo') -> T.List[str]: result = [] for i in args: if i.startswith('-D'): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/compilers/mixins/xc16.py new/meson-0.63.2/mesonbuild/compilers/mixins/xc16.py --- old/meson-0.63.1/mesonbuild/compilers/mixins/xc16.py 2022-06-19 21:10:06.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/compilers/mixins/xc16.py 2022-09-03 14:45:43.000000000 +0200 @@ -11,6 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. +from __future__ import annotations """Representations specific to the Microchip XC16 C compiler family.""" @@ -20,6 +21,7 @@ from ...mesonlib import EnvironmentException if T.TYPE_CHECKING: + from ...envconfig import MachineInfo from ...environment import Environment from ...compilers.compilers import Compiler else: @@ -104,7 +106,7 @@ return xc16_debug_args[is_debug] @classmethod - def unix_args_to_native(cls, args: T.List[str]) -> T.List[str]: + def _unix_args_to_native(cls, args: T.List[str], info: 'MachineInfo') -> T.List[str]: result = [] for i in args: if i.startswith('-D'): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/coredata.py new/meson-0.63.2/mesonbuild/coredata.py --- old/meson-0.63.1/mesonbuild/coredata.py 2022-08-13 10:48:46.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/coredata.py 2022-09-03 14:45:43.000000000 +0200 @@ -53,7 +53,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.63.1' +version = '0.63.2' backendlist = ['ninja', 'vs', 'vs2010', 'vs2012', 'vs2013', 'vs2015', 'vs2017', 'vs2019', 'vs2022', 'xcode'] @@ -757,10 +757,10 @@ raise type(e)(('Validation failed for option %s: ' % option_name) + str(e)) \ .with_traceback(sys.exc_info()[2]) - def get_external_args(self, for_machine: MachineChoice, lang: str) -> T.Union[str, T.List[str]]: + def get_external_args(self, for_machine: MachineChoice, lang: str) -> T.List[str]: return self.options[OptionKey('args', machine=for_machine, lang=lang)].value - def get_external_link_args(self, for_machine: MachineChoice, lang: str) -> T.Union[str, T.List[str]]: + def get_external_link_args(self, for_machine: MachineChoice, lang: str) -> T.List[str]: return self.options[OptionKey('link_args', machine=for_machine, lang=lang)].value def update_project_options(self, options: 'MutableKeyedOptionDictType') -> None: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/dependencies/base.py new/meson-0.63.2/mesonbuild/dependencies/base.py --- old/meson-0.63.1/mesonbuild/dependencies/base.py 2022-08-13 10:48:46.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/dependencies/base.py 2022-09-03 14:45:43.000000000 +0200 @@ -36,7 +36,7 @@ from ..environment import Environment from ..interpreterbase import FeatureCheckBase from ..build import ( - CustomTarget, IncludeDirs, CustomTargetIndex, SharedLibrary, + CustomTarget, IncludeDirs, CustomTargetIndex, LibTypes, StaticLibrary ) from ..mesonlib import FileOrString @@ -235,7 +235,7 @@ class InternalDependency(Dependency): def __init__(self, version: str, incdirs: T.List['IncludeDirs'], compile_args: T.List[str], link_args: T.List[str], - libraries: T.List[T.Union[SharedLibrary, StaticLibrary, CustomTarget, CustomTargetIndex]], + libraries: T.List[LibTypes], whole_libraries: T.List[T.Union[StaticLibrary, CustomTarget, CustomTargetIndex]], sources: T.Sequence[T.Union[FileOrString, CustomTarget, StructuredSources]], ext_deps: T.List[Dependency], variables: T.Dict[str, str], diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/interpreter/interpreter.py new/meson-0.63.2/mesonbuild/interpreter/interpreter.py --- old/meson-0.63.1/mesonbuild/interpreter/interpreter.py 2022-08-13 10:48:46.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/interpreter/interpreter.py 2022-09-03 14:45:43.000000000 +0200 @@ -2730,7 +2730,7 @@ for i in d.get_include_dirs(): for lang in kwargs['language']: comp = self.coredata.compilers[for_machine][lang] - for idir in i.to_string_list(self.environment.get_source_dir()): + for idir in i.to_string_list(self.environment.get_source_dir(), self.environment.get_build_dir()): compile_args.extend(comp.get_include_args(idir, system_incdir)) self._add_project_arguments(node, self.build.projects_args[for_machine], compile_args, kwargs) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/linkers/__init__.py new/meson-0.63.2/mesonbuild/linkers/__init__.py --- old/meson-0.63.1/mesonbuild/linkers/__init__.py 2022-08-13 10:48:38.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/linkers/__init__.py 2022-09-03 14:45:43.000000000 +0200 @@ -24,7 +24,6 @@ VisualStudioLikeLinker, VisualStudioLinker, IntelVisualStudioLinker, - AppleArLinker, ArLinker, ArmarLinker, DLinker, @@ -94,7 +93,6 @@ 'C2000Linker', 'TILinker', 'AIXArLinker', - 'AppleArLinker', 'PGIStaticLinker', 'NvidiaHPC_StaticLinker', diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/linkers/detect.py new/meson-0.63.2/mesonbuild/linkers/detect.py --- old/meson-0.63.1/mesonbuild/linkers/detect.py 2022-08-13 10:48:38.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/linkers/detect.py 2022-09-03 14:45:43.000000000 +0200 @@ -140,7 +140,9 @@ """ env.coredata.add_lang_args(comp_class.language, comp_class, for_machine, env) extra_args = extra_args or [] - extra_args += env.coredata.get_external_link_args(for_machine, comp_class.language) + + ldflags = env.coredata.get_external_link_args(for_machine, comp_class.language) + extra_args += comp_class._unix_args_to_native(ldflags, env.machines[for_machine]) if isinstance(comp_class.LINKER_PREFIX, str): check_args = [comp_class.LINKER_PREFIX + '--version'] + extra_args diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/linkers/linkers.py new/meson-0.63.2/mesonbuild/linkers/linkers.py --- old/meson-0.63.1/mesonbuild/linkers/linkers.py 2022-08-13 10:48:38.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/linkers/linkers.py 2022-09-03 14:45:43.000000000 +0200 @@ -215,13 +215,6 @@ return self.std_args -class AppleArLinker(ArLinker): - - # mostly this is used to determine that we need to call ranlib - - id = 'applear' - - class ArmarLinker(ArLikeLinker): id = 'armar' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/minstall.py new/meson-0.63.2/mesonbuild/minstall.py --- old/meson-0.63.1/mesonbuild/minstall.py 2022-06-19 21:10:14.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/minstall.py 2022-09-03 14:45:43.000000000 +0200 @@ -693,7 +693,6 @@ raise MesonException(f'File {fname!r} could not be found') elif os.path.isfile(fname): file_copied = self.do_copyfile(fname, outname, makedirs=(dm, outdir)) - self.set_mode(outname, install_mode, d.install_umask) if should_strip and d.strip_bin is not None: if fname.endswith('.jar'): self.log('Not stripping jar target: {}'.format(os.path.basename(fname))) @@ -723,6 +722,8 @@ pass else: raise + # file mode needs to be set last, after strip/depfixer editing + self.set_mode(outname, install_mode, d.install_umask) def rebuild_all(wd: str) -> bool: if not (Path(wd) / 'build.ninja').is_file(): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/modules/gnome.py new/meson-0.63.2/mesonbuild/modules/gnome.py --- old/meson-0.63.1/mesonbuild/modules/gnome.py 2022-08-13 10:48:46.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/modules/gnome.py 2022-09-03 14:45:43.000000000 +0200 @@ -2054,8 +2054,8 @@ ofile.write(package + '\n') return build.Data([mesonlib.File(True, outdir, fname)], install_dir, install_dir, mesonlib.FileMode(), state.subproject) - def _get_vapi_link_with(self, target: build.CustomTarget) -> T.List[T.Union[build.CustomTarget, build.CustomTargetIndex, build.SharedLibrary, build.StaticLibrary]]: - link_with: T.List[T.Union[build.StaticLibrary, build.SharedLibrary, build.CustomTarget, build.CustomTargetIndex]] = [] + def _get_vapi_link_with(self, target: build.CustomTarget) -> T.List[build.LibTypes]: + link_with: T.List[build.LibTypes] = [] for dep in target.get_target_dependencies(): if isinstance(dep, build.SharedLibrary): link_with.append(dep) @@ -2095,7 +2095,7 @@ inputs = kwargs['sources'] - link_with: T.List[T.Union[build.SharedLibrary, build.StaticLibrary, build.CustomTarget, build.CustomTargetIndex]] = [] + link_with: T.List[build.LibTypes] = [] for i in inputs: if isinstance(i, str): cmd.append(os.path.join(source_dir, i)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/meson-0.63.1/mesonbuild/modules/python.py new/meson-0.63.2/mesonbuild/modules/python.py --- old/meson-0.63.1/mesonbuild/modules/python.py 2022-08-13 10:48:46.000000000 +0200 +++ new/meson-0.63.2/mesonbuild/modules/python.py 2022-09-03 14:45:43.000000000 +0200 @@ -753,22 +753,10 @@ found_modules: T.List[str] = [] missing_modules: T.List[str] = [] if python.found() and want_modules: - # Python 3.8.x or later require add_dll_directory() to be called on Windows if - # the needed modules require external DLLs that are not bundled with the modules. - # Simplify things by calling add_dll_directory() on the paths in %PATH% - add_paths_cmd = '' - if hasattr(os, 'add_dll_directory'): - add_paths_cmds = [] - paths = os.environ['PATH'].split(os.pathsep) - for path in paths: - if path != '' and os.path.isdir(path): - add_paths_cmds.append(f'os.add_dll_directory({path!r})') - add_paths_cmd = 'import os;' + ';'.join(reversed(add_paths_cmds)) + ';' - for mod in want_modules: p, *_ = mesonlib.Popen_safe( python.command + - ['-c', f'{add_paths_cmd}import {mod}']) + ['-c', f'import {mod}']) if p.returncode != 0: missing_modules.append(mod) else: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' "old/meson-0.63.1/test cases/common/190 install_mode/meson.build" "new/meson-0.63.2/test cases/common/190 install_mode/meson.build" --- "old/meson-0.63.1/test cases/common/190 install_mode/meson.build" 2022-04-21 17:12:36.000000000 +0200 +++ "new/meson-0.63.2/test cases/common/190 install_mode/meson.build" 2022-09-03 14:45:43.000000000 +0200 @@ -51,6 +51,7 @@ executable('trivialprog', sources : 'trivial.c', install : true, + build_rpath: meson.current_build_dir(), install_mode : ['rwxr-sr-x', 'root', 'root']) # test install_mode in static_library diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' "old/meson-0.63.1/test cases/frameworks/7 gnome/resources/generated-main.c" "new/meson-0.63.2/test cases/frameworks/7 gnome/resources/generated-main.c" --- "old/meson-0.63.1/test cases/frameworks/7 gnome/resources/generated-main.c" 2020-08-15 18:27:05.000000000 +0200 +++ "new/meson-0.63.2/test cases/frameworks/7 gnome/resources/generated-main.c" 2022-09-03 18:31:18.000000000 +0200 @@ -6,7 +6,7 @@ #define EXPECTED "This is a generated resource.\n" int main(int argc, char **argv) { - GResource *res = generated_resources_get_resource(); + generated_resources_get_resource(); GError *err = NULL; GBytes *data = g_resources_lookup_data("/com/example/myprog/res3.txt", G_RESOURCE_LOOKUP_FLAGS_NONE, &err); @@ -22,6 +22,5 @@ } fprintf(stdout, "All ok.\n"); g_bytes_unref(data); - g_resource_unref(res); return 0; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' "old/meson-0.63.1/test cases/frameworks/7 gnome/resources/simple-main.c" "new/meson-0.63.2/test cases/frameworks/7 gnome/resources/simple-main.c" --- "old/meson-0.63.1/test cases/frameworks/7 gnome/resources/simple-main.c" 2020-08-15 18:27:05.000000000 +0200 +++ "new/meson-0.63.2/test cases/frameworks/7 gnome/resources/simple-main.c" 2022-09-03 18:31:18.000000000 +0200 @@ -6,7 +6,8 @@ #define EXPECTED "This is a resource.\n" int main(int argc, char **argv) { - GResource *res = simple_resources_get_resource(); + simple_resources_get_resource(); + GError *err = NULL; GBytes *data = g_resources_lookup_data("/com/example/myprog/res1.txt", G_RESOURCE_LOOKUP_FLAGS_NONE, &err); @@ -22,6 +23,5 @@ } fprintf(stdout, "All ok.\n"); g_bytes_unref(data); - g_resource_unref(res); return 0; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' "old/meson-0.63.1/test cases/osx/9 global variable ar/libfile.c" "new/meson-0.63.2/test cases/osx/9 global variable ar/libfile.c" --- "old/meson-0.63.1/test cases/osx/9 global variable ar/libfile.c" 2022-08-13 10:48:38.000000000 +0200 +++ "new/meson-0.63.2/test cases/osx/9 global variable ar/libfile.c" 1970-01-01 01:00:00.000000000 +0100 @@ -1,9 +0,0 @@ -// Source: https://lists.gnu.org/archive/html/libtool/2002-07/msg00025.html - -#include <stdio.h> - -extern int l2; -void l1(void) -{ - printf("l1 %d\n", l2); -} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' "old/meson-0.63.1/test cases/osx/9 global variable ar/libfile2.c" "new/meson-0.63.2/test cases/osx/9 global variable ar/libfile2.c" --- "old/meson-0.63.1/test cases/osx/9 global variable ar/libfile2.c" 2022-08-13 10:48:38.000000000 +0200 +++ "new/meson-0.63.2/test cases/osx/9 global variable ar/libfile2.c" 1970-01-01 01:00:00.000000000 +0100 @@ -1,7 +0,0 @@ -// Source: https://lists.gnu.org/archive/html/libtool/2002-07/msg00025.html - -int l2; -void l2_func(void) -{ - l2 = 77; -} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' "old/meson-0.63.1/test cases/osx/9 global variable ar/meson.build" "new/meson-0.63.2/test cases/osx/9 global variable ar/meson.build" --- "old/meson-0.63.1/test cases/osx/9 global variable ar/meson.build" 2022-08-13 10:48:38.000000000 +0200 +++ "new/meson-0.63.2/test cases/osx/9 global variable ar/meson.build" 1970-01-01 01:00:00.000000000 +0100 @@ -1,6 +0,0 @@ -# Source: https://lists.gnu.org/archive/html/libtool/2002-07/msg00025.html - -project('global variable test', 'c') - -lib = static_library('mylib', 'libfile.c', 'libfile2.c') -test('global variable', executable('prog', 'prog.c', link_with: lib)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' "old/meson-0.63.1/test cases/osx/9 global variable ar/nativefile.ini" "new/meson-0.63.2/test cases/osx/9 global variable ar/nativefile.ini" --- "old/meson-0.63.1/test cases/osx/9 global variable ar/nativefile.ini" 2022-08-13 10:48:38.000000000 +0200 +++ "new/meson-0.63.2/test cases/osx/9 global variable ar/nativefile.ini" 1970-01-01 01:00:00.000000000 +0100 @@ -1,2 +0,0 @@ -[binaries] -ar = 'ar' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' "old/meson-0.63.1/test cases/osx/9 global variable ar/prog.c" "new/meson-0.63.2/test cases/osx/9 global variable ar/prog.c" --- "old/meson-0.63.1/test cases/osx/9 global variable ar/prog.c" 2022-08-13 10:48:38.000000000 +0200 +++ "new/meson-0.63.2/test cases/osx/9 global variable ar/prog.c" 1970-01-01 01:00:00.000000000 +0100 @@ -1,7 +0,0 @@ -// Source: https://lists.gnu.org/archive/html/libtool/2002-07/msg00025.html - -extern void l1(void); -int main(void) -{ - l1(); -}