forked from pool/meson
Accepting request 700684 from devel:tools:building
Update to 0.50.1 OBS-URL: https://build.opensuse.org/request/show/700684 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/meson?expand=0&rev=42
This commit is contained in:
commit
3684500f4d
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:ef9f14326ec1e30d3ba1a26df0f92826ede5a79255ad723af78a2691c37109fd
|
|
||||||
size 1340804
|
|
@ -1,16 +0,0 @@
|
|||||||
-----BEGIN PGP SIGNATURE-----
|
|
||||||
|
|
||||||
iQIzBAABCgAdFiEElRgfTu0U/fTkG1GNO/RpO/7rlCgFAlxYmLwACgkQO/RpO/7r
|
|
||||||
lChSXxAAlDimek6mHHPOtOJbnsqfDvtWxZMmXapY4h3D1U2XloWrnuTn45OGPda3
|
|
||||||
WtYLhZbybqyBSOigoqNQS9bcn/kctbdOcXmQoXSJrK0b9DYH3kryVGGmqPXtkd8Q
|
|
||||||
eZu5ZcoVPmbdVSiQQ2H/taWhzlxqH9gJmbrqoB6/pbiWf91VCc7dZvo5rc2dZ8Id
|
|
||||||
o6tTRqLXnuw8BQt4HKytZ1fQ+CYC0xYA1rjnGo5+VC1t/uaVAgByw0YSIcpGpKPr
|
|
||||||
K1e8eMBMYy+WM2LpKHqB5PL2nibeLcDNkh9bpieR1IIVCatSsR7WLgvz5uNBdYnw
|
|
||||||
hfbO96zjv+8SEhUEkEolu0ZoeBWSOfDJoyqsv70Z1pXHf3wBya/45Ewx6u4qu2wB
|
|
||||||
AzjyufYG3HJBkb03x+lFb00k2p70Xwnb27aJbDfUhbzYZczgOHN09oZGly9bDmjh
|
|
||||||
HuJmsluUkCBml1D4FKj62XRdr8zuULR42EWT+LcONSIlDdbncjd899ERN+7lOVmc
|
|
||||||
TAzPX5kJ88wrdUuy3FjnsZDOn29Bz6IzsCK5ZAZgnJqA+wCNPNzXfv9Bm5JQLnjO
|
|
||||||
AOokIqQX4eR42k2ccybm/bmtWwmYH4GQWCr9RRuPg6zlog3hgsws5k+syyCgUjKc
|
|
||||||
w9inj+cbsjeZxYKovOXpF7+rQHwxM9oJNbg8oCD0pDK4IxWXCeg=
|
|
||||||
=1ctS
|
|
||||||
-----END PGP SIGNATURE-----
|
|
3
meson-0.50.1.tar.gz
Normal file
3
meson-0.50.1.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:f68f56d60c80a77df8fc08fa1016bc5831605d4717b622c96212573271e14ecc
|
||||||
|
size 1402202
|
16
meson-0.50.1.tar.gz.asc
Normal file
16
meson-0.50.1.tar.gz.asc
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iQIzBAABCgAdFiEElRgfTu0U/fTkG1GNO/RpO/7rlCgFAly22cIACgkQO/RpO/7r
|
||||||
|
lChaOQ//RIAFHr0mptbO2/6ILam3r8+DXosNvKLv17HHAOC00mOIqU69wUkN3pQF
|
||||||
|
uZDbEay+V1SD5SvMuq5SfTHG2rjFFbREC7wvAunMBJasjgVK8MH7GPpyeBpKNtvE
|
||||||
|
PNaj47XoTDfoGNiTWFENJCjD8ZUEPpTkgt0IQgqzaKBn0L3d+qv1H1C4yzyPfHTf
|
||||||
|
4wOnDEnIcOhr3DEwEdpGZtzLasley7rjj1+VEX7zAHfHVlabwpTEPQmcDa3KilYx
|
||||||
|
t1v3b/GGW2f4e5M9BIY0OvPAoS695HGtiH80/i2iwebdjEtGWXr4sAH2aVcCWxnp
|
||||||
|
/u8xZdsCiGJOlxG+Fq7WG9PQXM1EIeekK6BvyaS01Jt8mpJtGpOza4KQf4XvqeRY
|
||||||
|
GmhWFzjx6y1ABMGgXZPV0iWWzfhzl7rZ7tOgg46bItvNJgse6D2Z+qmJ+eQCaZR1
|
||||||
|
CFCWeNxSZVaDWA9xROOk4FpTS+5Nhom8+taP5PcQhVBcgnaLcFf1O+ew32ewitgv
|
||||||
|
Wln8k+Y8S4OVJTeb7Q2rPtPF3ZjaUcYL2YUaVNjhnX9yyUm9QOfkvlSTEITUpWDw
|
||||||
|
iM+R8plV8j2VrKMIOHMMkgVms48WGoE8si1CpGlKyR9DX3+2bSd9uAjjmI7ZJGNk
|
||||||
|
QNqQbG7XUbh4QSSQhJLVha02HMhYWHMoj2eGsKCocOef79mcYKY=
|
||||||
|
=TP2z
|
||||||
|
-----END PGP SIGNATURE-----
|
@ -1,5 +1,7 @@
|
|||||||
--- a/data/macros.meson
|
Index: meson-0.50.0/data/macros.meson
|
||||||
+++ b/data/macros.meson
|
===================================================================
|
||||||
|
--- meson-0.50.0.orig/data/macros.meson
|
||||||
|
+++ meson-0.50.0/data/macros.meson
|
||||||
@@ -1,9 +1,15 @@
|
@@ -1,9 +1,15 @@
|
||||||
%__meson %{_bindir}/meson
|
%__meson %{_bindir}/meson
|
||||||
%__meson_wrap_mode nodownload
|
%__meson_wrap_mode nodownload
|
||||||
@ -17,7 +19,7 @@
|
|||||||
%{shrink:%{__meson} \
|
%{shrink:%{__meson} \
|
||||||
--buildtype=plain \
|
--buildtype=plain \
|
||||||
--prefix=%{_prefix} \
|
--prefix=%{_prefix} \
|
||||||
@@ -25,12 +31,15 @@
|
@@ -25,10 +31,13 @@
|
||||||
%{nil}}
|
%{nil}}
|
||||||
|
|
||||||
%meson_build \
|
%meson_build \
|
||||||
@ -30,6 +32,4 @@
|
|||||||
|
|
||||||
%meson_test \
|
%meson_test \
|
||||||
+ export LANG=C.UTF-8 \
|
+ export LANG=C.UTF-8 \
|
||||||
%ninja_test -C %{_vpath_builddir} || \
|
%ninja_test -C %{_vpath_builddir}
|
||||||
( rc=$?; \
|
|
||||||
echo "-----BEGIN TESTLOG-----"; \
|
|
||||||
|
302
meson.changes
302
meson.changes
@ -1,3 +1,305 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Apr 17 11:51:11 UTC 2019 - Dominique Leuenberger <dimstar@opensuse.org>
|
||||||
|
|
||||||
|
- Update to version 0.50.1:
|
||||||
|
+ d: Fix linker errors with shared libraries.
|
||||||
|
+ Add support for VS2019 (gh#mesonbuild/meson#4640).
|
||||||
|
+ Detect 'arm64' as aarch64 CPU family.
|
||||||
|
+ Fix Rust global and local args (gh#mesonbuild/meson#5101).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Mar 11 12:30:24 UTC 2019 - Dominique Leuenberger <dimstar@opensuse.org>
|
||||||
|
|
||||||
|
- Fixup meson-suse-ify-macros.patch post broken rebase.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Mar 10 18:57:41 UTC 2019 - klaatu <aloisio@gmx.com>
|
||||||
|
|
||||||
|
- Update to version 0.50.0
|
||||||
|
New features:
|
||||||
|
* Added `cmake_module_path` and `cmake_args` to dependency
|
||||||
|
The CMake dependency backend can now make use of existing
|
||||||
|
`Find<name>.cmake` files by setting the `CMAKE_MODULE_PATH`
|
||||||
|
with the new `dependency()` property `cmake_module_path`.
|
||||||
|
The paths given to `cmake_module_path` should be relative
|
||||||
|
to the project source directory.
|
||||||
|
Furthermore the property `cmake_args` was added to give
|
||||||
|
CMake additional parameters.
|
||||||
|
* Added PGI compiler support
|
||||||
|
Nvidia / PGI C, C++ and Fortran
|
||||||
|
[no-cost](https://www.pgroup.com/products/community.htm)
|
||||||
|
compilers are now supported. They have been tested on Linux
|
||||||
|
so far.
|
||||||
|
* Fortran Coarray
|
||||||
|
Fortran 2008 / 2018 coarray support was added via
|
||||||
|
`dependency('coarray')`
|
||||||
|
* Libdir defaults to `lib` when cross compiling
|
||||||
|
Previously `libdir` defaulted to the value of the build
|
||||||
|
machine such as `lib/x86_64-linux-gnu`, which is almost
|
||||||
|
always incorrect when cross compiling. It now defaults to
|
||||||
|
plain `lib` when cross compiling. Native builds remain
|
||||||
|
unchanged and will point to the current system's library
|
||||||
|
dir.
|
||||||
|
* Native and Cross File Paths and Directories
|
||||||
|
A new `[paths]` section has been added to native and cross
|
||||||
|
files. This can be used to set paths such a prefix and
|
||||||
|
libdir in a persistent way.
|
||||||
|
* Add warning_level 0 option
|
||||||
|
Adds support for a warning level 0 which does not enable any
|
||||||
|
static analysis checks from the compiler
|
||||||
|
* A builtin target to run clang-format
|
||||||
|
If you have `clang-format` installed and there is a
|
||||||
|
`.clang-format` file in the root of your master project,
|
||||||
|
Meson will generate a run target called `clang-format` so you
|
||||||
|
can reformat all files with one command:
|
||||||
|
```meson
|
||||||
|
ninja clang-format
|
||||||
|
```
|
||||||
|
* Added a .path() method to object return by
|
||||||
|
python.find_installation()
|
||||||
|
`ExternalProgram` objects as well as the object returned by
|
||||||
|
the `python3` module provide this method, but the new python
|
||||||
|
module did not.
|
||||||
|
* Fix ninja console log from generators with multiple output
|
||||||
|
nodes
|
||||||
|
This resolves ticket #4760 where a generator w/ multiple
|
||||||
|
output nodes printed an empty string to the console
|
||||||
|
* `introspect --buildoptions` can now be used without
|
||||||
|
configured build directory
|
||||||
|
It is now possible to run `meson introspect --buildoptions
|
||||||
|
/path/to/meson.build` without a configured build directory.
|
||||||
|
Running `--buildoptions` without a build directory produces
|
||||||
|
the same output as running it with a freshly configured
|
||||||
|
build directory.
|
||||||
|
However, this behavior is not guaranteed if subprojects are
|
||||||
|
present. Due to internal limitations all subprojects are
|
||||||
|
processed even if they are never used in a real meson run.
|
||||||
|
Because of this options for the subprojects can differ.
|
||||||
|
* `include_directories` accepts a string
|
||||||
|
The `include_directories` keyword argument now accepts plain
|
||||||
|
strings rather than an include directory object. Meson will
|
||||||
|
transparently expand it so that a declaration like this:
|
||||||
|
```meson
|
||||||
|
executable(..., include_directories: 'foo')
|
||||||
|
```
|
||||||
|
Is equivalent to this:
|
||||||
|
```meson
|
||||||
|
foo_inc = include_directories('foo')
|
||||||
|
executable(..., include_directories: inc)
|
||||||
|
```
|
||||||
|
* Fortran submodule support
|
||||||
|
Initial support for Fortran ``submodule`` was added, where
|
||||||
|
the submodule is in the same or different file than the
|
||||||
|
parent ``module``.
|
||||||
|
The submodule hierarchy specified in the source Fortran code
|
||||||
|
`submodule` statements are used by Meson to resolve source
|
||||||
|
file dependencies.
|
||||||
|
For example:
|
||||||
|
```fortran
|
||||||
|
submodule (ancestor:parent) child
|
||||||
|
```
|
||||||
|
* Add subproject_dir to --projectinfo introspection output
|
||||||
|
This allows applications interfacing with Meson (such as
|
||||||
|
IDEs) to know about an overridden subproject directory.
|
||||||
|
* Find library with its headers
|
||||||
|
The `find_library()` method can now also verify if the
|
||||||
|
library's headers are found in a single call, using the
|
||||||
|
`has_header()` method internally.
|
||||||
|
```meson
|
||||||
|
+ Aborts if the 'z' library is found but not its header file
|
||||||
|
zlib = find_library('z', has_headers : 'zlib.h')
|
||||||
|
+ Returns not-found if the 'z' library is found but not its
|
||||||
|
header file zlib = find_library('z', has_headers :
|
||||||
|
'zlib.h', required : false)
|
||||||
|
```
|
||||||
|
Any keyword argument with the `header_` prefix passed to
|
||||||
|
`find_library()` will be passed to the `has_header()`
|
||||||
|
method with the prefix removed.
|
||||||
|
```meson
|
||||||
|
libfoo = find_library('foo',
|
||||||
|
has_headers : ['foo.h', 'bar.h'],
|
||||||
|
header_prefix : '#include <baz.h>',
|
||||||
|
header_include_directories : include_directories('.'))
|
||||||
|
```
|
||||||
|
* NetCDF
|
||||||
|
NetCDF support for C, C++ and Fortran is added via
|
||||||
|
pkg-config.
|
||||||
|
* added the Flang compiler
|
||||||
|
[Flang](https://github.com/flang-compiler/flang/releases)
|
||||||
|
Fortran compiler support was added. As with other Fortran
|
||||||
|
compilers, flang is specified using `FC=flang meson ..` or
|
||||||
|
similar.
|
||||||
|
* New `not_found_message` for dependency
|
||||||
|
You can now specify a `not_found_message` that will be
|
||||||
|
printed if the specified dependency was not found. The point
|
||||||
|
is to convert constructs
|
||||||
|
that look like this:
|
||||||
|
```meson
|
||||||
|
d = dependency('something', required: false)
|
||||||
|
if not d.found()
|
||||||
|
message('Will not be able to do something.')
|
||||||
|
endif
|
||||||
|
```
|
||||||
|
Into this:
|
||||||
|
```meson
|
||||||
|
d = dependency('something',
|
||||||
|
required: false,
|
||||||
|
not_found_message: 'Will not be able to do something.')
|
||||||
|
```
|
||||||
|
Or constructs like this:
|
||||||
|
```meson
|
||||||
|
d = dependency('something', required: false)
|
||||||
|
if not d.found()
|
||||||
|
error('Install something by doing XYZ.')
|
||||||
|
endif
|
||||||
|
```
|
||||||
|
into this:
|
||||||
|
```meson
|
||||||
|
d = dependency('something',
|
||||||
|
not_found_message: 'Install something by doing XYZ.')
|
||||||
|
```
|
||||||
|
Which works, because the default value of `required` is
|
||||||
|
`true`.
|
||||||
|
* Cuda support
|
||||||
|
Compiling Cuda source code is now supported, though only
|
||||||
|
with the
|
||||||
|
Ninja backend. This has been tested only on Linux for now.
|
||||||
|
Because NVidia's Cuda compiler does not produce `.d`
|
||||||
|
dependency files, dependency tracking does not work.
|
||||||
|
* `run_command` accepts `env` kwarg
|
||||||
|
You can pass
|
||||||
|
[`environment`](Reference-manual.html#environment-object)
|
||||||
|
object to
|
||||||
|
[`run_command`](Reference-manual.html#run-command), just
|
||||||
|
like to `test`:
|
||||||
|
```meson
|
||||||
|
env = environment()
|
||||||
|
env.set('FOO', 'bar')
|
||||||
|
run_command('command', 'arg1', 'arg2', env: env)
|
||||||
|
```
|
||||||
|
* `extract_objects` accepts `File` arguments
|
||||||
|
The `extract_objects` function now supports File objects to
|
||||||
|
tell it what to extract. Previously, file paths could only
|
||||||
|
be passed as strings.
|
||||||
|
* Changed the JSON format of the introspection
|
||||||
|
All paths used in the meson introspection JSON format are
|
||||||
|
now absolute. This affects the `filename` key in the targets
|
||||||
|
introspection and the output of
|
||||||
|
`--buildsystem-files`.
|
||||||
|
Furthermore, the `filename` and `install_filename` keys in
|
||||||
|
the targets introspection are now lists of strings with
|
||||||
|
identical length.
|
||||||
|
The `--target-files` option is now deprecated, since the
|
||||||
|
same information can be acquired from the `--tragets`
|
||||||
|
introspection API.
|
||||||
|
* Meson file rewriter
|
||||||
|
This release adds the functionality to perform some basic
|
||||||
|
modification on the `meson.build` files from the command
|
||||||
|
line. The currently supported operations are:
|
||||||
|
+ For build targets:
|
||||||
|
x Add/Remove source files
|
||||||
|
x Add/Remove targets
|
||||||
|
x- Modify a select set of kwargs
|
||||||
|
x Print some JSON information
|
||||||
|
+ For dependencies:
|
||||||
|
x Modify a select set of kwargs
|
||||||
|
+ For the project function:
|
||||||
|
x Modify a select set of kwargs
|
||||||
|
x Modify the default options list
|
||||||
|
For more information see the rewriter documentation.
|
||||||
|
* `introspect --scan-dependencies` can now be used to scan for
|
||||||
|
dependencies used in a project
|
||||||
|
It is now possible to run `meson introspect
|
||||||
|
--scan-dependencies
|
||||||
|
/path/to/meson.build` without a configured build directory
|
||||||
|
to scan for dependencies.
|
||||||
|
The output format is as follows:
|
||||||
|
```json
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"name": "The name of the dependency",
|
||||||
|
"required": true,
|
||||||
|
"conditional": false,
|
||||||
|
"has_fallback": false
|
||||||
|
}
|
||||||
|
]
|
||||||
|
```
|
||||||
|
The `required` keyword specifies whether the dependency is
|
||||||
|
marked as required in the `meson.build` (all dependencies are
|
||||||
|
required by default). The `conditional` key indicates whether
|
||||||
|
the `dependency()` function was called inside a conditional
|
||||||
|
block. In a real meson run these dependencies might not be
|
||||||
|
used, thus they _may_ not be required, even if the
|
||||||
|
`required` key is set. The `has_fallback` key just indicates
|
||||||
|
whether a fallback was directly set in the `dependency()`
|
||||||
|
function.
|
||||||
|
* `introspect --targets` can now be used without configured
|
||||||
|
build directory
|
||||||
|
It is now possible to run `meson introspect --targets
|
||||||
|
/path/to/meson.build` without a configured build directory.
|
||||||
|
The generated output is similar to running the introspection
|
||||||
|
with a build directory. However, there are some key
|
||||||
|
differences:
|
||||||
|
+ The paths in `filename` now are _relative_ to the future
|
||||||
|
build directory
|
||||||
|
+ The `install_filename` key is completely missing
|
||||||
|
+ There is only one entry in `target_sources`:
|
||||||
|
x With the language set to `unknown`
|
||||||
|
x Empty lists for `compiler` and `parameters` and
|
||||||
|
`generated_sources`
|
||||||
|
x The `sources` list _should_ contain all sources of the
|
||||||
|
target
|
||||||
|
There is no guarantee that the sources list in
|
||||||
|
`target_sources` is correct.
|
||||||
|
There might be differences, due to internal limitations. It
|
||||||
|
is also not guaranteed that all targets will be listed in
|
||||||
|
the output. It might even be possible that targets are
|
||||||
|
listed, which won't exist when meson is run normally.
|
||||||
|
This can happen if a target is defined inside an if
|
||||||
|
statement.
|
||||||
|
Use this feature with care.
|
||||||
|
* Added option to introspect multiple parameters at once
|
||||||
|
Meson introspect can now print the results of multiple
|
||||||
|
introspection commands in a single call. The results are
|
||||||
|
then printed as a single JSON object.
|
||||||
|
The format for a single command was not changed to keep
|
||||||
|
backward compatibility.
|
||||||
|
Furthermore the option `-a,--all`, `-i,--indent` and
|
||||||
|
`-f,--force-object-output` were added to print all
|
||||||
|
introspection information in one go,
|
||||||
|
format the JSON output (the default is still compact JSON)
|
||||||
|
and force use the new output format, even if only one
|
||||||
|
introspection command was given.
|
||||||
|
A complete introspection dump is also stored in the
|
||||||
|
`meson-info` directory. This dump will be (re)generated each
|
||||||
|
time meson updates the configuration of the build directory.
|
||||||
|
Additionlly the format of `meson introspect target` was
|
||||||
|
changed:
|
||||||
|
+ New: the `sources` key. It stores the source files of a
|
||||||
|
target and their compiler parameters.
|
||||||
|
+ New: the `defined_in` key. It stores the meson file
|
||||||
|
where a target is defined
|
||||||
|
+ New: the `subproject` key. It stores the name of the
|
||||||
|
subproject where a target is defined.
|
||||||
|
+ Added new target types (`jar`, `shared module`).
|
||||||
|
* meson configure can now print the default options of an
|
||||||
|
unconfigured project
|
||||||
|
With this release, it is also possible to get a list of all
|
||||||
|
build options by invoking `meson configure` with the project
|
||||||
|
source directory or the path to the root `meson.build`. In
|
||||||
|
this case, meson will print the default values of all
|
||||||
|
options.
|
||||||
|
* HDF5
|
||||||
|
HDF5 support is added via pkg-config.
|
||||||
|
* Added the `meson-info.json` introspection file
|
||||||
|
Meson now generates a `meson-info.json` file in the
|
||||||
|
`meson-info` directory to provide introspection information
|
||||||
|
about the latest meson run. This file is updated when the
|
||||||
|
build configuration is changed and the build files are
|
||||||
|
(re)generated.
|
||||||
|
|
||||||
|
- Refreshed meson-suse-ify-macros.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Feb 26 19:16:24 UTC 2019 - Luigi Baldoni <aloisio@gmx.com>
|
Tue Feb 26 19:16:24 UTC 2019 - Luigi Baldoni <aloisio@gmx.com>
|
||||||
|
|
||||||
|
@ -28,7 +28,7 @@
|
|||||||
%{!?vim_data_dir:%global vim_data_dir %{_datadir}/vim}
|
%{!?vim_data_dir:%global vim_data_dir %{_datadir}/vim}
|
||||||
%bcond_with setuptools
|
%bcond_with setuptools
|
||||||
Name: meson%{name_ext}
|
Name: meson%{name_ext}
|
||||||
Version: 0.49.2
|
Version: 0.50.1
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Python-based build system
|
Summary: Python-based build system
|
||||||
License: Apache-2.0
|
License: Apache-2.0
|
||||||
|
Loading…
Reference in New Issue
Block a user