diff options
Diffstat (limited to 'docs/markdown')
-rw-r--r-- | docs/markdown/Reference-manual.md | 2 | ||||
-rw-r--r-- | docs/markdown/Release-notes-for-0.44.0.md | 141 | ||||
-rw-r--r-- | docs/markdown/Release-notes-for-0.45.0.md | 16 | ||||
-rw-r--r-- | docs/markdown/snippets/builtin-python.md | 9 | ||||
-rw-r--r-- | docs/markdown/snippets/config-tool-variable-method.md | 11 | ||||
-rw-r--r-- | docs/markdown/snippets/disabler.md | 33 | ||||
-rwxr-xr-x | docs/markdown/snippets/get_unquoted.md | 4 | ||||
-rw-r--r-- | docs/markdown/snippets/if-found.md | 13 | ||||
-rw-r--r-- | docs/markdown/snippets/llvm-static-linking.md | 8 | ||||
-rw-r--r-- | docs/markdown/snippets/option-array-type.md | 18 | ||||
-rw-r--r-- | docs/markdown/snippets/prefix-dependent-defaults.md | 10 | ||||
-rw-r--r-- | docs/markdown/snippets/qt5-moc_extra_arguments.md | 8 | ||||
-rw-r--r-- | docs/markdown/snippets/system-wide-cross-files.md | 20 | ||||
-rw-r--r-- | docs/markdown/snippets/warning_function | 6 |
14 files changed, 151 insertions, 148 deletions
diff --git a/docs/markdown/Reference-manual.md b/docs/markdown/Reference-manual.md index 13a2b2a..03660f5 100644 --- a/docs/markdown/Reference-manual.md +++ b/docs/markdown/Reference-manual.md @@ -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 diff --git a/docs/markdown/Release-notes-for-0.44.0.md b/docs/markdown/Release-notes-for-0.44.0.md index 0df2e97..93e224d 100644 --- a/docs/markdown/Release-notes-for-0.44.0.md +++ b/docs/markdown/Release-notes-for-0.44.0.md @@ -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. diff --git a/docs/markdown/Release-notes-for-0.45.0.md b/docs/markdown/Release-notes-for-0.45.0.md new file mode 100644 index 0000000..b3df71c --- /dev/null +++ b/docs/markdown/Release-notes-for-0.45.0.md @@ -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. diff --git a/docs/markdown/snippets/builtin-python.md b/docs/markdown/snippets/builtin-python.md deleted file mode 100644 index 01bb6e0..0000000 --- a/docs/markdown/snippets/builtin-python.md +++ /dev/null @@ -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. diff --git a/docs/markdown/snippets/config-tool-variable-method.md b/docs/markdown/snippets/config-tool-variable-method.md deleted file mode 100644 index 7725982..0000000 --- a/docs/markdown/snippets/config-tool-variable-method.md +++ /dev/null @@ -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') -``` diff --git a/docs/markdown/snippets/disabler.md b/docs/markdown/snippets/disabler.md deleted file mode 100644 index 1323048..0000000 --- a/docs/markdown/snippets/disabler.md +++ /dev/null @@ -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. diff --git a/docs/markdown/snippets/get_unquoted.md b/docs/markdown/snippets/get_unquoted.md deleted file mode 100755 index a6bfc4f..0000000 --- a/docs/markdown/snippets/get_unquoted.md +++ /dev/null @@ -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. diff --git a/docs/markdown/snippets/if-found.md b/docs/markdown/snippets/if-found.md deleted file mode 100644 index a8d4932..0000000 --- a/docs/markdown/snippets/if-found.md +++ /dev/null @@ -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. diff --git a/docs/markdown/snippets/llvm-static-linking.md b/docs/markdown/snippets/llvm-static-linking.md deleted file mode 100644 index bb72a56..0000000 --- a/docs/markdown/snippets/llvm-static-linking.md +++ /dev/null @@ -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. diff --git a/docs/markdown/snippets/option-array-type.md b/docs/markdown/snippets/option-array-type.md deleted file mode 100644 index 9eb1312..0000000 --- a/docs/markdown/snippets/option-array-type.md +++ /dev/null @@ -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 -``` diff --git a/docs/markdown/snippets/prefix-dependent-defaults.md b/docs/markdown/snippets/prefix-dependent-defaults.md deleted file mode 100644 index 7cc1792..0000000 --- a/docs/markdown/snippets/prefix-dependent-defaults.md +++ /dev/null @@ -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`. diff --git a/docs/markdown/snippets/qt5-moc_extra_arguments.md b/docs/markdown/snippets/qt5-moc_extra_arguments.md deleted file mode 100644 index 957c3c7..0000000 --- a/docs/markdown/snippets/qt5-moc_extra_arguments.md +++ /dev/null @@ -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`.
\ No newline at end of file diff --git a/docs/markdown/snippets/system-wide-cross-files.md b/docs/markdown/snippets/system-wide-cross-files.md deleted file mode 100644 index 66c454f..0000000 --- a/docs/markdown/snippets/system-wide-cross-files.md +++ /dev/null @@ -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 -``` diff --git a/docs/markdown/snippets/warning_function b/docs/markdown/snippets/warning_function deleted file mode 100644 index 537651e..0000000 --- a/docs/markdown/snippets/warning_function +++ /dev/null @@ -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') |