Updated version number for new release.

pull/2760/head 0.44.0
Jussi Pakkanen 7 years ago
parent cbefb57ffe
commit e674434389
  1. 2
      docs/markdown/Reference-manual.md
  2. 141
      docs/markdown/Release-notes-for-0.44.0.md
  3. 16
      docs/markdown/Release-notes-for-0.45.0.md
  4. 9
      docs/markdown/snippets/builtin-python.md
  5. 11
      docs/markdown/snippets/config-tool-variable-method.md
  6. 33
      docs/markdown/snippets/disabler.md
  7. 4
      docs/markdown/snippets/get_unquoted.md
  8. 13
      docs/markdown/snippets/if-found.md
  9. 8
      docs/markdown/snippets/llvm-static-linking.md
  10. 18
      docs/markdown/snippets/option-array-type.md
  11. 10
      docs/markdown/snippets/prefix-dependent-defaults.md
  12. 8
      docs/markdown/snippets/qt5-moc_extra_arguments.md
  13. 20
      docs/markdown/snippets/system-wide-cross-files.md
  14. 6
      docs/markdown/snippets/warning_function
  15. 1
      docs/sitemap.txt
  16. 2
      man/meson.1
  17. 2
      man/mesonconf.1
  18. 2
      man/mesonintrospect.1
  19. 2
      man/mesontest.1
  20. 2
      man/wraptool.1
  21. 2
      mesonbuild/coredata.py

@ -1571,7 +1571,7 @@ page](Configuration.md) It has three methods:
- `get_unquoted(varname, default_value)` returns the value of `varname`
but without surrounding double quotes (`"`). If the value has not been
set returns `default_value` if it is defined and errors out if not.
Available since 0.43.0
Available since 0.44.0
- `has(varname)`, returns `true` if the specified variable is set

@ -1,16 +1,143 @@
---
title: Release 0.44
short-description: Release notes for 0.44 (preliminary)
short-description: Release notes for 0.44
...
# New features
This page is a placeholder for the eventual release notes.
## Added warning function
Notable new features should come with release note updates. This is
done by creating a file snippet called `snippets/featurename.md` and
whose contents should look like this:
This function prints its argument to the console prefixed by "WARNING:" in
yellow color. A simple example:
# Feature name
warning('foo is deprecated, please use bar instead')
A short description explaining the new feature and how it should be used.
## Adds support for additional Qt5-Module keyword `moc_extra_arguments`
When `moc`-ing sources, the `moc` tool does not know about any
preprocessor macros. The generated code might not match the input
files when the linking with the moc input sources happens.
This amendment allows to specify a a list of additional arguments
passed to the `moc` tool. They are called `moc_extra_arguments`.
## Prefix-dependent defaults for sysconfdir, localstatedir and sharedstatedir
These options now default in a way consistent with
[FHS](http://refspecs.linuxfoundation.org/fhs.shtml) and common usage.
If prefix is `/usr`, default sysconfdir to `/etc`, localstatedir to `/var` and
sharedstatedir to `/var/lib`.
If prefix is `/usr/local` (the default), default localstatedir to `/var/local`
and sharedstatedir to `/var/local/lib`.
## An array type for user options
Previously to have an option that took more than one value a string
value would have to be created and split, but validating this was
difficult. A new array type has been added to the meson_options.txt
for this case. It works like a 'combo', but allows more than one
option to be passed. The values can optionally be validated against a
list of valid values. When used on the command line (with -D), values
are passed as a comma separated list.
```meson
option('array_opt', type : 'array', choices : ['one', 'two', 'three'], value : ['one'])
```
These can be overwritten on the command line,
```meson
meson _build -Darray_opt=two,three
```
## LLVM dependency supports both dynamic and static linking
The LLVM dependency has been improved to consistently use dynamic linking.
Previously recent version (>= 3.9) would link dynamically while older versions
would link statically.
Now LLVM also accepts the `static` keyword to enable statically linking to LLVM
modules instead of dynamically linking.
## Added `if_found` to subdir
Added a new keyword argument to the `subdir` command. It is given a
list of dependency objects and the function will only recurse in the
subdirectory if they are all found. Typical usage goes like this.
d1 = dependency('foo') # This is found
d2 = dependency('bar') # This is not found
subdir('somedir', if_found : [d1, d2])
In this case the subdirectory would not be entered since `d2` could
not be found.
## `get_unquoted()` method for the `configuration` data object
New convenience method that allows reusing a variable value
defined quoted. Useful in C for config.h strings for example.
## Added disabler object
A disabler object is a new kind of object that has very specific
semantics. If it is used as part of any other operation such as an
argument to a function call, logical operations etc, it will cause the
operation to not be evaluated. Instead the return value of said
operation will also be the disabler object.
For example if you have an setup like this:
```meson
dep = dependency('foo')
lib = shared_library('mylib', 'mylib.c',
dependencies : dep)
exe = executable('mytest', 'mytest.c',
link_with : lib)
test('mytest', exe)
```
If you replace the dependency with a disabler object like this:
```meson
dep = disabler()
lib = shared_library('mylib', 'mylib.c',
dependencies : dep)
exe = executable('mytest', 'mytest.c',
link_with : lib)
test('mytest', exe)
```
Then the shared library, executable and unit test are not
created. This is a handy mechanism to cut down on the number of `if`
statements.
## Config-Tool based dependencies gained a method to get arbitrary options
A number of dependencies (CUPS, LLVM, pcap, WxWidgets, GnuStep) use a config
tool instead of pkg-config. As of this version they now have a
`get_configtool_variable` method, which is analogous to the
`get_pkgconfig_variable` for pkg config.
```meson
dep_llvm = dependency('LLVM')
llvm_inc_dir = dep_llvm.get_configtool_variable('includedir')
```
## Embedded Python in Windows MSI packages
Meson now ships an internal version of Python in the MSI installer packages.
This means that it can run Python scripts that are part of your build
transparently. That is, if you do the following:
myprog = find_program('myscript.py')
Then Meson will run the script with its internal Python version if necessary.

@ -0,0 +1,16 @@
---
title: Release 0.45
short-description: Release notes for 0.45 (preliminary)
...
# New features
This page is a placeholder for the eventual release notes.
Notable new features should come with release note updates. This is
done by creating a file snippet called `snippets/featurename.md` and
whose contents should look like this:
## Feature name
A short description explaining the new feature and how it should be used.

@ -1,9 +0,0 @@
# Embedded Python in Windows MSI packages
Meson now ships an internal version of Python in the MSI installer packages.
This means that it can run Python scripts that are part of your build
transparently. That is, if you do the following:
myprog = find_program('myscript.py')
Then Meson will run the script with its internal Python version if necessary.

@ -1,11 +0,0 @@
# Config-Tool based dependencies gained a method to get arbitrary options
A number of dependencies (CUPS, LLVM, pcap, WxWidgets, GnuStep) use a config
tool instead of pkg-config. As of this version they now have a
`get_configtool_variable` method, which is analogous to the
`get_pkgconfig_variable` for pkg config.
```meson
dep_llvm = dependency('LLVM')
llvm_inc_dir = dep_llvm.get_configtool_variable('includedir')
```

@ -1,33 +0,0 @@
# Added disabler object
A disabler object is a new kind of object that has very specific
semantics. If it is used as part of any other operation such as an
argument to a function call, logical operations etc, it will cause the
operation to not be evaluated. Instead the return value of said
operation will also be the disabler object.
For example if you have an setup like this:
```meson
dep = dependency('foo')
lib = shared_library('mylib', 'mylib.c',
dependencies : dep)
exe = executable('mytest', 'mytest.c',
link_with : lib)
test('mytest', exe)
```
If you replace the dependency with a disabler object like this:
```meson
dep = disabler()
lib = shared_library('mylib', 'mylib.c',
dependencies : dep)
exe = executable('mytest', 'mytest.c',
link_with : lib)
test('mytest', exe)
```
Then the shared library, executable and unit test are not
created. This is a handy mechanism to cut down on the number of `if`
statements.

@ -1,4 +0,0 @@
# `get_unquoted()` method for the `configuration` data object
New convenience method that allows reusing a variable value
defined quoted. Useful in C for config.h strings for example.

@ -1,13 +0,0 @@
# Added `if_found` to subdir
Added a new keyword argument to the `subdir` command. It is given a
list of dependency objects and the function will only recurse in the
subdirectory if they are all found. Typical usage goes like this.
d1 = dependency('foo') # This is found
d2 = dependency('bar') # This is not found
subdir('somedir', if_found : [d1, d2])
In this case the subdirectory would not be entered since `d2` could
not be found.

@ -1,8 +0,0 @@
# LLVM dependency supports both dynamic and static linking
The LLVM dependency has been improved to consistently use dynamic linking.
Previously recent version (>= 3.9) would link dynamically while older versions
would link statically.
Now LLVM also accepts the `static` keyword to enable statically linking to LLVM
modules instead of dynamically linking.

@ -1,18 +0,0 @@
# An array type for user options
Previously to have an option that took more than one value a string value would
have to be created and split, but validating this was difficult. A new array type
has been added to the meson_options.txt for this case. It works like a 'combo', but
allows more than one option to be passed. The values can optionally be validated
against a list of valid values. When used on the command line (with -D), values
are passed as a comma separated list.
```meson
option('array_opt', type : 'array', choices : ['one', 'two', 'three'], value : ['one'])
```
These can be overwritten on the command line,
```meson
meson _build -Darray_opt=two,three
```

@ -1,10 +0,0 @@
# Prefix-dependent defaults for sysconfdir, localstatedir and sharedstatedir
These options now default in a way consistent with
[FHS](http://refspecs.linuxfoundation.org/fhs.shtml) and common usage.
If prefix is `/usr`, default sysconfdir to `/etc`, localstatedir to `/var` and
sharedstatedir to `/var/lib`.
If prefix is `/usr/local` (the default), default localstatedir to `/var/local`
and sharedstatedir to `/var/local/lib`.

@ -1,8 +0,0 @@
# Adds support for additional Qt5-Module keyword `moc_extra_arguments`
When `moc`-ing sources, the `moc` tool does not know about any
preprocessor macros. The generated code might not match the input
files when the linking with the moc input sources happens.
This amendment allows to specify a a list of additional arguments
passed to the `moc` tool. They are called `moc_extra_arguments`.

@ -1,20 +0,0 @@
## System wide and user local cross files
Meson has gained the ability to load cross files from predefined locations
without passing a full path on Linux and the BSD OSes. User local files will be
loaded from `$XDG_DATA_HOME/meson/cross`, or if XDG_DATA_HOME is undefined,
`~/.local/share/meson/cross` will be used.
For system wide paths the values of `$XDG_DATA_DIRS` + `/meson/cross` will be used,
if XDG_DATA_DIRS is undefined then `/usr/local/share/meson/cross:/usr/share/meson/cross`
will be used instead.
A file relative to the current working directory will be tried first, then the
user specific path will be tried before the system wide paths.
Assuming that a file x86-linux is located in one of those places a cross build
can be started with:
```sh
meson builddir/ --cross-file x86-linux
```

@ -1,6 +0,0 @@
# Added warning function
This function prints its argument to the console prefixed by "WARNING:" in
yellow color. A simple example:
warning('foo is deprecated, please use bar instead')

@ -62,6 +62,7 @@ index.md
Shipping-prebuilt-binaries-as-wraps.md
fallback-wraptool.md
Release-notes.md
Release-notes-for-0.45.0.md
Release-notes-for-0.44.0.md
Release-notes-for-0.43.0.md
Release-notes-for-0.42.0.md

@ -1,4 +1,4 @@
.TH MESON "1" "October 2017" "meson 0.43.0" "User Commands"
.TH MESON "1" "December 2017" "meson 0.44.0" "User Commands"
.SH NAME
meson - a high productivity build system
.SH DESCRIPTION

@ -1,4 +1,4 @@
.TH MESONCONF "1" "October 2017" "mesonconf 0.43.0" "User Commands"
.TH MESONCONF "1" "December 2017" "mesonconf 0.44.0" "User Commands"
.SH NAME
mesonconf - a tool to configure Meson builds
.SH DESCRIPTION

@ -1,4 +1,4 @@
.TH MESONINTROSPECT "1" "October 2017" "mesonintrospect 0.43.0" "User Commands"
.TH MESONINTROSPECT "1" "December 2017" "mesonintrospect 0.44.0" "User Commands"
.SH NAME
mesonintrospect - a tool to extract information about a Meson build
.SH DESCRIPTION

@ -1,4 +1,4 @@
.TH MESON "1" "October 2017" "meson 0.43.0" "User Commands"
.TH MESON "1" "December 2017" "meson 0.44.0" "User Commands"
.SH NAME
mesontest - test tool for the Meson build system
.SH DESCRIPTION

@ -1,4 +1,4 @@
.TH WRAPTOOL "1" "October 2017" "meson 0.43.0" "User Commands"
.TH WRAPTOOL "1" "December 2017" "meson 0.44.0" "User Commands"
.SH NAME
wraptool - source dependency downloader
.SH DESCRIPTION

@ -21,7 +21,7 @@ from .mesonlib import MesonException, commonpath
from .mesonlib import default_libdir, default_libexecdir, default_prefix
import ast
version = '0.44.0.dev1'
version = '0.44.0'
backendlist = ['ninja', 'vs', 'vs2010', 'vs2015', 'vs2017', 'xcode']
class UserOption:

Loading…
Cancel
Save