Accepting request 666689 from devel:tools:building
OBS-URL: https://build.opensuse.org/request/show/666689 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/meson?expand=0&rev=39
This commit is contained in:
commit
e3d795f7e4
3
_multibuild
Normal file
3
_multibuild
Normal file
@ -0,0 +1,3 @@
|
||||
<multibuild>
|
||||
<package>test</package>
|
||||
</multibuild>
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:39ead8bfd0dc9c7b0af15e23ea975c864600bf871fba279c9918625bb9a85506
|
||||
size 1310363
|
@ -1,16 +0,0 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQIzBAABCgAdFiEElRgfTu0U/fTkG1GNO/RpO/7rlCgFAlvkvcUACgkQO/RpO/7r
|
||||
lCgoag//SSYQYHJIBa09Ty4LDdJvsdCOa2YGhu2mKQROjnngxvhR15Nb16DRQ3k0
|
||||
PgoCRHLEp6I/WQRtn8lXpFpge8BwbBmTw8+vgGGpmk4ayn+dFeahijAh1j9G8jS0
|
||||
BNoYC6/UGd0Y7xGa3kDxUdJVF0CaUEB+hMQvRqvz/eO6C7ujs0Me7JuVxYlg4FSi
|
||||
hF3BeWBBp8BtlfDpYO7vhllLceMKpzN6rjwtu1/B43diVFS5Nk6j4gVSFj5LHrUo
|
||||
US5av424YO5QIiJX88AFwXunlxQr7wPREEqehKJmuK/lxBMFaCooXHdVlJR9smJn
|
||||
LCH6iec6PiRxRTCrqsHaR8OmxkmtwWLLHniMoB386jX5rSYQpB8tAcTzhl9cxj8O
|
||||
hUT+oe549UVoF9Xqvbv3Rx7KGPe3uweFHAOrelCUxU52hfBm2jlPQqcUeKGVJeWe
|
||||
fZVfUDoon4jjsIepwnG2mS7ISVgx3UtvqCb2VH6azEpAR4LzjwynzsJ+je8O/nFP
|
||||
uTJ+pEfk40+9CmzIwbA+SsQ0ANMWH7tz5AkckwJ2tld9FleyO7U/4WJ9pE4UEpzq
|
||||
IRC2ZrGGCtO3i5tICM+DPxEaTskc3R7I0aVsfV7TEUkAAyGgdN9MWGmv4acmEWUc
|
||||
LKxlo0PGOkAo4r+2cYfEG2E0CQQcuDTvQkc9ppGrY5trYzMJwLU=
|
||||
=f+xM
|
||||
-----END PGP SIGNATURE-----
|
3
meson-0.49.0.tar.gz
Normal file
3
meson-0.49.0.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fb0395c4ac208eab381cd1a20571584bdbba176eb562a7efa9cb17cace0e1551
|
||||
size 1338583
|
16
meson-0.49.0.tar.gz.asc
Normal file
16
meson-0.49.0.tar.gz.asc
Normal file
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQIzBAABCgAdFiEElRgfTu0U/fTkG1GNO/RpO/7rlCgFAlwNdRwACgkQO/RpO/7r
|
||||
lCi6AhAAhHYSnNDjXrLecIuVdN8VvaliDzFDM8MKf6kEgat1bN8SpofGXujUmmzO
|
||||
YQa7E0tGyAMc1/MZgnEppXWXdfVhNjnEwIetmUNnxviPVxcliQ9Ygty2MvT5H1ng
|
||||
1oIWnZRAOecf1Yvm4uYCuq7JRMobT9qx54nevsmEKqUgqZQWg8w53HgjhDrXSqN2
|
||||
ymfLSIAyOvGjcISHz9aJTuxhvjIqeH2zwVsSAvD6xeTxWqnLOhZ7tWI3vqRT7Y7S
|
||||
0p0hshNZXN8R0+ixSvOjv9za/GjzB1/TFU7wrwxFkT9/jccUnEDcKcxN8L7yx/TN
|
||||
BlkJMS/4ruqarLyerIQWGaxmIaBsaJQSg4A1zupOxHQI1NkLn840HJBYOyo3jZUV
|
||||
z7/hdAexjiHPHTYpOibLvzDT9XJCdV3268s5DRx0kDULuSC7sqsnO0u5Fl2WZWp5
|
||||
0tHiR/Z3EvacRRUzDZ/FEmc7IQoZzHnJDvL2i3sDnwJBT3pYqDfoBx9lj3IBMpfb
|
||||
3MJw8CDe8SJmZ5kt9z/iC8DfZ0ZuIufNnCJJN39nnMb/FMUZsnaPB37VYV66NCr1
|
||||
KrAlXY57BhCPMsbx8lT2sWe3DBTnu/dQRaU5qk5oAkGNM83CaHeS4AOQH3EUb0N5
|
||||
a/S1aJHk3xq4Vedkkilcq7IMHeLDcui3LD5kCOs54ZQeNJO9ICI=
|
||||
=+Y3s
|
||||
-----END PGP SIGNATURE-----
|
13
meson-distutils.patch
Normal file
13
meson-distutils.patch
Normal file
@ -0,0 +1,13 @@
|
||||
Index: meson-0.49.0/setup.py
|
||||
===================================================================
|
||||
--- meson-0.49.0.orig/setup.py
|
||||
+++ meson-0.49.0/setup.py
|
||||
@@ -22,7 +22,7 @@ if sys.version_info < (3, 5, 0):
|
||||
sys.exit(1)
|
||||
|
||||
from mesonbuild.coredata import version
|
||||
-from setuptools import setup
|
||||
+from distutils.core import setup
|
||||
|
||||
# On windows, will create Scripts/meson.exe and Scripts/meson-script.py
|
||||
# Other platforms will create bin/meson
|
@ -1,6 +1,6 @@
|
||||
--- a/mesonbuild/compilers/cpp.py
|
||||
+++ b/mesonbuild/compilers/cpp.py
|
||||
@@ -137,8 +137,8 @@ class ClangCPPCompiler(ClangCompiler, CP
|
||||
@@ -140,8 +140,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',
|
||||
@ -11,7 +11,7 @@
|
||||
'none')})
|
||||
return opts
|
||||
|
||||
@@ -168,8 +168,8 @@ class ArmclangCPPCompiler(ArmclangCompil
|
||||
@@ -171,8 +171,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,7 +22,7 @@
|
||||
'none')})
|
||||
return opts
|
||||
|
||||
@@ -194,10 +194,12 @@ class GnuCPPCompiler(GnuCompiler, CPPCom
|
||||
@@ -197,10 +197,12 @@ class GnuCPPCompiler(GnuCompiler, CPPCom
|
||||
'3': default_warn_args + ['-Wextra', '-Wpedantic']}
|
||||
|
||||
def get_options(self):
|
||||
@ -37,7 +37,7 @@
|
||||
'none'),
|
||||
'cpp_debugstl': coredata.UserBooleanOption('cpp_debugstl',
|
||||
'STL debug mode',
|
||||
@@ -271,7 +273,7 @@ class IntelCPPCompiler(IntelCompiler, CP
|
||||
@@ -276,7 +278,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'):
|
||||
@ -75,6 +75,22 @@
|
||||
# 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/common/152 simd/simdchecker.c"
|
||||
+++ "b/test cases/common/152 simd/simdchecker.c"
|
||||
@@ -10,11 +10,12 @@ int check_simd_implementation(float *fou
|
||||
const float *expected,
|
||||
simd_func fptr,
|
||||
const int blocksize) {
|
||||
+ int i;
|
||||
int rv = 0;
|
||||
memcpy(four, four_initial, blocksize*sizeof(float));
|
||||
printf("Using %s.\n", simd_type);
|
||||
fptr(four);
|
||||
- for(int i=0; i<blocksize; i++) {
|
||||
+ for(i=0; i<blocksize; i++) {
|
||||
if(four[i] != expected[i]) {
|
||||
printf("Increment function failed, got %f expected %f.\n", four[i], expected[i]);
|
||||
rv = 1;
|
||||
--- "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) {
|
||||
|
26
meson-no-lrelease.patch
Normal file
26
meson-no-lrelease.patch
Normal file
@ -0,0 +1,26 @@
|
||||
From 391878e83aef4c2ba43e69c4850bbc84f409783e Mon Sep 17 00:00:00 2001
|
||||
From: Dylan Baker <dylan@pnwbakers.com>
|
||||
Date: Tue, 18 Dec 2018 14:13:05 -0800
|
||||
Subject: [PATCH] dependencies/ui: Don't require lrelease for qt
|
||||
|
||||
We previously didn't require it so we shouldn't silently start doing so.
|
||||
|
||||
Fixes #4654
|
||||
---
|
||||
mesonbuild/dependencies/ui.py | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/mesonbuild/dependencies/ui.py b/mesonbuild/dependencies/ui.py
|
||||
index e8fba91a23..1f65c3b86f 100644
|
||||
--- a/mesonbuild/dependencies/ui.py
|
||||
+++ b/mesonbuild/dependencies/ui.py
|
||||
@@ -243,7 +243,7 @@ def gen_bins():
|
||||
if self.bindir:
|
||||
yield os.path.join(self.bindir, b), b, False
|
||||
yield '{}-{}'.format(b, self.name), b, False
|
||||
- yield b, b, self.required
|
||||
+ yield b, b, self.required if b != 'lrelease' else False
|
||||
|
||||
for b, name, required in gen_bins():
|
||||
if found[name].found():
|
||||
|
@ -1,7 +1,7 @@
|
||||
--- a/mesonbuild/backend/ninjabackend.py
|
||||
+++ b/mesonbuild/backend/ninjabackend.py
|
||||
@@ -32,7 +32,7 @@ from .. import compilers
|
||||
from ..compilers import CompilerArgs, CCompiler
|
||||
from ..compilers import CompilerArgs, CCompiler, VisualStudioCCompiler
|
||||
from ..linkers import ArLinker
|
||||
from ..mesonlib import File, MesonException, OrderedSet
|
||||
-from ..mesonlib import get_compiler_for_source, has_path_sep
|
||||
@ -9,7 +9,7 @@
|
||||
from .backends import CleanTrees
|
||||
from ..build import InvalidArguments
|
||||
|
||||
@@ -1011,8 +1011,8 @@ int dummy;
|
||||
@@ -1025,8 +1025,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)
|
||||
@ -25,13 +25,13 @@
|
||||
@@ -18,7 +18,7 @@ import sys
|
||||
from pathlib import PurePath
|
||||
from collections import OrderedDict
|
||||
from .mesonlib import MesonException
|
||||
-from .mesonlib import default_libdir, default_libexecdir, default_prefix
|
||||
+from .mesonlib import default_libdir, default_libexecdir, default_prefix, commonpath
|
||||
from .mesonlib import (
|
||||
- MesonException, default_libdir, default_libexecdir, default_prefix
|
||||
+ MesonException, default_libdir, default_libexecdir, default_prefix, commonpath
|
||||
)
|
||||
from .wrap import WrapMode
|
||||
import ast
|
||||
import argparse
|
||||
@@ -302,7 +302,7 @@ class CoreData:
|
||||
@@ -379,7 +379,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.
|
||||
@ -42,7 +42,7 @@
|
||||
'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
|
||||
@@ -617,7 +617,9 @@ The result of this is undefined and will
|
||||
|
||||
if cur.operation == 'add':
|
||||
if isinstance(l, dict) and isinstance(r, dict):
|
||||
@ -53,7 +53,7 @@
|
||||
try:
|
||||
return l + r
|
||||
except Exception as e:
|
||||
@@ -661,7 +662,8 @@ The result of this is undefined and will
|
||||
@@ -718,7 +720,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')
|
||||
@ -65,17 +65,15 @@
|
||||
raise InvalidArguments('The += operator currently only works with arrays, dicts, strings or ints ')
|
||||
--- a/mesonbuild/mesonlib.py
|
||||
+++ b/mesonbuild/mesonlib.py
|
||||
@@ -19,7 +19,8 @@ import sys
|
||||
import stat
|
||||
@@ -20,6 +20,7 @@ import stat
|
||||
import time
|
||||
import platform, subprocess, operator, os, shutil, re
|
||||
-import collections
|
||||
+import collections
|
||||
import collections
|
||||
+import collections.abc
|
||||
from mesonbuild import mlog
|
||||
from enum import Enum
|
||||
from functools import lru_cache
|
||||
|
||||
have_fcntl = False
|
||||
@@ -1062,6 +1062,30 @@ def substring_is_in_list(substr, strlist
|
||||
@@ -1149,6 +1150,30 @@ def substring_is_in_list(substr, strlist
|
||||
return True
|
||||
return False
|
||||
|
||||
@ -108,8 +106,8 @@
|
||||
insertion.
|
||||
--- a/mesonbuild/mesonmain.py
|
||||
+++ b/mesonbuild/mesonmain.py
|
||||
@@ -269,8 +269,8 @@ def set_meson_command(mainfile):
|
||||
mlog.log('meson_command is {!r}'.format(mesonlib.meson_command))
|
||||
@@ -149,8 +149,8 @@ def run_script_command(script_name, scri
|
||||
return 1
|
||||
|
||||
def run(original_args, mainfile):
|
||||
- if sys.version_info < (3, 5):
|
||||
@ -121,7 +119,7 @@
|
||||
return 1
|
||||
--- a/mesonbuild/minstall.py
|
||||
+++ b/mesonbuild/minstall.py
|
||||
@@ -353,8 +353,8 @@ class Installer:
|
||||
@@ -348,8 +348,8 @@ class Installer:
|
||||
if shutil.which('pkexec') is not None and 'PKEXEC_UID' not in os.environ:
|
||||
print('Installation failed due to insufficient permissions.')
|
||||
print('Attempting to use polkit to gain elevated privileges...')
|
||||
@ -134,7 +132,7 @@
|
||||
|
||||
--- a/mesonbuild/modules/python.py
|
||||
+++ b/mesonbuild/modules/python.py
|
||||
@@ -512,7 +512,7 @@ class PythonModule(ExtensionModule):
|
||||
@@ -516,7 +516,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))
|
||||
@ -145,7 +143,7 @@
|
||||
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):
|
||||
@@ -114,7 +114,12 @@ def returncode_to_status(retcode):
|
||||
if retcode < 0:
|
||||
signum = -retcode
|
||||
try:
|
||||
@ -159,7 +157,7 @@
|
||||
except ValueError:
|
||||
signame = 'SIGinvalid'
|
||||
return '(killed by signal %d %s)' % (signum, signame)
|
||||
@@ -125,7 +130,12 @@ def returncode_to_status(retcode):
|
||||
@@ -124,7 +129,12 @@ def returncode_to_status(retcode):
|
||||
|
||||
signum = retcode - 128
|
||||
try:
|
||||
@ -173,19 +171,6 @@
|
||||
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
|
||||
@ -193,11 +178,11 @@
|
||||
import shutil
|
||||
import argparse
|
||||
-from ..mesonlib import MesonException, Popen_safe, is_windows
|
||||
+from ..mesonlib import MesonException, Popen_safe, is_windows, commonpath
|
||||
+from ..mesonlib import MesonException, Popen_safe, commonpath, is_windows
|
||||
from . import destdir_join
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
@@ -107,7 +107,7 @@ def build_gtkdoc(source_root, build_root
|
||||
@@ -108,7 +108,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)
|
||||
@ -208,7 +193,7 @@
|
||||
|
||||
--- a/run_meson_command_tests.py
|
||||
+++ b/run_meson_command_tests.py
|
||||
@@ -18,6 +18,7 @@ import os
|
||||
@@ -19,6 +19,7 @@ import os
|
||||
import tempfile
|
||||
import unittest
|
||||
import subprocess
|
||||
@ -216,52 +201,28 @@
|
||||
import zipapp
|
||||
from pathlib import Path
|
||||
|
||||
@@ -73,13 +74,27 @@ class CommandTests(unittest.TestCase):
|
||||
@@ -68,9 +69,15 @@ class CommandTests(unittest.TestCase):
|
||||
# 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.
|
||||
- p = subprocess.run(command, stdout=subprocess.PIPE,
|
||||
- stderr=subprocess.STDOUT, env=os.environ.copy(),
|
||||
- universal_newlines=True, cwd=workdir, timeout=60 * 5)
|
||||
- print(p.stdout)
|
||||
- if p.returncode != 0:
|
||||
- raise subprocess.CalledProcessError(p.returncode, command)
|
||||
- return p.stdout
|
||||
- env=os.environ.copy(), universal_newlines=True,
|
||||
- cwd=workdir, timeout=60 * 5)
|
||||
+ if sys.version_info >= (3, 5):
|
||||
+ p = subprocess.run(command, stdout=subprocess.PIPE,
|
||||
+ stderr=subprocess.STDOUT, env=os.environ.copy(),
|
||||
+ universal_newlines=True,
|
||||
+ env=os.environ.copy(), universal_newlines=True,
|
||||
+ cwd=workdir, timeout=60 * 5)
|
||||
+ print(p.stdout)
|
||||
+ if p.returncode != 0:
|
||||
+ raise subprocess.CalledProcessError(p.returncode, command)
|
||||
+ return p.stdout
|
||||
+ else:
|
||||
+ try:
|
||||
+ po = subprocess.check_output(command, stderr=subprocess.STDOUT,
|
||||
+ env=os.environ.copy(),
|
||||
+ universal_newlines=True,
|
||||
+ cwd=workdir, timeout=60 * 5)
|
||||
+ except subprocess.CalledProcessError as e:
|
||||
+ print(e.output)
|
||||
+ raise subprocess.CalledProcessError(e.returncode, e.cmd)
|
||||
+ else:
|
||||
+ print(po)
|
||||
+ return po
|
||||
|
||||
def assertMesonCommandIs(self, line, cmd):
|
||||
self.assertTrue(line.startswith('meson_command '), msg=line)
|
||||
+ p = subprocess.Popen(command, stdout=subprocess.PIPE,
|
||||
+ env=os.environ.copy(), universal_newlines=True,
|
||||
+ cwd=workdir)
|
||||
+ p.stdout = p.communicate(timeout=60 * 5)[0]
|
||||
print(p.stdout)
|
||||
if p.returncode != 0:
|
||||
raise subprocess.CalledProcessError(p.returncode, command)
|
||||
--- a/run_unittests.py
|
||||
+++ b/run_unittests.py
|
||||
@@ -21,6 +21,7 @@ import tempfile
|
||||
import textwrap
|
||||
import os
|
||||
import shutil
|
||||
+import sys
|
||||
import unittest
|
||||
import platform
|
||||
from itertools import chain
|
||||
@@ -892,6 +893,24 @@ class DataTests(unittest.TestCase):
|
||||
@@ -956,6 +956,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())))
|
||||
|
||||
@ -286,7 +247,7 @@
|
||||
|
||||
class BasePlatformTests(unittest.TestCase):
|
||||
def setUp(self):
|
||||
@@ -972,9 +991,16 @@ class BasePlatformTests(unittest.TestCas
|
||||
@@ -1036,9 +1054,15 @@ 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.
|
||||
@ -296,17 +257,16 @@
|
||||
+ if sys.version_info >= (3, 5):
|
||||
+ p = subprocess.run(command, stdout=subprocess.PIPE,
|
||||
+ stderr=subprocess.STDOUT, env=os.environ.copy(),
|
||||
+ universal_newlines=True, cwd=workdir,
|
||||
+ timeout=60 * 5)
|
||||
+ universal_newlines=True, cwd=workdir, timeout=60 * 5)
|
||||
+ else:
|
||||
+ p = subprocess.Popen(command, stdout=subprocess.PIPE,
|
||||
+ stderr=subprocess.STDOUT, env=os.environ.copy(),
|
||||
+ universal_newlines=True, cwd=workdir)
|
||||
+ p.stdout = p.communicate(timeout=60 * 5)[0]
|
||||
+ p.stdout = p.communicate(timeout=60 * 5)[0]
|
||||
print(p.stdout)
|
||||
if p.returncode != 0:
|
||||
if 'MESON_SKIP_TEST' in p.stdout:
|
||||
@@ -2698,17 +2724,23 @@ recommended as it is not supported on so
|
||||
@@ -2849,17 +2873,23 @@ recommended as it is not supported on so
|
||||
of = open(mfile, 'w')
|
||||
of.write("project('foobar', 'c')\n")
|
||||
of.close()
|
||||
@ -339,11 +299,30 @@
|
||||
|
||||
def get_opts_as_dict(self):
|
||||
result = {}
|
||||
@@ -4671,13 +4701,14 @@ class NativeFileTests(BasePlatformTests)
|
||||
f.write(' print("{}", file=sys.{})\n'.format(value, kwargs.get('outfile', 'stdout')))
|
||||
f.write(' sys.exit(0)\n')
|
||||
f.write(textwrap.dedent('''
|
||||
- ret = subprocess.run(
|
||||
+ ret = subprocess.Popen(
|
||||
["{}"] + extra_args,
|
||||
stdout=subprocess.PIPE,
|
||||
stderr=subprocess.PIPE,
|
||||
- encoding='utf-8')
|
||||
- print(ret.stdout)
|
||||
- print(ret.stderr, file=sys.stderr)
|
||||
+ universal_newlines=True)
|
||||
+ stdout, stderr = ret.communicate()
|
||||
+ print(stdout)
|
||||
+ print(stderr, file=sys.stderr)
|
||||
sys.exit(ret.returncode)
|
||||
|
||||
if __name__ == '__main__':
|
||||
--- a/setup.py
|
||||
+++ b/setup.py
|
||||
@@ -18,9 +18,9 @@ import sys
|
||||
@@ -16,9 +16,9 @@
|
||||
|
||||
from mesonbuild.coredata import version
|
||||
import sys
|
||||
|
||||
-if sys.version_info < (3, 5, 0):
|
||||
+if sys.version_info < (3, 4, 0):
|
||||
@ -352,7 +331,7 @@
|
||||
+ 'Meson requires Python 3.4.0 or greater')
|
||||
sys.exit(1)
|
||||
|
||||
from setuptools import setup
|
||||
from mesonbuild.coredata import version
|
||||
--- "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() {
|
||||
@ -381,17 +360,25 @@
|
||||
+ f.write(ftempl % d)
|
||||
--- "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
|
||||
@@ -11,6 +11,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"')
|
||||
contents = contents.replace(sys.argv[1], sys.argv[2])
|
||||
-modfile.write_text(contents)
|
||||
+with modfile.open('w') as f:
|
||||
+ f.write(contents)
|
||||
--- "a/test cases/unit/46 native dep pkgconfig var/cross_pkgconfig.py"
|
||||
+++ "b/test cases/unit/46 native dep pkgconfig var/cross_pkgconfig.py"
|
||||
@@ -9,4 +9,4 @@ environ['PKG_CONFIG_LIBDIR'] = os.path.j
|
||||
os.path.dirname(os.path.realpath(__file__)), 'cross_pkgconfig')
|
||||
|
||||
sys.exit(
|
||||
- subprocess.run(['pkg-config'] + sys.argv[1:], env=environ).returncode)
|
||||
+ subprocess.call(['pkg-config'] + sys.argv[1:], env=environ))
|
||||
--- "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__':
|
||||
|
@ -1,6 +1,6 @@
|
||||
--- a/mesonbuild/dependencies/dev.py
|
||||
+++ b/mesonbuild/dependencies/dev.py
|
||||
@@ -205,10 +205,10 @@ class LLVMDependency(ConfigToolDependenc
|
||||
@@ -343,10 +343,11 @@ class LLVMDependency(ConfigToolDependenc
|
||||
not for shared-linnking, we have to figure those out ourselves, because
|
||||
of course we do.
|
||||
"""
|
||||
@ -8,6 +8,7 @@
|
||||
- self.link_args = self.get_config_value(
|
||||
- ['--libs', '--ldflags', '--system-libs'] + list(self.required_modules),
|
||||
- 'link_args')
|
||||
+ #if self.static:
|
||||
+ self.link_args = self.get_config_value(
|
||||
+ ['--libs', '--ldflags', '--system-libs'] + list(self.required_modules),
|
||||
+ 'link_args')
|
||||
@ -15,7 +16,7 @@
|
||||
else:
|
||||
# llvm-config will provide arguments for static linking, so we get
|
||||
# to figure out for ourselves what to link with. We'll do that by
|
||||
@@ -227,6 +227,7 @@ class LLVMDependency(ConfigToolDependenc
|
||||
@@ -365,6 +366,7 @@ class LLVMDependency(ConfigToolDependenc
|
||||
else:
|
||||
raise DependencyException(
|
||||
'Could not find a dynamically linkable library for LLVM.')
|
||||
@ -23,3 +24,17 @@
|
||||
|
||||
def check_components(self, modules, required=True):
|
||||
"""Check for llvm components (modules in meson terms).
|
||||
--- a/run_unittests.py
|
||||
+++ b/run_unittests.py
|
||||
@@ -4771,6 +4771,11 @@ class NativeFileTests(BasePlatformTests)
|
||||
# Do the skip at this level to avoid screwing up the cache
|
||||
if not shutil.which('llvm-config'):
|
||||
raise unittest.SkipTest('No llvm-installed, cannot test')
|
||||
+
|
||||
+ output = subprocess.getoutput('llvm-config --version')
|
||||
+ if version_compare(output, '< 3.9'):
|
||||
+ raise unittest.SkipTest('llvm-config >= 3.9 needed for the test')
|
||||
+
|
||||
self._simple_test('config_dep', 'llvm-config')
|
||||
|
||||
def test_python3_module(self):
|
||||
|
@ -1,6 +1,6 @@
|
||||
--- a/run_tests.py
|
||||
+++ b/run_tests.py
|
||||
@@ -54,18 +54,10 @@ def get_meson_script():
|
||||
@@ -104,18 +104,10 @@ def get_meson_script():
|
||||
Also used by run_unittests.py to determine what meson to run when not
|
||||
running in-process (which is the default).
|
||||
'''
|
||||
@ -21,12 +21,22 @@
|
||||
|
||||
def get_backend_args_for_dir(backend, builddir):
|
||||
'''
|
||||
@@ -244,7 +236,7 @@ if __name__ == '__main__':
|
||||
env['COVERAGE_PROCESS_START'] = '.coveragerc'
|
||||
env['PYTHONPATH'] = os.pathsep.join([td] + env.get('PYTHONPATH', []))
|
||||
@@ -296,12 +288,12 @@ def main():
|
||||
else:
|
||||
env['PYTHONPATH'] = temp_dir
|
||||
if not cross:
|
||||
- returncode += subprocess.call(mesonlib.python_command + ['run_meson_command_tests.py', '-v'], env=env)
|
||||
+ #returncode += subprocess.call(mesonlib.python_command + ['run_meson_command_tests.py', '-v'], env=env)
|
||||
returncode += subprocess.call(mesonlib.python_command + ['run_unittests.py', '-v'], env=env)
|
||||
returncode += subprocess.call(mesonlib.python_command + ['run_project_tests.py'] + sys.argv[1:], env=env)
|
||||
else:
|
||||
- cmd = mesonlib.python_command + ['run_meson_command_tests.py', '-v']
|
||||
- if options.failfast:
|
||||
- cmd += ['--failfast']
|
||||
- returncode += subprocess.call(cmd, env=env)
|
||||
- if options.failfast and returncode != 0:
|
||||
- return returncode
|
||||
+ #cmd = mesonlib.python_command + ['run_meson_command_tests.py', '-v']
|
||||
+ #if options.failfast:
|
||||
+ # cmd += ['--failfast']
|
||||
+ #returncode += subprocess.call(cmd, env=env)
|
||||
+ #if options.failfast and returncode != 0:
|
||||
+ # return returncode
|
||||
cmd = mesonlib.python_command + ['run_unittests.py', '-v']
|
||||
if options.failfast:
|
||||
cmd += ['--failfast']
|
||||
|
@ -1,609 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 12 23:52:33 UTC 2018 - sor.alexei@meowr.ru
|
||||
|
||||
- Update to version 0.48.2:
|
||||
* See https://github.com/mesonbuild/meson/milestone/32?closed=1
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Oct 18 12:52:39 UTC 2018 - bjorn.lie@gmail.com
|
||||
|
||||
- Update to version 0.48.1:
|
||||
* See https://github.com/mesonbuild/meson/milestone/31?closed=1
|
||||
- Drop meson-Fix-handling-generated-desktop-files.patch: Fixed
|
||||
upstream.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 5 22:21:26 UTC 2018 - bjorn.lie@gmail.com
|
||||
|
||||
- Add meson-Fix-handling-generated-desktop-files.patch: Fix
|
||||
handling generated .desktop files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 1 09:53:58 UTC 2018 - Dominique Leuenberger <dimstar@opensuse.org>
|
||||
|
||||
- Require python3-setuptools.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
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
|
||||
|
||||
- Update to version 0.47.2:
|
||||
* https://github.com/mesonbuild/meson/milestone/29?closed=1
|
||||
- Rebase meson-restore-python3.4.patch, meson-fix-gcc48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 3 21:00:12 UTC 2018 - sor.alexei@meowr.ru
|
||||
|
||||
- Update to version 0.47.1:
|
||||
* See https://mesonbuild.com/Release-notes-for-0-47-0.html
|
||||
- Remove Don-t-raise-StopIteration-in-generators-no-longer-al.patch.
|
||||
- Add a new dependency for tests:
|
||||
libqt5-qtbase-private-headers-devel.
|
||||
- Set MESON_EXE for tests.
|
||||
- Adjust meson-test-installed-bin.patch.
|
||||
- Rebase meson-restore-python3.4.patch, meson-fix-gcc48.patch.
|
||||
- No longer test with OpenMPI: starting with this release
|
||||
"-Wl,--no-undefined -Wl,--as-needed" appears in the gfortran
|
||||
arguments, causing an error similiar to lp#1727474.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Jul 28 21:08:48 UTC 2018 - bjorn.lie@gmail.com
|
||||
|
||||
- Update to version 0.46.1:
|
||||
* See https://github.com/mesonbuild/meson/milestone/26?closed=1
|
||||
- Drop meson-keep-spaces-in-pc-files.patch: Fixed upstream.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jul 13 06:00:48 UTC 2018 - jslaby@suse.com
|
||||
|
||||
- Add Don-t-raise-StopIteration-in-generators-no-longer-al.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun May 20 14:20:31 UTC 2018 - dimstar@opensuse.org
|
||||
|
||||
- BuildRequire python3-base instead of python3: make building a bit
|
||||
cheaper.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 30 07:03:53 UTC 2018 - dimstar@opensuse.org
|
||||
|
||||
- Add meson-keep-spaces-in-pc-files.patch: Keep spaces in generated
|
||||
pkgconfig files (gh#mesonbuild/meson#3479).
|
||||
- Rebase meson-restore-python3.4.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 25 18:53:17 UTC 2018 - sor.alexei@meowr.ru
|
||||
|
||||
- Update to version 0.46.0:
|
||||
* See http://mesonbuild.com/Release-notes-for-0-46-0.html
|
||||
- Rebase meson-test-installed-bin.patch,
|
||||
meson-restore-python3.4.patch, meson-fix-gcc48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Mar 21 23:46:12 UTC 2018 - sor.alexei@meowr.ru
|
||||
|
||||
- Only apply meson-suse-fix-llvm-3.8.patch,
|
||||
meson-restore-python3.4.patch, meson-fix-gcc48.patch on Leap 42.x
|
||||
or older.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Mar 21 10:20:37 UTC 2018 - sor.alexei@meowr.ru
|
||||
|
||||
- Fix meson-fix-gcc48.patch.
|
||||
- Add meson-restore-python3.4.patch: Restore Python 3.4 support for
|
||||
SLE 12 and openSUSE Leap 42.x.
|
||||
- Add meson-suse-fix-llvm-3.8.patch: Fix LLVM 3.8 tests for SLE 12
|
||||
and openSUSE Leap 42.x..
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Mar 12 22:04:53 UTC 2018 - dimstar@opensuse.org
|
||||
|
||||
- Add libjpeg-devel BuildRequires to test testsuite.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Mar 5 17:00:19 UTC 2018 - dimstar@opensuse.org
|
||||
|
||||
- Update to version 0.45.0:
|
||||
+ Config-Tool based dependencies can be specified in a cross
|
||||
file.
|
||||
+ Visual Studio C# compiler support.
|
||||
+ Removed two deprecated features:
|
||||
- The standalone find_library function has been a no-op for a
|
||||
long time. From now on it's an error.
|
||||
- There used to be a keywordless version of run_target, which
|
||||
is no longer valid.
|
||||
+ Experimental FPGA support.
|
||||
+ Generator outputs can preserve directory structure.
|
||||
+ Hexadecimal string literals.
|
||||
+ install_data()` defaults to `{datadir}/{projectname}`.
|
||||
+ install_subdir() supports strip_directory.
|
||||
+ Integer options.
|
||||
+ New method meson.project_license().
|
||||
+ Rust cross-compilation.
|
||||
+ Rust compiler-private library disambiguation.
|
||||
+ Project templates.
|
||||
+ Improve test setup selection.
|
||||
+ Yielding subproject option to superproject.
|
||||
- Rebase meson-suse-ify-macros.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Feb 22 10:36:33 UTC 2018 - dimstar@opensuse.org
|
||||
|
||||
- Update to version 0.44.1:
|
||||
+ Support running out-of-tree tests against a meson in PATH.
|
||||
+ Don't add rpaths to system libraries.
|
||||
+ Fix meson location detection from other meson tools.
|
||||
+ Various boost, pkg-config and vala related fixes.
|
||||
- Testsuite changes: Remove mesonbuild directory and meson.py
|
||||
again before running the test: ensure we test meson as it was
|
||||
installed onto the system.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 5 15:06:54 UTC 2018 - dimstar@opensuse.org
|
||||
|
||||
- Update to version 0.44.0:
|
||||
+ New features:
|
||||
- Added warning function.
|
||||
- Adds support for additional Qt5-Module keyword
|
||||
moc_extra_arguments.
|
||||
- Prefix-dependent defaults for sysconfdir, localstatedir and
|
||||
sharedstatedir.
|
||||
- An array type for user options.
|
||||
- LLVM dependency supports both dynamic and static linking.
|
||||
- Added if_found to subdir.
|
||||
- get_unquoted() method for the configuration data object.
|
||||
- Added disabler object.
|
||||
- Config-Tool based dependencies gained a method to get
|
||||
arbitrary options.
|
||||
- Embedded Python in Windows MSI packages.
|
||||
- Rebase meson-suse-ify-macros.patch, meson-fix-gcc48.patch and
|
||||
meson-test-installed-bin.patch.
|
||||
- Testsuite changes:
|
||||
+ Disable tests for static llvm: we don't ship the static libs.
|
||||
+ Add cmake(Qt5LinguistTools), libwmf-devel BuildRequires and
|
||||
zlib-devel-static: new dependencies for various tests.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 22 17:47:29 UTC 2017 - sor.alexei@meowr.ru
|
||||
|
||||
- Require python3-xml: mesonbuild/modules/qt5.py imports the xml
|
||||
module (boo#1068818).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 23 12:30:03 UTC 2017 - dimstar@opensuse.org
|
||||
|
||||
- Setup MPI runtime environment before running the test suite.
|
||||
- Remove tests for static boost libraries from
|
||||
test\ cases/frameworks/1\ boost/meson.build.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Oct 19 15:00:49 UTC 2017 - badshah400@gmail.com
|
||||
|
||||
- Update to version 0.43.0:
|
||||
+ Generator learned capture: Generators can now be configured to
|
||||
capture the standard output.
|
||||
+ Can index CustomTarget objects: The CustomTarget object can
|
||||
now be indexed like an array. The resulting object can be used
|
||||
as a source file for other Targets, this will create a
|
||||
dependency on the original CustomTarget, but will only insert
|
||||
the generated file corresponding to the index value of the
|
||||
CustomTarget's output keyword.
|
||||
+ The cross file can now be used for overriding the result of
|
||||
find_program. Then issuing the command find_program('objdump')
|
||||
will return the version specified in the cross file.
|
||||
+ Easier handling of supported compiler arguments.
|
||||
+ Better support for shared libraries in non-system paths: This
|
||||
release adds feature parity to shared libraries that are
|
||||
either in non-standard system paths or shipped as part of your
|
||||
project. On systems that support rpath, Meson automatically
|
||||
adds rpath entries to built targets using manually found
|
||||
external libraries.
|
||||
+ The Wrap dependency system now supports Subversion (svn). This
|
||||
support is rudimentary. The repository url has to point to a
|
||||
specific (sub)directory containing the meson.build file
|
||||
(typically trunk/). However, providing a revision is
|
||||
supported.
|
||||
- Rebase meson-test-installed-bin.patch.
|
||||
- Run sed to strip the hashbang from a non-executable file; this
|
||||
prevents an rpmlint warning.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 11 15:43:16 UTC 2017 - sor.alexei@meowr.ru
|
||||
|
||||
- Don't use obsolete boost-devel for openSUSE Leap 15.0 and newer
|
||||
(boo#1062785).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 2 14:53:40 CEST 2017 - jdelvare@suse.com
|
||||
|
||||
- Update to version 0.42.1. This is a stable update with various
|
||||
bug fixes.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Sep 8 12:22:38 UTC 2017 - sor.alexei@meowr.ru
|
||||
|
||||
- Rebase meson-fix-gcc48.patch (boo#1057701).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 15 11:00:02 UTC 2017 - dimstar@opensuse.org
|
||||
|
||||
- Extend meson-test-installed-bin.patch: catch some more cases
|
||||
where the test suite referenced meson.py from the source
|
||||
directory.
|
||||
- Add vulkan-devel and libpcap-devel BuildRequires for the test
|
||||
suite: new dependencies.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 15 09:35:51 UTC 2017 - zaitor@opensuse.org
|
||||
|
||||
- Update to version 0.42.0:
|
||||
+ Distribution tarballs from Mercurial repositories. Creating
|
||||
distribution tarballs can now be made out of projects based on
|
||||
Mercurial. As before, this remains possible only with the Ninja
|
||||
backend.
|
||||
+ Keyword argument verification. Meson will now check the keyword
|
||||
arguments used when calling any function and print a warning if
|
||||
any of the keyword arguments is not known. In the future this
|
||||
will become a hard error.
|
||||
+ Add support for Genie to Vala compiler. The Vala compiler has
|
||||
an alternative syntax, Genie, that uses the .gs file extension.
|
||||
Meson now recognises and uses Genie files.
|
||||
+ Pkgconfig support for additional cflags. The Pkgconfig module
|
||||
object can add arbitrary extra cflags to the Cflags value in
|
||||
the .pc file, using the "extra_cflags" keyword.
|
||||
+ Base options accessible via get_option(). Base options are now
|
||||
accessible via the get_option() function.
|
||||
+ Allow crate type configuration for Rust compiler. Rust targets
|
||||
now take an optional rust_crate_type keyword, allowing you to
|
||||
set the crate type of the resulting artifact. Valid crate types
|
||||
are dylib or cdylib for shared libraries, and rlib or staticlib
|
||||
for static libraries. For more, see Rust's linkage reference.
|
||||
+ Simultaneous use of Address- and Undefined Behavior Sanitizers.
|
||||
Both the address- and undefined behavior sanitizers can now be
|
||||
used simultaneously by passing -Db_sanitize=address,undefined
|
||||
to Meson.
|
||||
+ Unstable SIMD module. A new experimental module to compile code
|
||||
with many different SIMD instruction sets and selecting the
|
||||
best one at runtime. This module is unstable, meaning it's API
|
||||
is subject to change in later releases. It might also be
|
||||
removed altogether.
|
||||
+ Import libraries for executables on Windows. The new keyword
|
||||
implib to executable() allows generation of an import library
|
||||
for the executable.
|
||||
+ Added build_rpath keyword argument. You can specify
|
||||
build_rpath: '/foo/bar' in build targets and the given path
|
||||
will get added to the target's rpath in the build tree. It is
|
||||
removed during the install step.
|
||||
+ Meson will print a warning when the user tries to add an rpath
|
||||
linker flag manually, e.g. via link_args to a target. This is
|
||||
not recommended because having multiple rpath causes them to
|
||||
stomp on each other. This warning will become a hard error in
|
||||
some future release.
|
||||
+ Vulkan dependency module. Vulkan can now be used as native
|
||||
dependency. The dependency module will detect the VULKAN_SDK
|
||||
environment variable or otherwise try to receive the vulkan
|
||||
library and header via pkgconfig or from the system.
|
||||
+ Limiting the maximum number of linker processes. With the Ninja
|
||||
backend it is now possible to limit the maximum number of
|
||||
concurrent linker processes. This is usually only needed for
|
||||
projects that have many large link steps that cause the system
|
||||
to run out of memory if they are run in parallel. This limit
|
||||
can be set with the new backend_max_links option.
|
||||
+ Disable implicit include directories. By default Meson adds the
|
||||
current source and build directories to the header search path.
|
||||
On some rare occasions this is not desired. Setting the
|
||||
implicit_include_directories keyword argument to false these
|
||||
directories are not used.
|
||||
+ Support for MPI dependency. MPI is now supported as a
|
||||
dependency. Because dependencies are language-specific, you
|
||||
must specify the requested language with the language keyword,
|
||||
i.e., dependency('mpi', language='c') will request the C MPI
|
||||
headers and libraries. See the MPI dependency for more
|
||||
information.
|
||||
+ Allow excluding files or directories from install_subdir. The
|
||||
install_subdir command accepts the new exclude_files and
|
||||
exclude_directories keyword arguments that allow specified
|
||||
files or directories to be excluded from the installed
|
||||
subdirectory.
|
||||
+ Make all Meson functionality invokable via the main executable.
|
||||
Previously Meson had multiple executables such as
|
||||
mesonintrospect and mesontest. They are now invokable via the
|
||||
main Meson executable like this: meson configure <arguments> #
|
||||
equivalent to mesonconf <options> meson test <arguments> #
|
||||
equivalent to mesontest <arguments> The old commands are still
|
||||
available but they are deprecated and will be removed in some
|
||||
future release.
|
||||
+ Pcap dependency detector. Meson will automatically obtain
|
||||
dependency information for pcap using the pcap-config tool. It
|
||||
is used like any other dependency.
|
||||
+ GNOME module mkenums_simple() addition. Most libraries and
|
||||
applications use the same standard templates for glib-mkenums.
|
||||
There is now a new mkenums_simple() convenience method that
|
||||
passes those default templates to glib-mkenums and allows some
|
||||
tweaks such as optional function decorators or leading
|
||||
underscores.
|
||||
- Rebase meson-fix-gcc48.patch and meson-test-installed-bin.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Jul 22 13:55:52 UTC 2017 - mailaender@opensuse.org
|
||||
|
||||
- Update to version 0.41.2:
|
||||
+ Various gtkdoc fixes.
|
||||
+ Fix how rpath directories are handled.
|
||||
+ pkgconfig: avoid appending slash at Cflags.
|
||||
+ Fix a missing path issue causing Python traceback.
|
||||
+ Qt4 support.
|
||||
+ Skip handling non-available dependencies.
|
||||
+ vala: Only add --use-header for unity builds regression.
|
||||
+ Tag functions in asm properly.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 27 14:19:46 UTC 2017 - rodrigo.z.lourenco@tecnico.ulisboa.pt
|
||||
|
||||
- Add a vim subpackage to add Meson support to Vim.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 23 21:47:40 UTC 2017 - dimstar@opensuse.org
|
||||
|
||||
- Split testsuite into an own package, in order to keep the build
|
||||
dep chain of meson minimal.
|
||||
- Drop meson-disable-untested-code.patch: no longer required.
|
||||
- Add meson-test-installed-bin.patch: use /usr/bin/meson instead of
|
||||
meson.py from the source tarball. We want to test the meson
|
||||
binary package we produced, not the sources directly.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 23 19:27:31 UTC 2017 - dimstar@opensuse.org
|
||||
|
||||
- Update to version 0.41.1:
|
||||
+ wxwidgets: Fix usage of multiple dependency() calls.
|
||||
+ Make external library no-op when used with incompatible
|
||||
target (gh#mesonbuild/meson#1941).
|
||||
+ Failing test for -D dedupping.
|
||||
+ Preserve standalone -D arguments always.
|
||||
+ Handle both pkg-config and pkgconf argument order
|
||||
(gh#mesonbuild/meson#1934).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 23 13:56:37 UTC 2017 - dimstar@opensuse.org
|
||||
|
||||
- Update meson-suse-ify-macros.patch: export LANG for all macros.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 19 12:35:49 UTC 2017 - rpm@fthiessen.de
|
||||
|
||||
- Update to version 0.41.0:
|
||||
* Native support for linking against LLVM using
|
||||
the dependency function.
|
||||
* Pkgconfig support for custom variables.
|
||||
* A target for creating tarballs using 'ninja dist'.
|
||||
* Support for passing arguments to Rust compiler.
|
||||
* All known issues regarding reproducible builds are fixed.
|
||||
* Extended template substitution in configure_file
|
||||
for @BASENAME@ and @PLAINNAME@ .
|
||||
* Support for capturing stdout of a command in configure_file.
|
||||
- Removed SDL2 test to reduce dependencies (smaller build footprint)
|
||||
- Dropped upstreamed patch meson-handle-skipped-tests.patch
|
||||
- Rebased meson-suse-ify-macros.patch and meson-fix-gcc48.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 6 13:08:19 UTC 2017 - dimstar@opensuse.org
|
||||
|
||||
- Make the build footprint smaller to enter ring1: This means we
|
||||
skip a couple tests though. Removed BuildRequires: java-devel,
|
||||
libqt5-qtbase-devel, mono-core, mono-devel, wxWidgets-devel,
|
||||
pkgconfig(protobuf) and pkgconfig(gtk+-3.0).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 17 20:26:25 UTC 2017 - dimstar@opensuse.org
|
||||
|
||||
- Add meson-handle-skipped-tests.patch: Actually do skip tests that
|
||||
are marked as MESON_SKIP_TEST (gh#mesonbuild/meson#1804).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 8 07:53:20 UTC 2017 - dimstar@opensuse.org
|
||||
|
||||
- Update to version 0.40.1:
|
||||
+ Outputs of generators can be used in custom targets in the VS
|
||||
backend.
|
||||
+ Visual Studio 2017 support.
|
||||
+ Automatic initialization of subprojects that are git
|
||||
submodules.
|
||||
+ No download mode for wraps.
|
||||
+ Overriding options per target.
|
||||
+ Compiler object get define.
|
||||
+ Cygwin support.
|
||||
+ Multiple install directories.
|
||||
+ Can specify method of obtaining dependencies.
|
||||
+ Link whole contents of static libraries.
|
||||
+ Unity builds only for subprojects.
|
||||
+ Running mesonintrospect from scripts.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Mar 20 11:21:10 UTC 2017 - dimstar@opensuse.org
|
||||
|
||||
- Add meson-disable-untested-code.patch: meson has code in the test
|
||||
suite that assumes different behaviour between glib 2.51.5 (rc)
|
||||
and 2.52.0 (final); this must be a wrong assumption to start with
|
||||
and the test suite fails with 2.52.0. When this was added by
|
||||
upstream 4 months before glib-2.52.0 was released, there must
|
||||
have been no way at all to test this. We revert back to a state
|
||||
like with the previous glib verison, where this test was simply
|
||||
skipped (gh#mesonbuild/meson#1480).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 16 11:04:13 UTC 2017 - sor.alexei@meowr.ru
|
||||
|
||||
- Update to version 0.39.1 (changes since 0.38.1):
|
||||
* Allow specifying extra arguments for tests.
|
||||
* Bug fixes and minor polishes.
|
||||
- Add meson-fix-gcc48.patch: fix GCC 4.8 handling for
|
||||
openSUSE Leap 42.x.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Mar 4 14:50:28 UTC 2017 - dimstar@opensuse.org
|
||||
|
||||
- Update to version 0.38.1:
|
||||
+ New Uninstall target.
|
||||
+ Support for arbitrary test setups.
|
||||
+ Intel C/C++ compiler support.
|
||||
+ Get values from configuration data objects.
|
||||
+ Python 3 module support simplified.
|
||||
+ Default options to subprojects.
|
||||
+ Set targets to be built (or not) by default.
|
||||
+ Add option to mesonconf to wipe cached data.
|
||||
+ Can specify file permissions and owner when installing data.
|
||||
+ has_header() checks are now faster.
|
||||
+ Array indexing now supports fallback values.
|
||||
+ Silent mode for Mesontest.
|
||||
- Rebase meson-suse-ify-macros.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jan 10 16:14:32 UTC 2017 - dimstar@opensuse.org
|
||||
|
||||
- Add meson-suse-ify-macros.patch: Make the meson macros also work
|
||||
on openSUSE. We do not (yet?) have separate macros for CFLAGS,
|
||||
CXXFLAGS, FFLAGS and LDFLAGS, but only carry optflags. This is no
|
||||
issue, since openSUSE so far only added flags that work accross
|
||||
compilers/languages. This might change in the future, making the
|
||||
patch obsolete.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jan 1 12:51:36 UTC 2017 - sor.alexei@meowr.ru
|
||||
|
||||
- Update to version 0.37.1:
|
||||
* No changelog available.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jan 1 11:38:34 UTC 2017 - jengelh@inai.de
|
||||
|
||||
- Trim boasting words from descriptions. Add to description two
|
||||
points from the feature list.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Dec 19 05:55:00 UTC 2016 - dev@antergos.com
|
||||
|
||||
- Update to version 0.37.0:
|
||||
* Mesontest: a new testing tool that allows you to run your
|
||||
tests in many different ways.
|
||||
* New shared_module function allows shared modules creation.
|
||||
* GNOME module now detects required programs and prints useful
|
||||
errors if any are missing.
|
||||
* GNOME module uses depfile support available in GLib >= 2.52.0.
|
||||
* i18n module has a new merge_file() function for creating
|
||||
translated files.
|
||||
* LLVM IR compilation is now supported.
|
||||
* .wrap files for subprojects can now include a separate push
|
||||
URL to allow developers to push changes directly from a
|
||||
subproject git checkout.
|
||||
* Multiple version restrictions while searching for pkg-config
|
||||
dependencies is now supported.
|
||||
* Support for localstatedir has been added.
|
||||
* You can now pass arguments to install scripts added with
|
||||
meson.add_install_script().
|
||||
* Added new options sbindir and infodir that can be used for
|
||||
installation.
|
||||
- Remove meson-0.36.0-fix-old-pkgconfig-test.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Dec 10 20:38:23 UTC 2016 - sor.alexei@meowr.ru
|
||||
|
||||
- Add meson-0.36.0-fix-old-pkgconfig-test.patch: tests/common/51:
|
||||
Skip validate if pkg-config is too old (commit 2f804e9).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Nov 22 15:04:05 UTC 2016 - dimstar@opensuse.org
|
||||
|
||||
- Update to version 0.36.0:
|
||||
+ Add option to run under gdb.
|
||||
+ Always specify installed data with a File object
|
||||
(gh#mesonbuild/meson#858).
|
||||
+ Made has_function survive optimization flags
|
||||
(gh#mesonbuild/meson#1053).
|
||||
+ Can give many alternative names to find_program to simplify
|
||||
searching.
|
||||
+ Can set compiler arguments in Java.
|
||||
- Export SUSE_ASNEEDED=0 when running the test suite: linking the
|
||||
test libraries/binaries is not done optimally.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 18 20:43:34 UTC 2016 - sor.alexei@meowr.ru
|
||||
|
||||
- Update to version 0.35.1:
|
||||
* No changelog available.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 14 20:46:56 UTC 2016 - zaitor@opensuse.org
|
||||
|
||||
- Update to version 0.35.0:
|
||||
+ No changelog available from upstream.
|
||||
- Changes from version 0.34.0:
|
||||
+ No changelog available from upstream.
|
||||
- Drop meson-633.patch and meson-typelib-install.patch : Fixed
|
||||
upstream.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 15:43:57 UTC 2016 - dimstar@opensuse.org
|
||||
|
||||
- Update to version 0.33.0:
|
||||
+ Correctly install .typelib files to libdir.
|
||||
+ Add option for as-needed link option.
|
||||
+ Print the CFLAGS/LDFLAGS/etc inherited from the environment.
|
||||
+ Only append compile flags to the link flags when appropriate.
|
||||
- Add meson-633.patch: Handle both DT_RPATH as well as DT_RUNPATH
|
||||
when fixing rpath settings (gh#mesonbuild/meson#663).
|
||||
- Add meson-typelib-install.patch: Fix installation path for
|
||||
gpobject introspection typelib files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Jul 23 16:15:39 UTC 2016 - sor.alexei@meowr.ru
|
||||
|
||||
- Update to version 0.32.0:
|
||||
* No changelog available.
|
||||
- Remove meson-gui package: GUI was removed upstream.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 9 16:47:26 UTC 2016 - jengelh@inai.de
|
||||
|
||||
- Avoid unnecessary bashism in %install script (run with /bin/sh)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat May 7 07:12:54 UTC 2016 - sor.alexei@meowr.ru
|
||||
|
||||
- Update to version 0.31.0.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Feb 11 16:26:54 UTC 2016 - sor.alexei@meowr.ru
|
||||
|
||||
- Update to 0.29.0.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Dec 29 05:32:40 UTC 2015 - sor.alexei@meowr.ru
|
||||
|
||||
- Update to 0.28.0.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Dec 4 10:29:26 UTC 2015 - sor.alexei@meowr.ru
|
||||
|
||||
- Update to 0.27.0.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Sep 13 10:21:57 UTC 2015 - sor.alexei@meowr.ru
|
||||
|
||||
- Update to 0.26.0.
|
||||
- Use signed tarball.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 12 21:02:38 UTC 2015 - sor.alexei@meowr.ru
|
||||
|
||||
- Initial package based on the work of Igor Gnatenko.
|
@ -1,219 +0,0 @@
|
||||
#
|
||||
# spec file for package meson-testsuite
|
||||
#
|
||||
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define testsuite 1
|
||||
%if %{testsuite}
|
||||
%define name_ext -testsuite
|
||||
%else
|
||||
%define name_ext %{nil}
|
||||
%endif
|
||||
%define _name mesonbuild
|
||||
Name: meson%{name_ext}
|
||||
Version: 0.48.2
|
||||
Release: 0
|
||||
Summary: Python-based build system
|
||||
License: Apache-2.0
|
||||
Group: Development/Tools/Building
|
||||
URL: http://mesonbuild.com/
|
||||
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-OPENSUSE meson-suse-ify-macros.patch dimstar@opensuse.org -- Make the macros non-RedHat specific: so far there are no separate {C,CXX,F}FLAGS.
|
||||
Patch0: meson-suse-ify-macros.patch
|
||||
# PATCH-FIX-OPENSUSE meson-test-installed-bin.patch dimstar@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-FIX-OPENSUSE meson-suse-fix-llvm-3.8.patch -- Fix LLVM 3.8 tests.
|
||||
Patch2: meson-suse-fix-llvm-3.8.patch
|
||||
# PATCH-FIX-OPENSUSE meson-restore-python3.4.patch -- Restore Python 3.4 support (reverts commit 0538009).
|
||||
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
|
||||
BuildRequires: cups-devel
|
||||
BuildRequires: flex
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: gcc-fortran
|
||||
BuildRequires: gcc-obj-c++
|
||||
BuildRequires: gcc-objc
|
||||
BuildRequires: gettext
|
||||
BuildRequires: git
|
||||
BuildRequires: gnustep-make
|
||||
BuildRequires: googletest-devel
|
||||
BuildRequires: gtk-doc
|
||||
BuildRequires: itstool
|
||||
BuildRequires: libjpeg-devel
|
||||
BuildRequires: libpcap-devel
|
||||
BuildRequires: libqt5-qtbase-private-headers-devel
|
||||
BuildRequires: libwmf-devel
|
||||
BuildRequires: llvm-devel
|
||||
BuildRequires: meson = %{version}
|
||||
BuildRequires: ncurses-devel
|
||||
BuildRequires: ninja
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: python3-devel >= 3.4
|
||||
BuildRequires: python3-gobject
|
||||
BuildRequires: vala
|
||||
BuildRequires: vulkan-devel
|
||||
BuildRequires: zlib-devel-static
|
||||
BuildRequires: cmake(Qt5Core)
|
||||
BuildRequires: cmake(Qt5Gui)
|
||||
BuildRequires: cmake(Qt5LinguistTools)
|
||||
BuildRequires: cmake(Qt5Widgets)
|
||||
BuildRequires: pkgconfig(glib-2.0)
|
||||
BuildRequires: pkgconfig(gobject-introspection-1.0)
|
||||
BuildRequires: pkgconfig(gtk+-3.0)
|
||||
BuildRequires: pkgconfig(sdl2)
|
||||
BuildRequires: pkgconfig(zlib)
|
||||
%if 0%{?suse_version} >= 1500
|
||||
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
|
||||
%else
|
||||
Requires: ninja
|
||||
Requires: python3-setuptools
|
||||
Requires: python3-xml
|
||||
# meson-gui was last used in openSUSE Leap 42.1.
|
||||
Provides: meson-gui = %{version}
|
||||
Obsoletes: meson-gui < %{version}
|
||||
%endif
|
||||
|
||||
%description
|
||||
Meson is a build system designed to optimise programmer productivity.
|
||||
It aims to do this by providing support for software development
|
||||
tools and practices, such as unit tests, coverage reports, Valgrind,
|
||||
CCache and the like. Supported languages include C, C++, Fortran,
|
||||
Java, Rust. Build definitions are written in a non-turing complete
|
||||
Domain Specific Language.
|
||||
|
||||
%package vim
|
||||
%{!?vim_data_dir:%global vim_data_dir %{_datadir}/vim}
|
||||
Summary: Vim support for meson.build files
|
||||
Group: Productivity/Text/Editors
|
||||
Requires: vim
|
||||
Supplements: packageand(vim:%{name})
|
||||
BuildArch: noarch
|
||||
|
||||
%description vim
|
||||
Meson is a build system designed to optimise programmer productivity.
|
||||
It aims to do this by providing support for software development
|
||||
tools and practices, such as unit tests, coverage reports, Valgrind,
|
||||
CCache and the like. Supported languages include C, C++, Fortran,
|
||||
Java, Rust. Build definitions are written in a non-turing complete
|
||||
Domain Specific Language.
|
||||
|
||||
This package provides support for meson.build files in Vim.
|
||||
|
||||
%prep
|
||||
%setup -q -n meson-%{version}
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%if 0%{?suse_version} < 1500
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%endif
|
||||
|
||||
# Remove static boost tests from test cases/frameworks/1 boost (can't use patch due to spaces in dirname)
|
||||
sed -i "/static/d" test\ cases/frameworks/1\ boost/meson.build
|
||||
|
||||
# Disable test of llvm-static libs: openSUSE does not package/ship them
|
||||
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 -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
|
||||
|
||||
%build
|
||||
# If this is the test suite, we don't need anything else but the meson package
|
||||
%if !%{testsuite}
|
||||
python3 setup.py build
|
||||
%else
|
||||
# Ensure we have no mesonbuild / meson in CWD, thus guaranteeing we use meson in $PATH
|
||||
rm -rf meson.py mesonbuild
|
||||
%endif
|
||||
|
||||
%install
|
||||
# If this is the test suite, we don't need anything else but the meson package
|
||||
%if ! %{testsuite}
|
||||
python3 setup.py install \
|
||||
--root=%{buildroot} --prefix=%{_prefix}
|
||||
|
||||
install -Dpm 0644 data/macros.meson \
|
||||
%{buildroot}%{_rpmconfigdir}/macros.d/macros.meson
|
||||
|
||||
install -Dpm 0644 data/syntax-highlighting/vim/ftdetect/meson.vim \
|
||||
-t %{buildroot}%{vim_data_dir}/site/ftdetect
|
||||
install -Dpm 0644 data/syntax-highlighting/vim/indent/meson.vim \
|
||||
-t %{buildroot}%{vim_data_dir}/site/indent
|
||||
install -Dpm 0644 data/syntax-highlighting/vim/syntax/meson.vim \
|
||||
-t %{buildroot}%{vim_data_dir}/site/syntax
|
||||
%endif
|
||||
|
||||
%if %{testsuite}
|
||||
%check
|
||||
export LANG=C.UTF-8
|
||||
export MESON_EXE=%{_bindir}/meson
|
||||
export MESON_PRINT_TEST_OUTPUT=1
|
||||
export SUSE_ASNEEDED=0
|
||||
python3 run_tests.py
|
||||
%endif
|
||||
|
||||
%files
|
||||
%license COPYING
|
||||
%if !%{testsuite}
|
||||
%{_bindir}/meson
|
||||
%{python3_sitelib}/%{_name}/
|
||||
%{python3_sitelib}/meson-*
|
||||
%dir %{_datadir}/polkit-1/
|
||||
%dir %{_datadir}/polkit-1/actions/
|
||||
%{_datadir}/polkit-1/actions/com.mesonbuild.install.policy
|
||||
%{_rpmconfigdir}/macros.d/macros.meson
|
||||
%{_mandir}/man1/meson.1%{?ext_man}
|
||||
%endif
|
||||
|
||||
%if !%{testsuite}
|
||||
%files vim
|
||||
%doc data/syntax-highlighting/vim/README
|
||||
%dir %{vim_data_dir}
|
||||
%dir %{vim_data_dir}/site
|
||||
%dir %{vim_data_dir}/site/ftdetect
|
||||
%dir %{vim_data_dir}/site/indent
|
||||
%dir %{vim_data_dir}/site/syntax
|
||||
%{vim_data_dir}/site/ftdetect/meson.vim
|
||||
%{vim_data_dir}/site/indent/meson.vim
|
||||
%{vim_data_dir}/site/syntax/meson.vim
|
||||
%endif
|
||||
|
||||
%changelog
|
@ -1,3 +1,58 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Jan 17 11:57:17 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
|
||||
|
||||
- Switch to distutils build and properly create egg-info
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 16 11:20:15 UTC 2019 - Dominique Leuenberger <dimstar@opensuse.org>
|
||||
|
||||
- Add meson-no-lrelease.patch: Don't require lrelease for qt.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 9 14:00:46 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
|
||||
|
||||
- Remove succeeding supposed failing gtest test that checks
|
||||
gtest version, openSUSE ships the .pc file with the actual
|
||||
informations
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 9 13:24:56 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
|
||||
|
||||
- Make sure the tests stop on the failure and output the failing
|
||||
test at the end for easier digging
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 9 12:47:37 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
|
||||
|
||||
- Make the setuptools conditional so I can quickly switch around
|
||||
and verify things
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 9 09:19:05 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
|
||||
|
||||
- Switch the package to use _multibuild rather than multiple
|
||||
spec files
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jan 8 14:06:25 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
|
||||
|
||||
- Use distutils to build/run rather than setuptools to reduce
|
||||
buildcycle
|
||||
- Add patch to be able to build and install using distutils instead
|
||||
of full setuptools:
|
||||
* meson-distutils.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Dec 11 06:02:55 UTC 2018 - sor.alexei@meowr.ru
|
||||
|
||||
- Update to version 0.49.0:
|
||||
* See https://mesonbuild.com/Release-notes-for-0-49-0.html
|
||||
- Rebase meson-test-installed-bin.patch.
|
||||
- Rebase meson-suse-fix-llvm-3.8.patch,
|
||||
meson-restore-python3.4.patch.
|
||||
- Add more testsuite dependencies: clang, java-headless,
|
||||
mono(csharp), wxWidgets-any-devel.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 12 23:52:33 UTC 2018 - sor.alexei@meowr.ru
|
||||
|
||||
|
138
meson.spec
138
meson.spec
@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package meson-testsuite
|
||||
# spec file for package meson
|
||||
#
|
||||
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@ -16,15 +16,19 @@
|
||||
#
|
||||
|
||||
|
||||
%define testsuite 0
|
||||
%if %{testsuite}
|
||||
%define name_ext -testsuite
|
||||
%global flavor @BUILD_FLAVOR@%{nil}
|
||||
%if "%{flavor}" == "test"
|
||||
%define name_ext -test
|
||||
%bcond_without test
|
||||
%else
|
||||
%define name_ext %{nil}
|
||||
%bcond_with test
|
||||
%endif
|
||||
%define _name mesonbuild
|
||||
%{!?vim_data_dir:%global vim_data_dir %{_datadir}/vim}
|
||||
%bcond_with setuptools
|
||||
Name: meson%{name_ext}
|
||||
Version: 0.48.2
|
||||
Version: 0.49.0
|
||||
Release: 0
|
||||
Summary: Python-based build system
|
||||
License: Apache-2.0
|
||||
@ -37,18 +41,33 @@ Source2: meson.keyring
|
||||
Patch0: meson-suse-ify-macros.patch
|
||||
# PATCH-FIX-OPENSUSE meson-test-installed-bin.patch dimstar@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-FIX-OPENSUSE meson-suse-fix-llvm-3.8.patch -- Fix LLVM 3.8 tests.
|
||||
Patch2: meson-suse-fix-llvm-3.8.patch
|
||||
# PATCH-FIX-OPENSUSE meson-restore-python3.4.patch -- Restore Python 3.4 support (reverts commit 0538009).
|
||||
Patch3: meson-restore-python3.4.patch
|
||||
Patch2: meson-restore-python3.4.patch
|
||||
# PATCH-FIX-OPENSUSE meson-suse-fix-llvm-3.8.patch -- Fix LLVM 3.8 tests.
|
||||
Patch3: meson-suse-fix-llvm-3.8.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
|
||||
|
||||
# PATCH-FEATURE-OPENSUSE meson-distutils.patch tchvatal@suse.com -- build and install using distutils instead of full setuptools
|
||||
Patch5: meson-distutils.patch
|
||||
# PATCH-FIX-UPSTREAM meson-no-lrelease.patch dimstar@opensuse.org -- Don't require lrelease for qt
|
||||
Patch6: meson-no-lrelease.patch
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: python-rpm-macros
|
||||
BuildRequires: python3-base
|
||||
BuildRequires: python3-setuptools
|
||||
BuildArch: noarch
|
||||
%if %{testsuite}
|
||||
%if %{with setuptools}
|
||||
BuildRequires: python3-setuptools
|
||||
Requires: python3-setuptools
|
||||
%endif
|
||||
%if !%{with test}
|
||||
Requires: ninja
|
||||
Requires: python3-base
|
||||
# meson-gui was last used in openSUSE Leap 42.1.
|
||||
Provides: meson-gui = %{version}
|
||||
Obsoletes: meson-gui < %{version}
|
||||
%else
|
||||
BuildRequires: bison
|
||||
BuildRequires: clang
|
||||
BuildRequires: cups-devel
|
||||
BuildRequires: flex
|
||||
BuildRequires: gcc-c++
|
||||
@ -59,21 +78,18 @@ BuildRequires: gettext
|
||||
BuildRequires: git
|
||||
BuildRequires: gnustep-make
|
||||
BuildRequires: googletest-devel
|
||||
BuildRequires: gtk-doc
|
||||
BuildRequires: itstool
|
||||
BuildRequires: libjpeg-devel
|
||||
BuildRequires: libpcap-devel
|
||||
BuildRequires: libqt5-qtbase-common-devel
|
||||
BuildRequires: libqt5-qtbase-private-headers-devel
|
||||
BuildRequires: libwmf-devel
|
||||
BuildRequires: llvm-devel
|
||||
BuildRequires: meson = %{version}
|
||||
BuildRequires: ncurses-devel
|
||||
BuildRequires: ninja
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: python3-devel >= 3.4
|
||||
BuildRequires: python2-devel
|
||||
BuildRequires: python3-gobject
|
||||
BuildRequires: vala
|
||||
BuildRequires: vulkan-devel
|
||||
BuildRequires: zlib-devel-static
|
||||
BuildRequires: cmake(Qt5Core)
|
||||
BuildRequires: cmake(Qt5Gui)
|
||||
@ -82,25 +98,31 @@ BuildRequires: cmake(Qt5Widgets)
|
||||
BuildRequires: pkgconfig(glib-2.0)
|
||||
BuildRequires: pkgconfig(gobject-introspection-1.0)
|
||||
BuildRequires: pkgconfig(gtk+-3.0)
|
||||
BuildRequires: pkgconfig(gtk-doc)
|
||||
BuildRequires: pkgconfig(ncurses)
|
||||
BuildRequires: pkgconfig(python3) >= 3.4
|
||||
BuildRequires: pkgconfig(sdl2)
|
||||
BuildRequires: pkgconfig(vapigen)
|
||||
BuildRequires: pkgconfig(vulkan)
|
||||
BuildRequires: pkgconfig(zlib)
|
||||
%if 0%{?suse_version} >= 1500
|
||||
BuildRequires: java-headless
|
||||
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
|
||||
BuildRequires: wxWidgets-any-devel
|
||||
# csharp is not on s390 machines
|
||||
%ifnarch s390x
|
||||
BuildRequires: mono(csharp)
|
||||
%endif
|
||||
%else
|
||||
Requires: ninja
|
||||
Requires: python3-setuptools
|
||||
Requires: python3-xml
|
||||
# meson-gui was last used in openSUSE Leap 42.1.
|
||||
Provides: meson-gui = %{version}
|
||||
Obsoletes: meson-gui < %{version}
|
||||
BuildRequires: boost-devel
|
||||
BuildRequires: mono-core
|
||||
BuildRequires: wxWidgets-devel
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%description
|
||||
@ -112,7 +134,6 @@ Java, Rust. Build definitions are written in a non-turing complete
|
||||
Domain Specific Language.
|
||||
|
||||
%package vim
|
||||
%{!?vim_data_dir:%global vim_data_dir %{_datadir}/vim}
|
||||
Summary: Vim support for meson.build files
|
||||
Group: Productivity/Text/Editors
|
||||
Requires: vim
|
||||
@ -138,8 +159,12 @@ This package provides support for meson.build files in Vim.
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%endif
|
||||
%if !%{with setuptools}
|
||||
%patch5 -p1
|
||||
%endif
|
||||
%patch6 -p1
|
||||
|
||||
# Remove static boost tests from test cases/frameworks/1 boost (can't use patch due to spaces in dirname)
|
||||
# Remove static boost tests from "test cases/frameworks/1 boost/".
|
||||
sed -i "/static/d" test\ cases/frameworks/1\ boost/meson.build
|
||||
|
||||
# Disable test of llvm-static libs: openSUSE does not package/ship them
|
||||
@ -155,44 +180,61 @@ sed -i "/def test_generate_gir_with_address_sanitizer/s/$/\n raise unitte
|
||||
# Remove hashbang from non-exec script
|
||||
sed -i '1{/\/usr\/bin\/env/d;}' ./mesonbuild/rewriter.py
|
||||
|
||||
# remove gtest check that actually works because our gtest has .pc files
|
||||
rm -rf test\ cases/failing/85\ gtest\ dependency\ with\ version
|
||||
|
||||
%build
|
||||
# If this is the test suite, we don't need anything else but the meson package
|
||||
%if !%{testsuite}
|
||||
python3 setup.py build
|
||||
%if !%{with test}
|
||||
%python3_build
|
||||
%else
|
||||
# FIXME: you should use %%meson macros
|
||||
# Ensure we have no mesonbuild / meson in CWD, thus guaranteeing we use meson in $PATH
|
||||
rm -rf meson.py mesonbuild
|
||||
rm -r meson.py mesonbuild
|
||||
%endif
|
||||
|
||||
%install
|
||||
# If this is the test suite, we don't need anything else but the meson package
|
||||
%if ! %{testsuite}
|
||||
python3 setup.py install \
|
||||
--root=%{buildroot} --prefix=%{_prefix}
|
||||
%if !%{with test}
|
||||
%python3_install
|
||||
%fdupes %{buildroot}%{python3_sitelib}
|
||||
|
||||
install -Dpm 0644 data/macros.meson \
|
||||
%{buildroot}%{_rpmconfigdir}/macros.d/macros.meson
|
||||
|
||||
install -Dpm 0644 data/syntax-highlighting/vim/ftdetect/meson.vim \
|
||||
-t %{buildroot}%{vim_data_dir}/site/ftdetect
|
||||
-t %{buildroot}%{vim_data_dir}/site/ftdetect/
|
||||
install -Dpm 0644 data/syntax-highlighting/vim/indent/meson.vim \
|
||||
-t %{buildroot}%{vim_data_dir}/site/indent
|
||||
-t %{buildroot}%{vim_data_dir}/site/indent/
|
||||
install -Dpm 0644 data/syntax-highlighting/vim/syntax/meson.vim \
|
||||
-t %{buildroot}%{vim_data_dir}/site/syntax
|
||||
-t %{buildroot}%{vim_data_dir}/site/syntax/
|
||||
|
||||
# entry points are not distutils-able
|
||||
%if !%{with setuptools}
|
||||
mkdir -p %{buildroot}%{_bindir}
|
||||
echo """#!%{_bindir}/python3
|
||||
import sys
|
||||
|
||||
from mesonbuild.mesonmain import main
|
||||
sys.exit(main())
|
||||
""" > %{buildroot}%{_bindir}/%{name}
|
||||
chmod +x %{buildroot}%{_bindir}/%{name}
|
||||
|
||||
# ensure egg-info is a directory
|
||||
rm %{buildroot}%{python3_sitelib}/*.egg-info
|
||||
cp -r meson.egg-info %{buildroot}%{python3_sitelib}/meson-%{version}-py%{python3_version}.egg-info
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if %{testsuite}
|
||||
%if %{with test}
|
||||
%check
|
||||
export LANG=C.UTF-8
|
||||
export MESON_EXE=%{_bindir}/meson
|
||||
export MESON_PRINT_TEST_OUTPUT=1
|
||||
export SUSE_ASNEEDED=0
|
||||
python3 run_tests.py
|
||||
python3 run_tests.py --failfast
|
||||
%endif
|
||||
|
||||
%files
|
||||
%license COPYING
|
||||
%if !%{testsuite}
|
||||
%if !%{with test}
|
||||
%{_bindir}/meson
|
||||
%{python3_sitelib}/%{_name}/
|
||||
%{python3_sitelib}/meson-*
|
||||
@ -201,16 +243,14 @@ python3 run_tests.py
|
||||
%{_datadir}/polkit-1/actions/com.mesonbuild.install.policy
|
||||
%{_rpmconfigdir}/macros.d/macros.meson
|
||||
%{_mandir}/man1/meson.1%{?ext_man}
|
||||
%endif
|
||||
|
||||
%if !%{testsuite}
|
||||
%files vim
|
||||
%doc data/syntax-highlighting/vim/README
|
||||
%dir %{vim_data_dir}
|
||||
%dir %{vim_data_dir}/site
|
||||
%dir %{vim_data_dir}/site/ftdetect
|
||||
%dir %{vim_data_dir}/site/indent
|
||||
%dir %{vim_data_dir}/site/syntax
|
||||
%dir %{vim_data_dir}/
|
||||
%dir %{vim_data_dir}/site/
|
||||
%dir %{vim_data_dir}/site/ftdetect/
|
||||
%dir %{vim_data_dir}/site/indent/
|
||||
%dir %{vim_data_dir}/site/syntax/
|
||||
%{vim_data_dir}/site/ftdetect/meson.vim
|
||||
%{vim_data_dir}/site/indent/meson.vim
|
||||
%{vim_data_dir}/site/syntax/meson.vim
|
||||
|
@ -1,5 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
sed meson.spec -e "s:%define testsuite 0:%define testsuite 1:" > meson-testsuite.spec
|
||||
cp meson.changes meson-testsuite.changes
|
||||
|
Loading…
Reference in New Issue
Block a user