SHA256
1
0
forked from pool/meson

Accepting request 517049 from GNOME:Next

Update to 0.42.0

OBS-URL: https://build.opensuse.org/request/show/517049
OBS-URL: https://build.opensuse.org/package/show/devel:tools:building/meson?expand=0&rev=56
This commit is contained in:
Alexei Sorokin 2017-08-15 16:57:45 +00:00 committed by Git OBS Bridge
parent bc0b4d1d93
commit 692f026ef9
10 changed files with 277 additions and 66 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:074dd24fd068be0893e2e45bcc35c919d8e12777e9d6a7efdf72d4dc300867ca
size 1013551

View File

@ -1,16 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEElRgfTu0U/fTkG1GNO/RpO/7rlCgFAllvLcYACgkQO/RpO/7r
lCj9Cg/9GbdO9HicW1bo9THskxBiCbQQbgUNiDuEiyu7k5MDX/B8I9ufmd9cj3RP
/gmhWjuzggxT7K/pRumrDCW8RjB2O6rQigGVj7+Mc3bGWl0vVmV7Isz+ZMo5VVMB
8tIc0V/jBN09FxFRRpIWdwqNKSfh9R4pCeaust89QLJ7wDriEomr/sddSe4R6qRa
ckKzQv9A9KHNHrfxny4S3MZyqC43DnlQhbhFOckvu21i5+hbk1l46raNCEoaj2aq
P5BH0a1fKll7G++gZUI1HGY8DLvmQs5odOgEbvt7mPBGcYTqVlnP9rdVT9sepd4r
fC1sUsNBPSOFCd27HGFF12+gwN1s6RJrDMNGYfsL8XWygtBkCrJwoU9X3Yx8Zr2C
MWiAT0mryKBKzmvWCiEmJ8dqQ68f+CsaIAzf9bmtvmLv3CeLI0Z6j9b86Hm23nNn
UPWilRdDp/ZLtBaryZpfH1sxeglV7SwqCiSFBU98Gx4Z61F2IwyxjdehcwlMciI1
JgdspcA6RQIqI7DY06HvjBzX2xMI9bgKdEmSUzS9q2id9ggE1XVEjfUPfmLH3EC5
KgRLdLaKClS1NnSTeW/6rm25Owl9GNDSCIDICWjWztphg/HbOHPSAOPMmpmTgH6v
oifv1ajWnmx1DGvHkLbOpUkxio22H95PRcVo43yFzxcf6aXjwq0=
=Rfd8
-----END PGP SIGNATURE-----

3
meson-0.42.0.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a74c7387a3dd8171e931bcd948355f7f9529368eae72c3c22a9beef6c2e73498
size 1042872

16
meson-0.42.0.tar.gz.asc Normal file
View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEElRgfTu0U/fTkG1GNO/RpO/7rlCgFAlmSJ8oACgkQO/RpO/7r
lCgKkg//c6HJQIqczqH94wTG03bTgLYH2nLUYXMCGd59GIsBTw9g73loEDhJyKze
+95yqos3+e61YGQntzHPpH8eFkWLPk9YdfiAw6MTlZi7Ko4FBAD7yppg/ed+5DG4
N6Xx2HE8Fd/vWqn/rTlTMIhLiwpJgSecAQJTNoGxPQS5J+y8te1/TCovd6zt5yUu
VlHQD1vtQsXRYYVdM5JhRsHwog4NzcujuFZ46ISMZ4vtWJwGg0uGfIpgmTO+/zQa
KBln7fqShf/jOHohHwc+7thiKgWWPcClyiHpuN3k/AoClyysB0QhmKhBbHNT4IS/
rRxC5MHOfR+0qjU1+oJY3xP7coPd6uJYe6rWkl/du8ngkgwP6XIIbD0GDJ2EOhT4
8P8pNO2KfRFH2cdSOqlonhJEqpaePqvP4tSOg+Rjl/iSdgUQdkliKZzqqAwvszGJ
BMFIs+z0+jl8+QPJ7xsCjVkZ3O1kaCGBeZxPtaLoCLbPDcBBCcEu0I7tI1VORzWa
hGszd3afUA+cf5H7Zw4QSTEm1CT75yzjlumNbG9tb5AHUkEQidFpoy3ghf0oyfsy
2sDPehkBYG1DTP/3n8sC7v4sg8ttQt0nDyuwN9PGaYxPbvsI0SXeY8rPx6bq06w8
2tLtFQNgIXGqUxPLqCFt/t9XCXYH4yBcC1w+3MGJyi7ANvVkw2E=
=vQUx
-----END PGP SIGNATURE-----

View File

@ -1,19 +1,19 @@
diff -Nur meson-0.41.0/mesonbuild/compilers.py new/mesonbuild/compilers.py diff -ur meson-0.42.0/mesonbuild/compilers/cpp.py meson-0.42.patched/mesonbuild/compilers/cpp.py
--- meson-0.41.0/mesonbuild/compilers.py 2017-06-12 20:30:20.000000000 +0200 --- meson-0.42.0/mesonbuild/compilers/cpp.py 2017-08-13 20:43:17.000000000 +0200
+++ new/mesonbuild/compilers.py 2017-06-19 13:43:25.771564616 +0200 +++ meson-0.42.patched/mesonbuild/compilers/cpp.py 2017-08-15 12:42:07.216511972 +0200
@@ -2621,9 +2621,13 @@ @@ -75,9 +75,13 @@
'3': default_warn_args + ['-Wextra', '-Wpedantic']} '3': default_warn_args + ['-Wextra', '-Wpedantic']}
def get_options(self): def get_options(self):
+ c_stds = ['c++03', 'c++11'] + c_stds = ['c++03', 'c++11']
+ g_stds = ['gnu++03', 'gnu++11'] + g_stds = ['gnu++11']
+ if mesonlib.version_compare(self.version, '>=5.0.0'): + if mesonlib.version_compare(self.version, '>=5.0.0'):
+ c_stds += ['c++14', 'c++1z'] + c_stds += ['c++14', 'c++1z']
+ g_stds += ['gnu++14', 'gnu++1z'] + g_stds += ['gnu++14', 'gnu++1z']
opts = {'cpp_std': coredata.UserComboOption('cpp_std', 'C++ language standard to use', return {'cpp_std': coredata.UserComboOption('cpp_std', 'C++ language standard to use',
- ['none', 'c++03', 'c++11', 'c++14', 'c++1z', - ['none', 'c++03', 'c++11', 'c++14', 'c++1z',
- 'gnu++03', 'gnu++11', 'gnu++14', 'gnu++1z'], - 'gnu++11', 'gnu++14', 'gnu++1z'],
+ ['none'] + c_stds + g_stds, + ['none'] + c_stds + g_stds,
'none'), 'none')}
'cpp_debugstl': coredata.UserBooleanOption('cpp_debugstl',
'STL debug mode', def get_option_compile_args(self, options):

View File

@ -1,21 +1,8 @@
Index: meson-0.41.0/run_unittests.py Index: meson-0.42.0/run_project_tests.py
=================================================================== ===================================================================
--- meson-0.41.0.orig/run_unittests.py --- meson-0.42.0.orig/run_project_tests.py
+++ meson-0.41.0/run_unittests.py +++ meson-0.42.0/run_project_tests.py
@@ -414,7 +414,7 @@ class BasePlatformTests(unittest.TestCas @@ -124,7 +124,7 @@ print_debug = 'MESON_PRINT_TEST_OUTPUT'
# Get the backend
# FIXME: Extract this from argv?
self.backend = getattr(Backend, os.environ.get('MESON_UNIT_TEST_BACKEND', 'ninja'))
- self.meson_args = [os.path.join(src_root, 'meson.py'), '--backend=' + self.backend.name]
+ self.meson_args = ['/usr/bin/meson', '--backend=' + self.backend.name]
self.meson_command = [sys.executable] + self.meson_args
self.mconf_command = [sys.executable, os.path.join(src_root, 'mesonconf.py')]
self.mintro_command = [sys.executable, os.path.join(src_root, 'mesonintrospect.py')]
Index: meson-0.41.0/run_project_tests.py
===================================================================
--- meson-0.41.0.orig/run_project_tests.py
+++ meson-0.41.0/run_project_tests.py
@@ -125,7 +125,7 @@ print_debug = 'MESON_PRINT_TEST_OUTPUT'
do_debug = not {'MESON_PRINT_TEST_OUTPUT', 'TRAVIS', 'APPVEYOR'}.isdisjoint(os.environ) do_debug = not {'MESON_PRINT_TEST_OUTPUT', 'TRAVIS', 'APPVEYOR'}.isdisjoint(os.environ)
no_meson_log_msg = 'No meson-log.txt found.' no_meson_log_msg = 'No meson-log.txt found.'
@ -24,3 +11,23 @@ Index: meson-0.41.0/run_project_tests.py
if not os.path.exists(meson_command): if not os.path.exists(meson_command):
meson_command += '.py' meson_command += '.py'
if not os.path.exists(meson_command): if not os.path.exists(meson_command):
Index: meson-0.42.0/run_unittests.py
===================================================================
--- meson-0.42.0.orig/run_unittests.py
+++ meson-0.42.0/run_unittests.py
@@ -416,11 +416,11 @@ class BasePlatformTests(unittest.TestCas
# Get the backend
# FIXME: Extract this from argv?
self.backend = getattr(Backend, os.environ.get('MESON_UNIT_TEST_BACKEND', 'ninja'))
- self.meson_args = [os.path.join(src_root, 'meson.py'), '--backend=' + self.backend.name]
+ self.meson_args = ['/usr/bin/meson', '--backend=' + self.backend.name]
self.meson_command = [sys.executable] + self.meson_args
- self.mconf_command = [sys.executable, os.path.join(src_root, 'meson.py'), 'configure']
- self.mintro_command = [sys.executable, os.path.join(src_root, 'meson.py'), 'introspect']
- self.mtest_command = [sys.executable, os.path.join(src_root, 'meson.py'), 'test', '-C', self.builddir]
+ self.mconf_command = [sys.executable, '/usr/bin/meson', 'configure']
+ self.mintro_command = [sys.executable, '/usr/bin/meson', 'introspect']
+ self.mtest_command = [sys.executable, '/usr/bin/meson', 'test', '-C', self.builddir]
# Backend-specific build commands
self.build_command, self.clean_command, self.test_command, self.install_command, \
self.uninstall_command = get_backend_commands(self.backend)

View File

@ -1,14 +1,114 @@
-------------------------------------------------------------------
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 Sat Jul 22 13:55:52 UTC 2017 - mailaender@opensuse.org
- Update to version 0.41.2: - Update to version 0.41.2:
+ Various gtkdoc fixes + Various gtkdoc fixes.
+ Fix how rpath directories are handled. + Fix how rpath directories are handled.
+ pkgconfig: avoid appending slash at Cflags + pkgconfig: avoid appending slash at Cflags.
+ Fix a missing path issue causing Python traceback. + Fix a missing path issue causing Python traceback.
+ Qt4 support + Qt4 support.
+ Skip handling non-available dependencies + Skip handling non-available dependencies.
+ vala: Only add --use-header for unity builds regression + vala: Only add --use-header for unity builds regression.
+ Tag functions in asm properly. + Tag functions in asm properly.
------------------------------------------------------------------- -------------------------------------------------------------------

View File

@ -24,7 +24,7 @@
%endif %endif
%define _name mesonbuild %define _name mesonbuild
Name: meson%{name_ext} Name: meson%{name_ext}
Version: 0.41.2 Version: 0.42.0
Release: 0 Release: 0
Summary: Python-based build system Summary: Python-based build system
License: Apache-2.0 License: Apache-2.0
@ -55,6 +55,7 @@ BuildRequires: gnustep-make
BuildRequires: googletest-devel BuildRequires: googletest-devel
BuildRequires: gtk-doc BuildRequires: gtk-doc
BuildRequires: itstool BuildRequires: itstool
BuildRequires: libpcap-devel
BuildRequires: llvm-devel BuildRequires: llvm-devel
BuildRequires: meson BuildRequires: meson
BuildRequires: ncurses-devel BuildRequires: ncurses-devel
@ -64,6 +65,7 @@ BuildRequires: python3-devel
BuildRequires: python3-gobject BuildRequires: python3-gobject
BuildRequires: python3-setuptools BuildRequires: python3-setuptools
BuildRequires: vala BuildRequires: vala
BuildRequires: vulkan-devel
BuildRequires: cmake(Qt5Core) BuildRequires: cmake(Qt5Core)
BuildRequires: cmake(Qt5Gui) BuildRequires: cmake(Qt5Gui)
BuildRequires: cmake(Qt5Widgets) BuildRequires: cmake(Qt5Widgets)

View File

@ -1,14 +1,114 @@
-------------------------------------------------------------------
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 Sat Jul 22 13:55:52 UTC 2017 - mailaender@opensuse.org
- Update to version 0.41.2: - Update to version 0.41.2:
+ Various gtkdoc fixes + Various gtkdoc fixes.
+ Fix how rpath directories are handled. + Fix how rpath directories are handled.
+ pkgconfig: avoid appending slash at Cflags + pkgconfig: avoid appending slash at Cflags.
+ Fix a missing path issue causing Python traceback. + Fix a missing path issue causing Python traceback.
+ Qt4 support + Qt4 support.
+ Skip handling non-available dependencies + Skip handling non-available dependencies.
+ vala: Only add --use-header for unity builds regression + vala: Only add --use-header for unity builds regression.
+ Tag functions in asm properly. + Tag functions in asm properly.
------------------------------------------------------------------- -------------------------------------------------------------------

View File

@ -24,7 +24,7 @@
%endif %endif
%define _name mesonbuild %define _name mesonbuild
Name: meson%{name_ext} Name: meson%{name_ext}
Version: 0.41.2 Version: 0.42.0
Release: 0 Release: 0
Summary: Python-based build system Summary: Python-based build system
License: Apache-2.0 License: Apache-2.0
@ -55,6 +55,7 @@ BuildRequires: gnustep-make
BuildRequires: googletest-devel BuildRequires: googletest-devel
BuildRequires: gtk-doc BuildRequires: gtk-doc
BuildRequires: itstool BuildRequires: itstool
BuildRequires: libpcap-devel
BuildRequires: llvm-devel BuildRequires: llvm-devel
BuildRequires: meson BuildRequires: meson
BuildRequires: ncurses-devel BuildRequires: ncurses-devel
@ -64,6 +65,7 @@ BuildRequires: python3-devel
BuildRequires: python3-gobject BuildRequires: python3-gobject
BuildRequires: python3-setuptools BuildRequires: python3-setuptools
BuildRequires: vala BuildRequires: vala
BuildRequires: vulkan-devel
BuildRequires: cmake(Qt5Core) BuildRequires: cmake(Qt5Core)
BuildRequires: cmake(Qt5Gui) BuildRequires: cmake(Qt5Gui)
BuildRequires: cmake(Qt5Widgets) BuildRequires: cmake(Qt5Widgets)