From 1ae7a07fafd11dca9fea3ecf4bab9ffd4543c195d6697c8e4d29c33cbe30c5f0 Mon Sep 17 00:00:00 2001 From: Alexei Sorokin Date: Fri, 28 Sep 2018 15:49:38 +0000 Subject: [PATCH] - Update to version 0.48.0. OBS-URL: https://build.opensuse.org/package/show/devel:tools:building/meson?expand=0&rev=109 --- meson-0.47.2.tar.gz | 3 - meson-0.47.2.tar.gz.asc | 16 --- meson-0.48.0.tar.gz | 3 + meson-0.48.0.tar.gz.asc | 16 +++ meson-fix-gcc48.patch | 36 +++---- meson-restore-python3.4.patch | 183 ++++++++++++++++++++++++---------- meson-suse-ify-macros.patch | 25 ++--- meson-testsuite.changes | 11 ++ meson-testsuite.spec | 23 ++--- meson.changes | 11 ++ meson.spec | 23 ++--- 11 files changed, 221 insertions(+), 129 deletions(-) delete mode 100644 meson-0.47.2.tar.gz delete mode 100644 meson-0.47.2.tar.gz.asc create mode 100644 meson-0.48.0.tar.gz create mode 100644 meson-0.48.0.tar.gz.asc diff --git a/meson-0.47.2.tar.gz b/meson-0.47.2.tar.gz deleted file mode 100644 index 46bb84f..0000000 --- a/meson-0.47.2.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:92d8afd921751261e36151643464efd3394162f69efbe8cd53e0a66b1cf395eb -size 1267981 diff --git a/meson-0.47.2.tar.gz.asc b/meson-0.47.2.tar.gz.asc deleted file mode 100644 index 7922557..0000000 --- a/meson-0.47.2.tar.gz.asc +++ /dev/null @@ -1,16 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iQIzBAABCgAdFiEElRgfTu0U/fTkG1GNO/RpO/7rlCgFAluBEusACgkQO/RpO/7r -lCjyFhAAri6uNRpBQ963TaJo8NX7KfpS8SFU3Bt+HS1NKF69j3IKP/+097GOQffI -RoGs07zSJ3IKhico9tB64ToFlk7fJbvUITiSP0NDSkGVnVaK6Fcn8/FDM937I+8N -R2P5uLS4xMw0/VqiFAosysYFuWeIkUNdltW/PM3J4aXKNwi2MnGukUnFNMKHH/3O -sIaHAKVuYSIM+CJSXZKumjT/arw3qAvSNz/Kmo8MsGG4+pYyQDLZ16evDTfxELKW -4MvUSpaspQi7X/J78HIyakUfc2DiVYV9pGEsMvJ4+1hg6IwiXjRmzTpYY3q3LDU4 -mJPC5JovdbvS3lByE364ovOBYLLn8D0pP8jALWARzYq2E2Ue/+ATyiELw8ZQ21yw -GMo5Bh0efZ7TkL8kC++zpbJayN13IdiRT6CfpUh5Dew2QK+a3fwnBr/1zWGrHB4M -7uuZtSzq5H8g8LD/CqwUf1ohdAY4k4MVPuEdVvoWzzAiqYIhTXIFHuaYJW5cVVtn -vsGknWUuvsc5e+Cp/qwac+LjKJA308/k+aaAhxAP7oFDgWT6+VrTitIn7TWzFS+p -mtVwsQpKFT0PMuAFYnWLJCGpeAmReD5B1K0e4ULYSSl4MI9AysV8oIPQtmqeyi9z -1AeN64X0e55qBVptIa4IuT434bZe+RkTtnsvwwzLd86dMbbWACo= -=suvK ------END PGP SIGNATURE----- diff --git a/meson-0.48.0.tar.gz b/meson-0.48.0.tar.gz new file mode 100644 index 0000000..95d7c09 --- /dev/null +++ b/meson-0.48.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:982937ba5b380abe13f3a0c4dff944dd19d08b72870e3b039f5037c91f82835f +size 1307245 diff --git a/meson-0.48.0.tar.gz.asc b/meson-0.48.0.tar.gz.asc new file mode 100644 index 0000000..1bd58f7 --- /dev/null +++ b/meson-0.48.0.tar.gz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCgAdFiEElRgfTu0U/fTkG1GNO/RpO/7rlCgFAlumorcACgkQO/RpO/7r +lChMPA//Y8IrvqHSNZNhMi1VO3ey2eUd4vkmqaqtk7s/YSZ8MobNQf6SK+svwMFd +d8YmSlHAuf19u22W1EBy9tNOy+AbkB6iNfKxDPPA3ksGPD2twXjSsoymQeuVEiRG +PS0sDH67QgGoWqQ/++KorOlbaGs1MNU7oM55NgJFNitNDKtNw2u2SckybGdSUOlT +LEPm3OQxB89MUgkyfticScfRJqI5XHjDGrjBrbNqt++5wMzDyKpNzz3yryUKDzk3 +QyXWlNEtHwKn6J6pEtAuIQTXJwMzml230C3YCaxyFDNDorxSHMinSV9RoMzyN76S +kIC2gFtkYdhdRWqBgF5dv/t6ExZdQ05dA4C6wzL4bWNJiQOmELXzxhGkBcs6Cl5j +vJZ3cDsE4gIkjSQdHOvRr6/9vN+BGaZDD4pP1kZ2VaVF82dftMWEV6gpxiPuyJMz +2tVz+zZQONQcj7JR8+Vi8jm2s3dCyUfAlOImfSLkIQvOEIAKSowh5xGdMp6GFpnA +J3LIzsQqxozazHqxDePSpkebODo9HfTHnfb5Ou8Dh/hOGu2PddBx/iIeTtzFrdji +P1mFhb5pq/b8L+3N96DehyXgJjCk4h8Ojjur+BDD8CSJCoM5gS4lWD0t4fiOVceX +YQp14oIFGtrnq3utaq6jPNbF2nW7Hl40sXniVZ+V2hCdZjKwoeE= +=ErKv +-----END PGP SIGNATURE----- diff --git a/meson-fix-gcc48.patch b/meson-fix-gcc48.patch index 6137d0b..e590c35 100644 --- a/meson-fix-gcc48.patch +++ b/meson-fix-gcc48.patch @@ -1,17 +1,17 @@ --- a/mesonbuild/compilers/cpp.py +++ b/mesonbuild/compilers/cpp.py -@@ -80,8 +80,8 @@ class ClangCPPCompiler(ClangCompiler, CP +@@ -137,8 +137,8 @@ class ClangCPPCompiler(ClangCompiler, CP def get_options(self): opts = CPPCompiler.get_options(self) opts.update({'cpp_std': coredata.UserComboOption('cpp_std', 'C++ language standard to use', -- ['none', 'c++98', 'c++03', 'c++11', 'c++14', 'c++17', 'c++1z', -- 'gnu++11', 'gnu++14', 'gnu++17', 'gnu++1z'], -+ ['none', 'c++98', 'c++03', 'c++11', 'c++1y', 'c++14', 'c++17', 'c++1z', -+ 'gnu++11', 'gnu++1y', 'gnu++14', 'gnu++17', 'gnu++1z'], +- ['none', 'c++98', 'c++03', 'c++11', 'c++14', 'c++17', 'c++1z', 'c++2a', +- 'gnu++11', 'gnu++14', 'gnu++17', 'gnu++1z', 'gnu++2a'], ++ ['none', 'c++98', 'c++03', 'c++11', 'c++1y', 'c++14', 'c++17', 'c++1z', 'c++2a', ++ 'gnu++11', 'gnu++1y', 'gnu++14', 'gnu++17', 'gnu++1z', 'gnu++2a'], 'none')}) return opts -@@ -111,8 +111,8 @@ class ArmclangCPPCompiler(ArmclangCompil +@@ -168,8 +168,8 @@ class ArmclangCPPCompiler(ArmclangCompil def get_options(self): opts = CPPCompiler.get_options(self) opts.update({'cpp_std': coredata.UserComboOption('cpp_std', 'C++ language standard to use', @@ -22,24 +22,24 @@ 'none')}) return opts -@@ -137,10 +137,12 @@ class GnuCPPCompiler(GnuCompiler, CPPCom +@@ -194,10 +194,12 @@ class GnuCPPCompiler(GnuCompiler, CPPCom '3': default_warn_args + ['-Wextra', '-Wpedantic']} def get_options(self): + cpp_stds = ['c++98', 'c++03', 'c++11', 'c++1y', 'gnu++11', 'gnu++1y'] + if version_compare(self.version, '>=5.0.0'): -+ cpp_stds += ['c++14', 'c++17', 'c++1z', 'gnu++14', 'gnu++17', 'gnu++1z'] ++ cpp_stds += ['c++14', 'c++17', 'c++1z', 'c++2a', 'gnu++14', 'gnu++17', 'gnu++1z', 'gnu++2a'] opts = CPPCompiler.get_options(self) opts.update({'cpp_std': coredata.UserComboOption('cpp_std', 'C++ language standard to use', -- ['none', 'c++98', 'c++03', 'c++11', 'c++14', 'c++17', 'c++1z', -- 'gnu++03', 'gnu++11', 'gnu++14', 'gnu++17', 'gnu++1z'], +- ['none', 'c++98', 'c++03', 'c++11', 'c++14', 'c++17', 'c++1z', 'c++2a', +- 'gnu++03', 'gnu++11', 'gnu++14', 'gnu++17', 'gnu++1z', 'gnu++2a'], + ['none'] + cpp_stds, 'none'), 'cpp_debugstl': coredata.UserBooleanOption('cpp_debugstl', 'STL debug mode', -@@ -211,7 +213,7 @@ class IntelCPPCompiler(IntelCompiler, CP - c_stds = [] - g_stds = ['gnu++98'] +@@ -271,7 +273,7 @@ class IntelCPPCompiler(IntelCompiler, CP + c_stds = ['c++98', 'c++03'] + g_stds = ['gnu++98', 'gnu++03'] if version_compare(self.version, '>=15.0.0'): - c_stds += ['c++11', 'c++14'] + c_stds += ['c++11', 'c++1y', 'c++14'] @@ -48,7 +48,7 @@ c_stds += ['c++17'] --- a/mesonbuild/minit.py +++ b/mesonbuild/minit.py -@@ -149,7 +149,7 @@ int main(int argc, char **argv) {{ +@@ -143,7 +143,7 @@ int main(int argc, char **argv) {{ hello_cpp_meson_template = '''project('{project_name}', 'cpp', version : '{version}', default_options : ['warning_level=3', @@ -57,7 +57,7 @@ exe = executable('{exe_name}', '{source_name}', install : true) -@@ -220,7 +220,7 @@ int main(int argc, char **argv) {{ +@@ -214,7 +214,7 @@ int main(int argc, char **argv) {{ lib_cpp_meson_template = '''project('{project_name}', 'cpp', version : '{version}', @@ -66,7 +66,7 @@ # These arguments are only used to build the shared library # not the executables that use the library. -@@ -416,7 +416,7 @@ def create_meson_build(options): +@@ -404,7 +404,7 @@ def create_meson_build(options): default_options = ['warning_level=3'] if options.language == 'cpp': # This shows how to set this very common option. @@ -75,8 +75,8 @@ # If we get a meson.build autoformatter one day, this code could # be simplified quite a bit. formatted_default_options = ', '.join("'{}'".format(x) for x in default_options) ---- "a/test cases/unit/16 prebuilt shared/patron.c" -+++ "b/test cases/unit/16 prebuilt shared/patron.c" +--- "a/test cases/unit/17 prebuilt shared/patron.c" ++++ "b/test cases/unit/17 prebuilt shared/patron.c" @@ -5,4 +5,5 @@ int main(int argc, char **argv) { printf("You are standing outside the Great Library of Alexandria.\n"); printf("You decide to go inside.\n\n"); diff --git a/meson-restore-python3.4.patch b/meson-restore-python3.4.patch index ef2e8aa..52621ab 100644 --- a/meson-restore-python3.4.patch +++ b/meson-restore-python3.4.patch @@ -1,15 +1,15 @@ --- a/mesonbuild/backend/ninjabackend.py +++ b/mesonbuild/backend/ninjabackend.py -@@ -31,7 +31,7 @@ from .. import compilers - from ..compilers import CompilerArgs, CCompiler, get_macos_dylib_install_name +@@ -32,7 +32,7 @@ from .. import compilers + from ..compilers import CompilerArgs, CCompiler from ..linkers import ArLinker from ..mesonlib import File, MesonException, OrderedSet -from ..mesonlib import get_compiler_for_source, has_path_sep +from ..mesonlib import get_compiler_for_source, has_path_sep, commonpath - from .backends import CleanTrees, InstallData, TargetInstallData + from .backends import CleanTrees from ..build import InvalidArguments -@@ -1209,8 +1209,8 @@ int dummy; +@@ -1011,8 +1011,8 @@ int dummy; # Check if the vala file is in a subdir of --basedir abs_srcbasedir = os.path.join(self.environment.get_source_dir(), target.get_subdir()) abs_vala_file = os.path.join(self.environment.get_build_dir(), vala_file) @@ -22,16 +22,16 @@ path_to_target = os.path.join(self.build_to_src, target.get_subdir()) --- a/mesonbuild/coredata.py +++ b/mesonbuild/coredata.py -@@ -17,7 +17,7 @@ import pickle, os, uuid, shlex - import sys +@@ -18,7 +18,7 @@ import sys from pathlib import PurePath from collections import OrderedDict --from .mesonlib import MesonException -+from .mesonlib import MesonException, commonpath - from .mesonlib import default_libdir, default_libexecdir, default_prefix + from .mesonlib import MesonException +-from .mesonlib import default_libdir, default_libexecdir, default_prefix ++from .mesonlib import default_libdir, default_libexecdir, default_prefix, commonpath + from .wrap import WrapMode import ast import argparse -@@ -300,7 +300,7 @@ class CoreData: +@@ -302,7 +302,7 @@ class CoreData: # commonpath will always return a path in the native format, so we # must use pathlib.PurePath to do the same conversion before # comparing. @@ -40,11 +40,44 @@ m = 'The value of the {!r} option is {!r} which must be a ' \ 'subdir of the prefix {!r}.\nNote that if you pass a ' \ 'relative path, it is assumed to be a subdir of prefix.' +--- a/mesonbuild/interpreterbase.py ++++ b/mesonbuild/interpreterbase.py +@@ -574,7 +574,9 @@ The result of this is undefined and will + + if cur.operation == 'add': + if isinstance(l, dict) and isinstance(r, dict): +- return {**l, **r} ++ ret = l.copy() ++ ret.update(r) ++ return ret + try: + return l + r + except Exception as e: +@@ -661,7 +662,8 @@ The result of this is undefined and will + elif isinstance(old_variable, dict): + if not isinstance(addition, dict): + raise InvalidArguments('The += operator requires a dict on the right hand side if the variable on the left is a dict') +- new_value = {**old_variable, **addition} ++ new_value = old_variable.copy() ++ new_value.update(addition) + # Add other data types here. + else: + raise InvalidArguments('The += operator currently only works with arrays, dicts, strings or ints ') --- a/mesonbuild/mesonlib.py +++ b/mesonbuild/mesonlib.py -@@ -1069,6 +1069,30 @@ def detect_subprojects(spdir_name, curre - def get_error_location_string(fname, lineno): - return '{}:{}:'.format(fname, lineno) +@@ -19,7 +19,8 @@ import sys + import stat + import time + import platform, subprocess, operator, os, shutil, re +-import collections ++import collections ++import collections.abc + from mesonbuild import mlog + + have_fcntl = False +@@ -1062,6 +1062,30 @@ def substring_is_in_list(substr, strlist + return True + return False +def commonpath(paths): + ''' @@ -70,12 +103,12 @@ + common = pathlib.PurePath(new) + return str(common) + - class OrderedSet(collections.MutableSet): + class OrderedSet(collections.abc.MutableSet): """A set that preserves the order in which items are added, by first insertion. --- a/mesonbuild/mesonmain.py +++ b/mesonbuild/mesonmain.py -@@ -245,8 +245,8 @@ def set_meson_command(mainfile): +@@ -269,8 +269,8 @@ def set_meson_command(mainfile): mlog.log('meson_command is {!r}'.format(mesonlib.meson_command)) def run(original_args, mainfile): @@ -99,6 +132,17 @@ else: raise +--- a/mesonbuild/modules/python.py ++++ b/mesonbuild/modules/python.py +@@ -512,7 +512,7 @@ class PythonModule(ExtensionModule): + # Sanity check, we expect to have something that at least quacks in tune + try: + info = json.loads(run_command(python, INTROSPECT_COMMAND)) +- except json.JSONDecodeError: ++ except ValueError: + info = None + + if isinstance(info, dict) and 'version' in info and self._check_version(name_or_path, info['version']): --- a/mesonbuild/mtest.py +++ b/mesonbuild/mtest.py @@ -115,7 +115,12 @@ def returncode_to_status(retcode): @@ -129,6 +173,39 @@ except ValueError: signame = 'SIGinvalid' return '(exit status %d or signal %d %s)' % (retcode, signum, signame) +--- a/mesonbuild/scripts/dist.py ++++ b/mesonbuild/scripts/dist.py +@@ -87,8 +87,8 @@ def run_dist_scripts(dist_root, dist_scr + silent=True) + if not ep.found(): + sys.exit('Script %s could not be found in dist directory.' % d) +- pc = subprocess.run(ep.command, env=env) +- if pc.returncode != 0: ++ pc = subprocess.call(ep.command, env=env) ++ if pc != 0: + sys.exit('Dist script errored out.') + + def create_dist_git(dist_name, src_root, bld_root, dist_sub, dist_scripts): +--- a/mesonbuild/scripts/gtkdochelper.py ++++ b/mesonbuild/scripts/gtkdochelper.py +@@ -17,7 +17,7 @@ import subprocess + import shlex + import shutil + import argparse +-from ..mesonlib import MesonException, Popen_safe, is_windows ++from ..mesonlib import MesonException, Popen_safe, is_windows, commonpath + from . import destdir_join + + parser = argparse.ArgumentParser() +@@ -107,7 +107,7 @@ def build_gtkdoc(source_root, build_root + # FIXME: Use mesonlib.File objects so we don't need to do this + if not os.path.isabs(f): + f = os.path.join(doc_src, f) +- elif os.path.commonpath([f, build_root]) == build_root: ++ elif commonpath([f, build_root]) == build_root: + continue + shutil.copyfile(f, os.path.join(abs_out, os.path.basename(f))) + --- a/run_meson_command_tests.py +++ b/run_meson_command_tests.py @@ -18,6 +18,7 @@ import os @@ -182,11 +259,11 @@ import shutil +import sys import unittest - from unittest import mock - from configparser import ConfigParser -@@ -689,6 +690,24 @@ class InternalTests(unittest.TestCase): - PkgConfigDependency.pkgbin_cache = {} - PkgConfigDependency.class_pkgbin = None + import platform + from itertools import chain +@@ -892,6 +893,24 @@ class DataTests(unittest.TestCase): + defined = set([a.strip() for a in res.group().split('\\')][1:]) + self.assertEqual(defined, set(chain(interp.funcs.keys(), interp.builtin.keys()))) + def test_commonpath(self): + from os.path import sep @@ -209,7 +286,7 @@ class BasePlatformTests(unittest.TestCase): def setUp(self): -@@ -769,9 +788,16 @@ class BasePlatformTests(unittest.TestCas +@@ -972,9 +991,16 @@ class BasePlatformTests(unittest.TestCas # If this call hangs CI will just abort. It is very hard to distinguish # between CI issue and test bug in that case. Set timeout and fail loud # instead. @@ -229,7 +306,7 @@ print(p.stdout) if p.returncode != 0: if 'MESON_SKIP_TEST' in p.stdout: -@@ -2497,17 +2523,30 @@ recommended as it is not supported on so +@@ -2698,17 +2724,23 @@ recommended as it is not supported on so of = open(mfile, 'w') of.write("project('foobar', 'c')\n") of.close() @@ -255,23 +332,16 @@ - cwd=builddir, - stdout=subprocess.DEVNULL, - stderr=subprocess.DEVNULL) -+ if sys.version_info >= (3, 5): -+ subprocess.run(self.setup_command, -+ check=True, -+ cwd=builddir, -+ stdout=subprocess.DEVNULL, -+ stderr=subprocess.DEVNULL) -+ else: -+ subprocess.check_call(self.setup_command, -+ cwd=builddir, -+ stdout=subprocess.DEVNULL, -+ stderr=subprocess.DEVNULL) ++ subprocess.check_call(self.setup_command, ++ cwd=builddir, ++ stdout=subprocess.DEVNULL, ++ stderr=subprocess.DEVNULL) - class FailureTests(BasePlatformTests): - ''' + def get_opts_as_dict(self): + result = {} --- a/setup.py +++ b/setup.py -@@ -19,9 +19,9 @@ import sys +@@ -18,9 +18,9 @@ import sys from mesonbuild.coredata import version @@ -282,9 +352,9 @@ + 'Meson requires Python 3.4.0 or greater') sys.exit(1) - # We need to support Python installations that have nothing but the basic ---- "a/test cases/common/193 find override/subdir/converter.py" -+++ "b/test cases/common/193 find override/subdir/converter.py" + from setuptools import setup +--- "a/test cases/common/188 find override/subdir/converter.py" ++++ "b/test cases/common/188 find override/subdir/converter.py" @@ -10,6 +10,7 @@ ftempl = '''int %s() { } ''' @@ -293,11 +363,11 @@ - -pathlib.Path(ofilename).write_text(ftempl % d) +with pathlib.Path(ifilename).open('r') as f: -+ d = f.readline().split('\n')[0].strip() ++ d = f.readline().strip() +with pathlib.Path(ofilename).open('w') as f: + f.write(ftempl % d) ---- "a/test cases/common/193 find override/subdir/gencodegen.py.in" -+++ "b/test cases/common/193 find override/subdir/gencodegen.py.in" +--- "a/test cases/common/188 find override/subdir/gencodegen.py.in" ++++ "b/test cases/common/188 find override/subdir/gencodegen.py.in" @@ -10,6 +10,7 @@ ftempl = '''int %s() { } ''' @@ -306,19 +376,30 @@ - -pathlib.Path(ofilename).write_text(ftempl % d) +with pathlib.Path(ifilename).open('r') as f: -+ d = f.readline().split('\n')[0].strip() ++ d = f.readline().strip() +with pathlib.Path(ofilename).open('w') as f: + f.write(ftempl % d) ---- "a/test cases/windows/14 test argument extra paths/test/test_run_exe.py" -+++ "b/test cases/windows/14 test argument extra paths/test/test_run_exe.py" -@@ -7,6 +7,9 @@ if __name__ == '__main__': +--- "a/test cases/unit/35 dist script/replacer.py" ++++ "b/test cases/unit/35 dist script/replacer.py" +@@ -7,6 +7,8 @@ source_root = pathlib.Path(os.environ['M + + modfile = source_root / 'prog.c' + +-contents = modfile.read_text() ++with modfile.open('r') as f: ++ contents = f.read() + contents = contents.replace('"incorrect"', '"correct"') +-modfile.write_text(contents) ++with modfile.open('w') as f: ++ f.write(contents) +--- "a/test cases/windows/13 test argument extra paths/test/test_run_exe.py" ++++ "b/test cases/windows/13 test argument extra paths/test/test_run_exe.py" +@@ -7,6 +7,6 @@ if __name__ == '__main__': parser.add_argument('prog') args = parser.parse_args() - res = subprocess.run(args.prog) -+ if sys.version_info >= (3, 5): -+ res = subprocess.run(args.prog) -+ else: -+ res = subprocess.call(args.prog) ++ ret = subprocess.call(args.prog) - sys.exit(res.returncode - 42) +- sys.exit(res.returncode - 42) ++ sys.exit(ret - 42) diff --git a/meson-suse-ify-macros.patch b/meson-suse-ify-macros.patch index 30fa336..81f52ea 100644 --- a/meson-suse-ify-macros.patch +++ b/meson-suse-ify-macros.patch @@ -1,29 +1,24 @@ -Index: meson-0.45.0/data/macros.meson -=================================================================== ---- meson-0.45.0.orig/data/macros.meson -+++ meson-0.45.0/data/macros.meson -@@ -1,12 +1,14 @@ +--- a/data/macros.meson ++++ b/data/macros.meson +@@ -1,9 +1,15 @@ %__meson %{_bindir}/meson %__meson_wrap_mode nodownload + %__meson_auto_features enabled +%_vpath_srcdir . +%_vpath_builddir build %meson \ -- export CFLAGS="${CFLAGS:-%__global_cflags}" \ -- export CXXFLAGS="${CXXFLAGS:-%__global_cxxflags}" \ -- export FFLAGS="${FFLAGS:-%__global_fflags}" \ -- export FCFLAGS="${FCFLAGS:-%__global_fcflags}" \ -- export LDFLAGS="${LDFLAGS:-%__global_ldflags}" \ +- %set_build_flags \ + export LANG=C.UTF-8 \ + export CFLAGS="${CFLAGS:-%optflags}" \ + export CXXFLAGS="${CXXFLAGS:-%optflags}" \ + export FFLAGS="${FFLAGS:-%optflags}" \ + export FCFLAGS="${FCFLAGS:-%optflags}" \ - %{__meson} \\\ - --buildtype=plain \\\ - --prefix=%{_prefix} \\\ -@@ -27,12 +29,15 @@ - %{nil} + %{shrink:%{__meson} \ + --buildtype=plain \ + --prefix=%{_prefix} \ +@@ -25,12 +31,15 @@ + %{nil}} %meson_build \ + export LANG=C.UTF-8 \ diff --git a/meson-testsuite.changes b/meson-testsuite.changes index 03f3f56..b08917e 100644 --- a/meson-testsuite.changes +++ b/meson-testsuite.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Fri Sep 28 15:39:17 UTC 2018 - sor.alexei@meowr.ru + +- Update to version 0.48.0: + * See http://mesonbuild.com/Release-notes-for-0-48-0.html +- Disable test_generate_gir_with_address_sanitizer with a regex, + for it fails with ulimits defined in OBS. +- Test against Rust in meson-testsuite on Leap 15.0 or later. +- Rebase meson-suse-ify-macros.patch, + meson-restore-python3.4.patch, meson-fix-gcc48.patch. + ------------------------------------------------------------------- Sat Aug 25 17:52:38 UTC 2018 - sor.alexei@meowr.ru diff --git a/meson-testsuite.spec b/meson-testsuite.spec index 68264b8..d9dbe33 100644 --- a/meson-testsuite.spec +++ b/meson-testsuite.spec @@ -12,7 +12,7 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # @@ -24,7 +24,7 @@ %endif %define _name mesonbuild Name: meson%{name_ext} -Version: 0.47.2 +Version: 0.48.0 Release: 0 Summary: Python-based build system License: Apache-2.0 @@ -44,6 +44,7 @@ Patch3: meson-restore-python3.4.patch # PATCH-FIX-OPENSUSE meson-fix-gcc48.patch sor.alexei@meowr.ru -- Fix GCC 4.8 handling for openSUSE Leap 42.x. Patch4: meson-fix-gcc48.patch BuildRequires: python3-base +BuildRequires: python3-setuptools BuildArch: noarch %if %{testsuite} BuildRequires: bison @@ -70,7 +71,6 @@ BuildRequires: ninja BuildRequires: pkgconfig BuildRequires: python3-devel >= 3.4 BuildRequires: python3-gobject -BuildRequires: python3-setuptools BuildRequires: vala BuildRequires: vulkan-devel BuildRequires: zlib-devel-static @@ -88,6 +88,8 @@ BuildRequires: libboost_log-devel BuildRequires: libboost_system-devel BuildRequires: libboost_test-devel BuildRequires: libboost_thread-devel +BuildRequires: rust +BuildRequires: rust-std %else BuildRequires: boost-devel %endif @@ -142,8 +144,11 @@ sed -i "/static/d" test\ cases/frameworks/1\ boost/meson.build sed -i "s/foreach static : \[true, false\]/foreach static : \[false\]/" test\ cases/frameworks/15\ llvm/meson.build # We do not have gmock available at this moment - can't run the test suite for it -rm -rf "test cases/frameworks/3 gmock" \ - "test cases/objc/2 nsstring" +rm -r "test cases/frameworks/3 gmock" \ + "test cases/objc/2 nsstring" + +# AddressSanitizer fails here because of ulimit. +sed -i "/def test_generate_gir_with_address_sanitizer/s/$/\n raise unittest.SkipTest('ulimit')/" run_unittests.py # Remove hashbang from non-exec script sed -i '1{/\/usr\/bin\/env/d;}' ./mesonbuild/rewriter.py @@ -187,10 +192,6 @@ python3 run_tests.py %license COPYING %if !%{testsuite} %{_bindir}/meson -%{_bindir}/mesonconf -%{_bindir}/mesonintrospect -%{_bindir}/mesontest -%{_bindir}/wraptool %{python3_sitelib}/%{_name}/ %{python3_sitelib}/meson-* %dir %{_datadir}/polkit-1/ @@ -198,10 +199,6 @@ python3 run_tests.py %{_datadir}/polkit-1/actions/com.mesonbuild.install.policy %{_rpmconfigdir}/macros.d/macros.meson %{_mandir}/man1/meson.1%{?ext_man} -%{_mandir}/man1/mesonconf.1%{?ext_man} -%{_mandir}/man1/mesonintrospect.1%{?ext_man} -%{_mandir}/man1/mesontest.1%{?ext_man} -%{_mandir}/man1/wraptool.1%{?ext_man} %endif %if !%{testsuite} diff --git a/meson.changes b/meson.changes index 03f3f56..b08917e 100644 --- a/meson.changes +++ b/meson.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Fri Sep 28 15:39:17 UTC 2018 - sor.alexei@meowr.ru + +- Update to version 0.48.0: + * See http://mesonbuild.com/Release-notes-for-0-48-0.html +- Disable test_generate_gir_with_address_sanitizer with a regex, + for it fails with ulimits defined in OBS. +- Test against Rust in meson-testsuite on Leap 15.0 or later. +- Rebase meson-suse-ify-macros.patch, + meson-restore-python3.4.patch, meson-fix-gcc48.patch. + ------------------------------------------------------------------- Sat Aug 25 17:52:38 UTC 2018 - sor.alexei@meowr.ru diff --git a/meson.spec b/meson.spec index 8dc9f75..78ada5c 100644 --- a/meson.spec +++ b/meson.spec @@ -12,7 +12,7 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # @@ -24,7 +24,7 @@ %endif %define _name mesonbuild Name: meson%{name_ext} -Version: 0.47.2 +Version: 0.48.0 Release: 0 Summary: Python-based build system License: Apache-2.0 @@ -44,6 +44,7 @@ Patch3: meson-restore-python3.4.patch # PATCH-FIX-OPENSUSE meson-fix-gcc48.patch sor.alexei@meowr.ru -- Fix GCC 4.8 handling for openSUSE Leap 42.x. Patch4: meson-fix-gcc48.patch BuildRequires: python3-base +BuildRequires: python3-setuptools BuildArch: noarch %if %{testsuite} BuildRequires: bison @@ -70,7 +71,6 @@ BuildRequires: ninja BuildRequires: pkgconfig BuildRequires: python3-devel >= 3.4 BuildRequires: python3-gobject -BuildRequires: python3-setuptools BuildRequires: vala BuildRequires: vulkan-devel BuildRequires: zlib-devel-static @@ -88,6 +88,8 @@ BuildRequires: libboost_log-devel BuildRequires: libboost_system-devel BuildRequires: libboost_test-devel BuildRequires: libboost_thread-devel +BuildRequires: rust +BuildRequires: rust-std %else BuildRequires: boost-devel %endif @@ -142,8 +144,11 @@ sed -i "/static/d" test\ cases/frameworks/1\ boost/meson.build sed -i "s/foreach static : \[true, false\]/foreach static : \[false\]/" test\ cases/frameworks/15\ llvm/meson.build # We do not have gmock available at this moment - can't run the test suite for it -rm -rf "test cases/frameworks/3 gmock" \ - "test cases/objc/2 nsstring" +rm -r "test cases/frameworks/3 gmock" \ + "test cases/objc/2 nsstring" + +# AddressSanitizer fails here because of ulimit. +sed -i "/def test_generate_gir_with_address_sanitizer/s/$/\n raise unittest.SkipTest('ulimit')/" run_unittests.py # Remove hashbang from non-exec script sed -i '1{/\/usr\/bin\/env/d;}' ./mesonbuild/rewriter.py @@ -187,10 +192,6 @@ python3 run_tests.py %license COPYING %if !%{testsuite} %{_bindir}/meson -%{_bindir}/mesonconf -%{_bindir}/mesonintrospect -%{_bindir}/mesontest -%{_bindir}/wraptool %{python3_sitelib}/%{_name}/ %{python3_sitelib}/meson-* %dir %{_datadir}/polkit-1/ @@ -198,10 +199,6 @@ python3 run_tests.py %{_datadir}/polkit-1/actions/com.mesonbuild.install.policy %{_rpmconfigdir}/macros.d/macros.meson %{_mandir}/man1/meson.1%{?ext_man} -%{_mandir}/man1/mesonconf.1%{?ext_man} -%{_mandir}/man1/mesonintrospect.1%{?ext_man} -%{_mandir}/man1/mesontest.1%{?ext_man} -%{_mandir}/man1/wraptool.1%{?ext_man} %endif %if !%{testsuite}