forked from pool/meson
Accepting request 1306173 from home:adkorte:testing
- Add 14976.patch: check for header only Boost libraries. OBS-URL: https://build.opensuse.org/request/show/1306173 OBS-URL: https://build.opensuse.org/package/show/devel:tools:building/meson?expand=0&rev=339
This commit is contained in:
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
||||
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
.osc
|
||||
61
14001.patch
Normal file
61
14001.patch
Normal file
@@ -0,0 +1,61 @@
|
||||
From 8679ea9525672d74030303be062d9545c92b5840 Mon Sep 17 00:00:00 2001
|
||||
From: solomoncyj <solomoncyj@gmail.com>
|
||||
Date: Sun, 15 Dec 2024 21:00:42 +0800
|
||||
Subject: [PATCH 1/2] feat: set up dependencies generation for fedora
|
||||
|
||||
---
|
||||
data/macros.meson | 5 +++++
|
||||
data/mesongenbuildreq.py | 16 ++++++++++++++++
|
||||
2 files changed, 21 insertions(+)
|
||||
create mode 100644 data/mesongenbuildreq.py
|
||||
|
||||
Index: meson-1.9.0/data/macros.meson
|
||||
===================================================================
|
||||
--- meson-1.9.0.orig/data/macros.meson
|
||||
+++ meson-1.9.0/data/macros.meson
|
||||
@@ -47,6 +47,11 @@
|
||||
%{?qemu_user_space_build: -t 10} \
|
||||
%{nil}}
|
||||
|
||||
+%meson_buildrequires \
|
||||
+ %{shrink: python3 %{_rpmconfigdir}/mesongenbuildreq %{__meson} \
|
||||
+ %{nil}}
|
||||
+
|
||||
+
|
||||
# Declarative buildsystem, requires RPM 4.20+ to work
|
||||
# https://rpm-software-management.github.io/rpm/manual/buildsystem.html
|
||||
%buildsystem_meson_conf() %meson %*
|
||||
Index: meson-1.9.0/data/mesongenbuildreq.py
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ meson-1.9.0/data/mesongenbuildreq.py
|
||||
@@ -0,0 +1,29 @@
|
||||
+import subprocess
|
||||
+import json
|
||||
+import sys
|
||||
+import os
|
||||
+
|
||||
+# Read ignored dependencies from ENV
|
||||
+ignore_deps = set(os.environ.get("BUILDREQ_IGNORE_DEP", "").split())
|
||||
+
|
||||
+# Run introspection command
|
||||
+deps_json = json.loads(
|
||||
+ subprocess.run([sys.argv[1], "introspect", "--dependencies", "meson.build"],
|
||||
+ capture_output=True, text=True).stdout
|
||||
+)
|
||||
+
|
||||
+# Build deps dictionary while skipping ignored libraries
|
||||
+deps = {entry['name']: entry['version'] for entry in deps_json if entry['name'] not in ignore_deps}
|
||||
+
|
||||
+# Output formatted build requirements
|
||||
+for lib, versions in deps.items():
|
||||
+ version_str = ' ' + ' '.join(versions) if versions else ''
|
||||
+ line = []
|
||||
+ for prefix in ["cmake", "pkgconfig", "qmake"]:
|
||||
+ buildreq = f"{prefix}({lib}){version_str}"
|
||||
+ # Strip trailing '=' if version was empty
|
||||
+ if buildreq.split('=')[-1] == '' and '=' in buildreq:
|
||||
+ buildreq = buildreq.split('=')[0]
|
||||
+ line.append(buildreq)
|
||||
+ print(f"({' or '.join(line)})")
|
||||
+
|
||||
89
14976.patch
Normal file
89
14976.patch
Normal file
@@ -0,0 +1,89 @@
|
||||
From 7fce7570c21899900a3a8a390c2332f602554924 Mon Sep 17 00:00:00 2001
|
||||
From: Jussi Pakkanen <jussi.pakkanen@mailbox.org>
|
||||
Date: Fri, 29 Aug 2025 14:57:06 +0300
|
||||
Subject: [PATCH 1/2] Check for header only Boost libraries.
|
||||
|
||||
---
|
||||
mesonbuild/dependencies/boost.py | 22 ++++++++++++++++++++--
|
||||
1 file changed, 20 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/mesonbuild/dependencies/boost.py b/mesonbuild/dependencies/boost.py
|
||||
index 662f9851b18c..e153e8f130f3 100644
|
||||
--- a/mesonbuild/dependencies/boost.py
|
||||
+++ b/mesonbuild/dependencies/boost.py
|
||||
@@ -452,6 +452,10 @@ def run_check(self, inc_dirs: T.List[BoostIncludeDir], lib_dirs: T.List[Path]) -
|
||||
break
|
||||
libs = sorted(set(libs))
|
||||
|
||||
+ any_libs_found = len(libs) > 0
|
||||
+ if not any_libs_found:
|
||||
+ return False
|
||||
+
|
||||
modules = ['boost_' + x for x in self.modules]
|
||||
for inc in inc_dirs:
|
||||
mlog.debug(f' - found boost {inc.version} include dir: {inc.path}')
|
||||
@@ -462,7 +466,7 @@ def run_check(self, inc_dirs: T.List[BoostIncludeDir], lib_dirs: T.List[Path]) -
|
||||
mlog.debug(f' - {j}')
|
||||
|
||||
# 3. Select the libraries matching the requested modules
|
||||
- not_found: T.List[str] = []
|
||||
+ not_found_as_libs: T.List[str] = []
|
||||
selected_modules: T.List[BoostLibraryFile] = []
|
||||
for mod in modules:
|
||||
found = False
|
||||
@@ -472,7 +476,21 @@ def run_check(self, inc_dirs: T.List[BoostIncludeDir], lib_dirs: T.List[Path]) -
|
||||
found = True
|
||||
break
|
||||
if not found:
|
||||
- not_found += [mod]
|
||||
+ not_found_as_libs += [mod]
|
||||
+
|
||||
+ # If a lib is not found, but an include directory exists,
|
||||
+ # assume it is a header only module.
|
||||
+ not_found: T.List[str] = []
|
||||
+ for boost_modulename in not_found_as_libs:
|
||||
+ assert boost_modulename.startswith('boost_')
|
||||
+ include_subdir = boost_modulename.replace('boost_', 'boost/', 1)
|
||||
+ headerdir_found = False
|
||||
+ for inc_dir in inc_dirs:
|
||||
+ if (inc_dir.path / include_subdir).is_dir():
|
||||
+ headerdir_found = True
|
||||
+ break
|
||||
+ if not headerdir_found:
|
||||
+ not_found.append(boost_modulename)
|
||||
|
||||
# log the result
|
||||
mlog.debug(' - found:')
|
||||
|
||||
From de29dd7b5187633e2dd774b2319636f5fc311b43 Mon Sep 17 00:00:00 2001
|
||||
From: Jussi Pakkanen <jussi.pakkanen@mailbox.org>
|
||||
Date: Fri, 29 Aug 2025 22:51:48 +0300
|
||||
Subject: [PATCH 2/2] Boost python must have a library component.
|
||||
|
||||
---
|
||||
mesonbuild/dependencies/boost.py | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/mesonbuild/dependencies/boost.py b/mesonbuild/dependencies/boost.py
|
||||
index e153e8f130f3..fdb35d432f58 100644
|
||||
--- a/mesonbuild/dependencies/boost.py
|
||||
+++ b/mesonbuild/dependencies/boost.py
|
||||
@@ -440,6 +440,8 @@ def run_check(self, inc_dirs: T.List[BoostIncludeDir], lib_dirs: T.List[Path]) -
|
||||
mlog.debug(' - potential library dirs: {}'.format([x.as_posix() for x in lib_dirs]))
|
||||
mlog.debug(' - potential include dirs: {}'.format([x.path.as_posix() for x in inc_dirs]))
|
||||
|
||||
+ must_have_library = ['boost_python']
|
||||
+
|
||||
# 2. Find all boost libraries
|
||||
libs: T.List[BoostLibraryFile] = []
|
||||
for i in lib_dirs:
|
||||
@@ -483,6 +485,9 @@ def run_check(self, inc_dirs: T.List[BoostIncludeDir], lib_dirs: T.List[Path]) -
|
||||
not_found: T.List[str] = []
|
||||
for boost_modulename in not_found_as_libs:
|
||||
assert boost_modulename.startswith('boost_')
|
||||
+ if boost_modulename in must_have_library:
|
||||
+ not_found.append(boost_modulename)
|
||||
+ continue
|
||||
include_subdir = boost_modulename.replace('boost_', 'boost/', 1)
|
||||
headerdir_found = False
|
||||
for inc_dir in inc_dirs:
|
||||
3
_multibuild
Normal file
3
_multibuild
Normal file
@@ -0,0 +1,3 @@
|
||||
<multibuild>
|
||||
<package>test</package>
|
||||
</multibuild>
|
||||
12
extend-test-timeout-on-qemu-builds.patch
Normal file
12
extend-test-timeout-on-qemu-builds.patch
Normal file
@@ -0,0 +1,12 @@
|
||||
Index: meson-1.7.0/data/macros.meson
|
||||
===================================================================
|
||||
--- meson-1.7.0.orig/data/macros.meson
|
||||
+++ meson-1.7.0/data/macros.meson
|
||||
@@ -44,6 +44,7 @@
|
||||
-C %{_vpath_builddir} \
|
||||
--num-processes %{_smp_build_ncpus} \
|
||||
--print-errorlogs \
|
||||
+ %{?qemu_user_space_build: -t 10} \
|
||||
%{nil}}
|
||||
|
||||
# Declarative buildsystem, requires RPM 4.20+ to work
|
||||
11
get_llvm_tool_names-llvm21.patch
Normal file
11
get_llvm_tool_names-llvm21.patch
Normal file
@@ -0,0 +1,11 @@
|
||||
--- a/mesonbuild/environment.py
|
||||
+++ b/mesonbuild/environment.py
|
||||
@@ -215,6 +215,8 @@ def get_llvm_tool_names(tool: str) -> T.List[str]:
|
||||
# unless it becomes a stable release.
|
||||
suffixes = [
|
||||
'', # base (no suffix)
|
||||
+ '-21.1', '211',
|
||||
+ '-21', '21',
|
||||
'-20.1', '20.1',
|
||||
'-20', '20',
|
||||
'-19.1', '19.1',
|
||||
BIN
meson-1.9.0.tar.gz
LFS
Normal file
BIN
meson-1.9.0.tar.gz
LFS
Normal file
Binary file not shown.
16
meson-1.9.0.tar.gz.asc
Normal file
16
meson-1.9.0.tar.gz.asc
Normal file
@@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQIzBAABCgAdFiEEGeLW2bRtjapiiPh3wk5jG6ux/nAFAmirREoACgkQwk5jG6ux
|
||||
/nBUmhAAoHEVPp23U0upYEevws83r4Pos2yAU6ULy9lHzsCRucc4HFgv0GSzBHgt
|
||||
x45VbKG1xfCJ8gQl/GxlLZCySIY9NeUCBcbzLFn34PkyqxQanOgUafE72bpONsDy
|
||||
+VNbRx6sNuQpFnqTPBnZ/e4q5Wi45pkxo3hVQi0h2QUChrc4wEL5y9rsi/zdkbjY
|
||||
JqCTcQ3X9+APFVwZoSlcZpvyU5ZC5etTVUcMaUwdEh1M6Y/yLoksty54oeq4zl+l
|
||||
PStapPuq+xHd3Gio4w1yoHlBuy9wHDdw+WqDeyUWcHq1ngCCsctvXzRDhM+tH7tR
|
||||
JVEF1Smz5x8O955QFTZyv9fsmHkBsxRTrxhIw/VFh2XHyH+2WCoEreaRhwGGZk7r
|
||||
v7iGxc0psK3All6VchoPzU3kvA1ZwC/u5om2Z6fkh79maBbXIr50hKuKEjZwJbnp
|
||||
bQ/azeNGUROrnJWCH4X9xYoKsky6TVtK4WC4WANUSKHpxsL+coz8jMudtFu70pYo
|
||||
PGIzLy3c+tXAg6zWgFJe2B1eNhORTTIYzSgi+U/dXku4eg3ipLy+UCuH8pl2AqgN
|
||||
JnLGeD6pwwKyM/aRxA6j0NhD71Rfl3H+CX1GJ8j3yTUQaNDa6oH/5Z0hDf5+BJFR
|
||||
jiZ+jI3SbU3gOg/DvfgS1GKyFIAMnllaLDZbikAv0+/0X7E11jI=
|
||||
=gc0A
|
||||
-----END PGP SIGNATURE-----
|
||||
21
meson-issue-15992.patch
Normal file
21
meson-issue-15992.patch
Normal file
@@ -0,0 +1,21 @@
|
||||
Index: meson-1.9.0/data/macros.meson
|
||||
===================================================================
|
||||
--- meson-1.9.0.orig/data/macros.meson
|
||||
+++ meson-1.9.0/data/macros.meson
|
||||
@@ -29,14 +29,14 @@
|
||||
%{shrink:%{__meson} compile \
|
||||
-C %{_vpath_builddir} \
|
||||
%{_smp_mflags} \
|
||||
- %{?__meson_verbose:--verbose} \
|
||||
+ %[ 0%{?__meson_verbose} ? "--verbose" : "" ] \
|
||||
%{nil}}
|
||||
|
||||
%meson_install \
|
||||
%{shrink:DESTDIR=%{buildroot} %{__meson} install \
|
||||
-C %{_vpath_builddir} \
|
||||
--no-rebuild \
|
||||
- %{!?__meson_verbose:--quiet} \
|
||||
+ %[ ! 0%{?__meson_verbose} ? "--quiet" : "" ] \
|
||||
%{nil}}
|
||||
|
||||
%meson_test \
|
||||
38
meson-test-installed-bin.patch
Normal file
38
meson-test-installed-bin.patch
Normal file
@@ -0,0 +1,38 @@
|
||||
Index: meson-1.0.1/run_tests.py
|
||||
===================================================================
|
||||
--- a/run_tests.py
|
||||
+++ b/run_tests.py
|
||||
@@ -196,18 +196,10 @@ def get_meson_script() -> str:
|
||||
Also used by run_unittests.py to determine what meson to run when not
|
||||
running in-process (which is the default).
|
||||
'''
|
||||
- # Is there a meson.py next to the mesonbuild currently in use?
|
||||
- mesonbuild_dir = Path(mesonmain.__file__).resolve().parent.parent
|
||||
- meson_script = mesonbuild_dir / 'meson.py'
|
||||
- if meson_script.is_file():
|
||||
- return str(meson_script)
|
||||
- # Then if mesonbuild is in PYTHONPATH, meson must be in PATH
|
||||
- mlog.warning('Could not find meson.py next to the mesonbuild module. '
|
||||
- 'Trying system meson...')
|
||||
meson_cmd = shutil.which('meson')
|
||||
- if meson_cmd:
|
||||
+ if meson_cmd and os.path.isfile(meson_cmd):
|
||||
return meson_cmd
|
||||
- raise RuntimeError(f'Could not find {meson_script!r} or a meson in PATH')
|
||||
+ raise RuntimeError(f'Could not find meson in PATH')
|
||||
|
||||
def get_backend_args_for_dir(backend: Backend, builddir: str) -> T.List[str]:
|
||||
'''
|
||||
@@ -381,12 +373,6 @@ def main():
|
||||
# Can't pass arguments to unit tests, so set the backend to use in the environment
|
||||
env = os.environ.copy()
|
||||
if not options.cross:
|
||||
- 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
|
||||
if no_unittests:
|
||||
print('Skipping all unit tests.')
|
||||
print(flush=True)
|
||||
2358
meson.changes
Normal file
2358
meson.changes
Normal file
File diff suppressed because it is too large
Load Diff
192
meson.keyring
Normal file
192
meson.keyring
Normal file
@@ -0,0 +1,192 @@
|
||||
pub rsa4096/FEEB9428 2011-04-23 [expires: 2021-04-20]
|
||||
Key fingerprint = 9518 1F4E ED14 FDF4 E41B 518D 3BF4 693B FEEB 9428
|
||||
uid [ unknown] Jussi Pakkanen <jpakkane@gmail.com>
|
||||
sub rsa4096/92A10C22 2011-04-23 [expires: 2021-04-20
|
||||
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
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
|
||||
Yk4Wl26lcjaUkwNEwPvTEtq3fjwKoisLbg==
|
||||
=Smkh
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
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
|
||||
dxBkBtFt+g3obj4=
|
||||
=AiRn
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
295
meson.spec
Normal file
295
meson.spec
Normal file
@@ -0,0 +1,295 @@
|
||||
#
|
||||
# spec file for package meson
|
||||
#
|
||||
# Copyright (c) 2025 SUSE LLC and contributors
|
||||
# Copyright (c) 2024 Andreas Stieger <Andreas.Stieger@gmx.de>
|
||||
#
|
||||
# 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/
|
||||
#
|
||||
|
||||
|
||||
%if 0%{?sle_version} >= 150400 && 0%{?sle_version} < 160000
|
||||
%global pythons python311
|
||||
%else
|
||||
%global pythons python3
|
||||
%endif
|
||||
|
||||
%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_without mono
|
||||
Name: meson%{name_ext}
|
||||
Version: 1.9.0
|
||||
Release: 0
|
||||
Summary: Python-based build system
|
||||
License: Apache-2.0
|
||||
Group: Development/Tools/Building
|
||||
URL: https://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-test-installed-bin.patch dimstar@opensuse.org -- We want the test suite to run against /usr/bin/meson coming from our meson package.
|
||||
Patch0: meson-test-installed-bin.patch
|
||||
# PATCH-FIX-OPENSUSE give more time to testsuites that run emulated
|
||||
Patch1: extend-test-timeout-on-qemu-builds.patch
|
||||
# PATCH-FEATURE-UPSTREAM -- based on https://github.com/mesonbuild/meson/pull/14001/commits
|
||||
Patch2: 14001.patch
|
||||
# PATCH-FIX-UPSTREAM https://github.com/mesonbuild/meson/pull/14580
|
||||
Patch3: reproducible.patch
|
||||
# PATCH-FIX-UPSTREAM -- rpm macros do not allow to override verbosity
|
||||
Patch4: meson-issue-15992.patch
|
||||
# PATCH-FIX-UPSTREAM get_llvm_tool_names-llvm21.patch -- Accept LLVM 21.1.
|
||||
Patch5: get_llvm_tool_names-llvm21.patch
|
||||
# PATCH-FIX-UPSTREAM - Check for header only Boost libraries
|
||||
Patch6: https://github.com/mesonbuild/meson/pull/14976.patch
|
||||
BuildRequires: %{python_module base >= 3.7}
|
||||
BuildRequires: %{python_module setuptools}
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: python-rpm-macros
|
||||
%if "%{flavor}" != "test"
|
||||
Requires: ninja >= 1.8.2
|
||||
# meson-gui was last used in openSUSE Leap 42.1.
|
||||
Provides: meson-gui = %{version}
|
||||
Obsoletes: meson-gui < %{version}
|
||||
BuildArch: noarch
|
||||
%else
|
||||
ExclusiveArch: x86_64
|
||||
BuildRequires: %{python_module devel}
|
||||
BuildRequires: bison
|
||||
%if 0%{?sle_version} >= 150400 && 0%{?sle_version} < 160000
|
||||
BuildRequires: clang17
|
||||
%else
|
||||
BuildRequires: clang >= 15
|
||||
%endif
|
||||
BuildRequires: clang-tools >= 15
|
||||
BuildRequires: cups-devel
|
||||
BuildRequires: distribution-release
|
||||
BuildRequires: flex
|
||||
%if 0%{?sle_version} >= 150400 && 0%{?sle_version} < 160000
|
||||
BuildRequires: gcc13-c++
|
||||
BuildRequires: gcc13-fortran
|
||||
BuildRequires: gcc13-obj-c++
|
||||
BuildRequires: gcc13-objc
|
||||
%else
|
||||
BuildRequires: gcc-c++ >= 12
|
||||
BuildRequires: gcc-fortran >= 12
|
||||
BuildRequires: gcc-obj-c++ >= 12
|
||||
BuildRequires: gcc-objc >= 12
|
||||
%endif
|
||||
BuildRequires: gettext-devel
|
||||
BuildRequires: git
|
||||
BuildRequires: gmock
|
||||
BuildRequires: gnustep-make
|
||||
BuildRequires: googletest-devel
|
||||
BuildRequires: itstool
|
||||
BuildRequires: java-headless
|
||||
BuildRequires: libboost_log-devel
|
||||
# This will be required to build to python311
|
||||
BuildRequires: libboost_python3-devel
|
||||
BuildRequires: %{python_module devel}
|
||||
BuildRequires: %{python_module gobject}
|
||||
BuildRequires: %{python_module pytest-xdist}
|
||||
BuildRequires: libboost_python3-devel
|
||||
BuildRequires: libboost_regex-devel
|
||||
%if 0%{?suse_version} < 1600
|
||||
BuildRequires: libboost_system-devel
|
||||
%endif
|
||||
BuildRequires: libboost_test-devel
|
||||
BuildRequires: libboost_thread-devel
|
||||
BuildRequires: libjpeg-devel
|
||||
BuildRequires: libpcap-devel
|
||||
BuildRequires: libqt5-qtbase-common-devel
|
||||
BuildRequires: libqt5-qtbase-private-headers-devel
|
||||
%if 0%{?sle_version} == 150400 || 0%{?sle_version} == 150500
|
||||
BuildRequires: libstdc++6-devel-gcc11
|
||||
%endif
|
||||
BuildRequires: libwmf-devel
|
||||
%if 0%{?sle_version} >= 150400 && 0%{?sle_version} < 160000
|
||||
BuildRequires: llvm17-devel
|
||||
%else
|
||||
BuildRequires: llvm-devel
|
||||
%endif
|
||||
BuildRequires: meson = %{version}
|
||||
BuildRequires: ninja
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: rust
|
||||
BuildRequires: wxWidgets-any-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(gtk-doc)
|
||||
BuildRequires: pkgconfig(ncurses)
|
||||
BuildRequires: pkgconfig(sdl2)
|
||||
BuildRequires: pkgconfig(vapigen)
|
||||
BuildRequires: pkgconfig(vulkan)
|
||||
BuildRequires: pkgconfig(zlib)
|
||||
%if 0%{?suse_version} < 1550
|
||||
BuildRequires: libboost_python-devel
|
||||
# Leap / SLE 15.x
|
||||
BuildRequires: python2-PyYAML
|
||||
BuildRequires: python2-devel
|
||||
BuildRequires: python3-devel
|
||||
%endif
|
||||
%if %{with mono}
|
||||
BuildRequires: mono(csharp)
|
||||
%endif
|
||||
%endif
|
||||
# meson makes use of macros that were only defined with rpm 4.15
|
||||
%if (0%{?suse_version} < 1550 && 0%{?sle_version} < 150400)
|
||||
Conflicts: rpm-build < 4.15
|
||||
%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
|
||||
Summary: Vim syntax highlighting support for meson.build files
|
||||
Group: Productivity/Text/Editors
|
||||
Requires: vim
|
||||
Supplements: (vim and %{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 meson.build syntax highlighting support for
|
||||
Vim/NeoVim.
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -n meson-%{version}
|
||||
|
||||
%if 0%{?sle_version} >= 150400 && 0%{?sle_version} < 160000
|
||||
# AddressSanitizer fails here because of ulimit.
|
||||
sed -i "/def test_generate_gir_with_address_sanitizer/{
|
||||
s/$/\n raise unittest.SkipTest('ulimit')/;
|
||||
}" unittests/linuxliketests.py
|
||||
|
||||
# Expects modern glibc with pthread symbols in libc.so
|
||||
rm -rf test\ cases/rust/17\ staticlib\ link\ staticlib
|
||||
%endif
|
||||
|
||||
# Remove hashbang from non-exec script
|
||||
sed -i '1{/\/usr\/bin\/env/d;}' \
|
||||
./mesonbuild/rewriter.py \
|
||||
./mesonbuild/scripts/cmake_run_ctgt.py
|
||||
|
||||
# We do not have appleframeworks available at this moment - can't run the test suite for it
|
||||
# boost is currently borked too
|
||||
rm -r "test cases/frameworks/1 boost" \
|
||||
"test cases/objc/2 nsstring"
|
||||
# remove gtest check that actually works because our gtest has .pc files
|
||||
rm -rf test\ cases/failing/85\ gtest\ dependency\ with\ version
|
||||
|
||||
%build
|
||||
%if %{without test}
|
||||
%python_build
|
||||
%else
|
||||
# Ensure we have no mesonbuild / meson in CWD, thus guaranteeing we use meson in $PATH
|
||||
rm -r meson.py mesonbuild
|
||||
%endif
|
||||
|
||||
%install
|
||||
# If this is the test suite, we don't need anything else but the meson package
|
||||
%if %{without test}
|
||||
%python_install
|
||||
|
||||
install -Dpm 0644 data/macros.meson \
|
||||
%{buildroot}%{_rpmconfigdir}/macros.d/macros.meson
|
||||
|
||||
install -Dpm 0755 data//mesongenbuildreq.py \
|
||||
%{buildroot}%{_rpmconfigdir}/mesongenbuildreq
|
||||
|
||||
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 %{with test}
|
||||
%check
|
||||
|
||||
%if 0%{?sle_version} >= 150400 && 0%{?sle_version} < 160000
|
||||
# Use gcc-13 for clang-tidy
|
||||
install -d -m 0755 bin
|
||||
ln -s /usr/bin/cpp-13 bin/cpp
|
||||
ln -s /usr/bin/g++-13 bin/c++
|
||||
ln -s /usr/bin/g++-13 bin/g++
|
||||
ln -s /usr/bin/gcc-13 bin/cc
|
||||
ln -s /usr/bin/gcc-13 bin/gcc
|
||||
export PATH="${PWD}/bin:${PATH}"
|
||||
c++ --version
|
||||
|
||||
# Fix shebang in test cases getting executed by ninja
|
||||
%{python_expand find test\ cases -type f -name "*.py" \
|
||||
-exec sed -i "1s@#!.*python.*@#!$(realpath %{_bindir}/$python)@" {} +}
|
||||
%endif
|
||||
|
||||
export LANG=C.UTF-8
|
||||
export MESON_EXE=%{_bindir}/meson
|
||||
export PYTHONDONTWRITEBYTECODE=1
|
||||
|
||||
# See prep section for removed tests
|
||||
%python_flavored_alternatives \
|
||||
%python_expand $python run_tests.py --failfast
|
||||
%endif
|
||||
|
||||
%files
|
||||
%license COPYING
|
||||
%if !%{with test}
|
||||
%{_bindir}/meson
|
||||
%{python_sitelib}/%{_name}/
|
||||
%{python_sitelib}/meson-*
|
||||
%dir %{_datadir}/polkit-1/
|
||||
%dir %{_datadir}/polkit-1/actions/
|
||||
%{_datadir}/polkit-1/actions/com.mesonbuild.install.policy
|
||||
%{_rpmconfigdir}/macros.d/macros.meson
|
||||
%{_rpmconfigdir}/mesongenbuildreq
|
||||
%{_mandir}/man1/meson.1%{?ext_man}
|
||||
|
||||
%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
|
||||
35
reproducible.patch
Normal file
35
reproducible.patch
Normal file
@@ -0,0 +1,35 @@
|
||||
commit 4883b2bac4e2bb5cee49b2efdf0f77dfc2b5b77c
|
||||
Author: Bernhard M. Wiedemann <bwiedemann@suse.de>
|
||||
Date: Fri May 9 11:36:03 2025 +0200
|
||||
|
||||
macros: use smp_mflags
|
||||
|
||||
to avoid embedding the number of CPU cores
|
||||
in the .src.rpm header's expanded SPEC field.
|
||||
|
||||
See also https://github.com/rpm-software-management/rpm/issues/2343
|
||||
|
||||
This patch was done while working on reproducible builds for openSUSE.
|
||||
|
||||
Index: meson-1.8.0/data/macros.meson
|
||||
===================================================================
|
||||
--- meson-1.8.0.orig/data/macros.meson
|
||||
+++ meson-1.8.0/data/macros.meson
|
||||
@@ -28,7 +28,7 @@
|
||||
%meson_build \
|
||||
%{shrink:%{__meson} compile \
|
||||
-C %{_vpath_builddir} \
|
||||
- -j %{_smp_build_ncpus} \
|
||||
+ %{_smp_mflags} \
|
||||
%{?__meson_verbose:--verbose} \
|
||||
%{nil}}
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
%meson_test \
|
||||
%{shrink:%{__meson} test \
|
||||
-C %{_vpath_builddir} \
|
||||
- --num-processes %{_smp_build_ncpus} \
|
||||
+ %{_smp_mflags} \
|
||||
--print-errorlogs \
|
||||
%{?qemu_user_space_build: -t 10} \
|
||||
%{nil}}
|
||||
Reference in New Issue
Block a user