aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/markdown/Release-notes-for-1.8.0.md134
-rw-r--r--docs/markdown/snippets/android-exe-type.md10
-rw-r--r--docs/markdown/snippets/b_sanitizer_changes.md17
-rw-r--r--docs/markdown/snippets/c2y.md4
-rw-r--r--docs/markdown/snippets/i18n_xgettext.md12
-rw-r--r--docs/markdown/snippets/multiple_version_compare.md8
-rw-r--r--docs/markdown/snippets/objc-cpp.md8
-rw-r--r--docs/markdown/snippets/optionrefactor.md19
-rw-r--r--docs/markdown/snippets/rust-objects.md4
-rw-r--r--docs/markdown/snippets/rust-test-link-whole.md4
-rw-r--r--docs/markdown/snippets/rustdoc.md6
-rw-r--r--docs/markdown/snippets/stabilized-wayland.md4
-rw-r--r--docs/markdown/snippets/swift-std.md4
-rw-r--r--docs/markdown/snippets/test-slicing.md6
-rw-r--r--docs/markdown/snippets/valgrind_test.md6
-rw-r--r--docs/sitemap.txt1
16 files changed, 135 insertions, 112 deletions
diff --git a/docs/markdown/Release-notes-for-1.8.0.md b/docs/markdown/Release-notes-for-1.8.0.md
new file mode 100644
index 0000000..4289e91
--- /dev/null
+++ b/docs/markdown/Release-notes-for-1.8.0.md
@@ -0,0 +1,134 @@
+---
+title: Release 1.8.0
+short-description: Release notes for 1.8.0
+...
+
+# New features
+
+Meson 1.8.0 was released on 28 April 2025
+## New argument `android_exe_type` for executables
+
+Android application executables actually need to be linked
+as a shared object, which is loaded from a pre-warmed JVM.
+Meson projects can now specify a new argument `android_exe_type`
+and set it to `application`, in order produce such a shared library
+only on Android targets.
+
+This makes it possible to use the same `meson.build` file
+for both Android and non-Android systems.
+
+## Changes to the b_sanitize option
+
+Before 1.8 the `b_sanitize` option was a combo option, which is an enumerated
+set of values. In 1.8 this was changed to a free-form array of options where
+available sanitizers are not hardcoded anymore but instead verified via a
+compiler check.
+
+This solves a number of longstanding issues such as:
+
+ - Sanitizers may be supported by a compiler, but not on a specific platform
+ (OpenBSD).
+ - New sanitizers are not recognized by Meson.
+ - Using sanitizers in previously-unsupported combinations.
+
+To not break backwards compatibility, calling `get_option('b_sanitize')`
+continues to return the configured value as a string, with a guarantee that
+`address,undefined` remains ordered.
+
+## New C standard `c2y` (and `gnu2y`)
+
+The `c2y` standard and its companion `gnu2y` are now supported
+when using either Clang 19.0.0 or newer, or GCC 15.0.0 or newer.
+
+## i18n module xgettext
+
+There is a new `xgettext` function in `i18n` module that acts as a
+wrapper around `xgettext`. It allows to extract strings to translate from
+source files.
+
+This function is convenient, because:
+- It can find the sources files from a build target;
+- It will use an intermediate file when the number of source files is too
+ big to be handled directly from the command line;
+- It is able to get strings to translate from the dependencies of the given
+ targets.
+
+## `version_compare` now accept multiple compare strings
+
+Is it now possible to compare version against multiple values, to check for
+a range of version for instance.
+
+```meson
+'1.5'.version_compare('>=1', '<2')
+```
+
+## Improvements to Objective-C and Objective-C++
+
+Meson does not assume anymore that gcc/g++ always support
+Objective-C and Objective-C++, and instead checks that they
+can actually do a basic compile.
+
+Furthermore, Objective-C and Objective-C++ now support the
+same language standards as C and C++ respectively.
+
+## Per project subproject options rewrite
+
+You can now define per-subproject values for all shared configuration
+options. As an example you might want to enable optimizations on only
+one subproject:
+
+ meson configure -Dnumbercruncher:optimization=3
+
+Subproject specific values can be removed with -U
+
+ meson configure -Unumbercruncher:optimization
+
+This is a major change in how options are handled, and the
+implementation will evolve over the next few releases of Meson. If
+this change causes an error in your builds, please [report an issue on
+GitHub](https://github.com/mesonbuild/meson/issues/new).
+
+We have tried to keep backwards compatibility as much as possible, but
+this may lead to some build breakage.
+
+## `objects` added correctly to Rust executables
+
+Any objects included in a Rust executable were previously ignored. They
+are now added correctly.
+
+## `rust.test` now supports `link_whole`
+
+The `test` function in the `rust` module now supports the `link_whole`
+keyword argument in addition to `link_with` and `dependencies`.
+
+## Meson can run "rustdoc" on Rust projects
+
+Meson now defines a `rustdoc` target if the project
+uses the Rust programming language. The target runs rustdoc on all Rust
+sources, using the `rustdoc` program from the same Rust toolchain as the
+`rustc` compiler.
+
+## The Wayland module is stable
+
+The Wayland module has been tested in several projects and had the
+last breaking change in Meson 0.64.0; it is now marked as stable.
+
+## New `swift_std` compiler option
+
+A new compiler option allows to set the language version that is passed
+to swiftc (`none`, `4`, `4.2`, `5` or `6`).
+
+## New option to execute a slice of tests
+
+When tests take a long time to run a common strategy is to slice up the tests
+into multiple sets, where each set is executed on a separate machine. You can
+now use the `--slice i/n` argument for `meson test` to create `n` slices and
+execute the `ith` slice.
+
+## Valgrind now fails tests if errors are found
+
+Valgrind does not reflect an error in its exit code by default, meaning
+a test may silently pass despite memory errors. Meson now exports
+`VALGRIND_OPTS` such that Valgrind will exit with status 1 to indicate
+an error if `VALGRIND_OPTS` is not set in the environment.
+
diff --git a/docs/markdown/snippets/android-exe-type.md b/docs/markdown/snippets/android-exe-type.md
deleted file mode 100644
index ce4d946..0000000
--- a/docs/markdown/snippets/android-exe-type.md
+++ /dev/null
@@ -1,10 +0,0 @@
-## New argument `android_exe_type` for executables
-
-Android application executables actually need to be linked
-as a shared object, which is loaded from a pre-warmed JVM.
-Meson projects can now specify a new argument `android_exe_type`
-and set it to `application`, in order produce such a shared library
-only on Android targets.
-
-This makes it possible to use the same `meson.build` file
-for both Android and non-Android systems.
diff --git a/docs/markdown/snippets/b_sanitizer_changes.md b/docs/markdown/snippets/b_sanitizer_changes.md
deleted file mode 100644
index f726d70..0000000
--- a/docs/markdown/snippets/b_sanitizer_changes.md
+++ /dev/null
@@ -1,17 +0,0 @@
-## Changes to the b_sanitize option
-
-Before 1.8 the `b_sanitize` option was a combo option, which is an enumerated
-set of values. In 1.8 this was changed to a free-form array of options where
-available sanitizers are not hardcoded anymore but instead verified via a
-compiler check.
-
-This solves a number of longstanding issues such as:
-
- - Sanitizers may be supported by a compiler, but not on a specific platform
- (OpenBSD).
- - New sanitizers are not recognized by Meson.
- - Using sanitizers in previously-unsupported combinations.
-
-To not break backwards compatibility, calling `get_option('b_sanitize')`
-continues to return the configured value as a string, with a guarantee that
-`address,undefined` remains ordered.
diff --git a/docs/markdown/snippets/c2y.md b/docs/markdown/snippets/c2y.md
deleted file mode 100644
index 4b647f8..0000000
--- a/docs/markdown/snippets/c2y.md
+++ /dev/null
@@ -1,4 +0,0 @@
-## New C standard `c2y` (and `gnu2y`)
-
-The `c2y`` standard and its companion `gnu2y` are now supported
-when using either Clang 19.0.0 or newer, or GCC 15.0.0 or newer.
diff --git a/docs/markdown/snippets/i18n_xgettext.md b/docs/markdown/snippets/i18n_xgettext.md
deleted file mode 100644
index 0ad0a14..0000000
--- a/docs/markdown/snippets/i18n_xgettext.md
+++ /dev/null
@@ -1,12 +0,0 @@
-## i18n module xgettext
-
-There is a new `xgettext` function in `i18n` module that acts as a
-wrapper around `xgettext`. It allows to extract strings to translate from
-source files.
-
-This function is convenient, because:
-- It can find the sources files from a build target;
-- It will use an intermediate file when the number of source files is too
- big to be handled directly from the command line;
-- It is able to get strings to translate from the dependencies of the given
- targets.
diff --git a/docs/markdown/snippets/multiple_version_compare.md b/docs/markdown/snippets/multiple_version_compare.md
deleted file mode 100644
index 5e8c758..0000000
--- a/docs/markdown/snippets/multiple_version_compare.md
+++ /dev/null
@@ -1,8 +0,0 @@
-## `version_compare` now accept multiple compare strings
-
-Is it now possible to compare version against multiple values, to check for
-a range of version for instance.
-
-```meson
-'1.5'.version_compare('>=1', '<2')
-```
diff --git a/docs/markdown/snippets/objc-cpp.md b/docs/markdown/snippets/objc-cpp.md
deleted file mode 100644
index 3d22ccb..0000000
--- a/docs/markdown/snippets/objc-cpp.md
+++ /dev/null
@@ -1,8 +0,0 @@
-## Improvements to Objective-C and Objective-C++
-
-Meson does not assume anymore that gcc/g++ always support
-Objective-C and Objective-C++, and instead checks that they
-can actually do a basic compile.
-
-Furthermore, Objective-C and Objective-C++ now support the
-same language standards as C and C++ respectively.
diff --git a/docs/markdown/snippets/optionrefactor.md b/docs/markdown/snippets/optionrefactor.md
deleted file mode 100644
index 53dbdbc..0000000
--- a/docs/markdown/snippets/optionrefactor.md
+++ /dev/null
@@ -1,19 +0,0 @@
-## Per project subproject options rewrite
-
-You can now define per-subproject values for all shared configuration
-options. As an example you might want to enable optimizations on only
-one subproject:
-
- meson configure -Dnumbercruncher:optimization=3
-
-Subproject specific values can be removed with -U
-
- meson configure -Unumbercruncher:optimization
-
-This is a major change in how options are handled, and the
-implementation will evolve over the next few releases of Meson. If
-this change causes an error in your builds, please [report an issue on
-GitHub](https://github.com/mesonbuild/meson/issues/new).
-
-We have tried to keep backwards compatibility as much as possible, but
-this may lead to some build breakage.
diff --git a/docs/markdown/snippets/rust-objects.md b/docs/markdown/snippets/rust-objects.md
deleted file mode 100644
index 575e1f6..0000000
--- a/docs/markdown/snippets/rust-objects.md
+++ /dev/null
@@ -1,4 +0,0 @@
-## `objects` added correctly to Rust executables
-
-Any objects included in a Rust executable were previously ignored. They
-are now added correctly.
diff --git a/docs/markdown/snippets/rust-test-link-whole.md b/docs/markdown/snippets/rust-test-link-whole.md
deleted file mode 100644
index f3d006d..0000000
--- a/docs/markdown/snippets/rust-test-link-whole.md
+++ /dev/null
@@ -1,4 +0,0 @@
-## `rust.test` now supports `link_whole`
-
-The `test` function in the `rust` module now supports the `link_whole`
-keyword argument in addition to `link_with` and `dependencies`.
diff --git a/docs/markdown/snippets/rustdoc.md b/docs/markdown/snippets/rustdoc.md
deleted file mode 100644
index b0b64aa..0000000
--- a/docs/markdown/snippets/rustdoc.md
+++ /dev/null
@@ -1,6 +0,0 @@
-## Meson can run "rustdoc" on Rust projects
-
-Meson now defines a `rustdoc` target if the project
-uses the Rust programming language. The target runs rustdoc on all Rust
-sources, using the `rustdoc` program from the same Rust toolchain as the
-`rustc` compiler.
diff --git a/docs/markdown/snippets/stabilized-wayland.md b/docs/markdown/snippets/stabilized-wayland.md
deleted file mode 100644
index 3b132e6..0000000
--- a/docs/markdown/snippets/stabilized-wayland.md
+++ /dev/null
@@ -1,4 +0,0 @@
-## The Wayland module is stable
-
-The Wayland module has been tested in several projects and had the
-last breaking change in Meson 0.64.0; it is now marked as stable.
diff --git a/docs/markdown/snippets/swift-std.md b/docs/markdown/snippets/swift-std.md
deleted file mode 100644
index 64fe70c..0000000
--- a/docs/markdown/snippets/swift-std.md
+++ /dev/null
@@ -1,4 +0,0 @@
-## New `swift_std` compiler option
-
-A new compiler option allows to set the language version that is passed
-to swiftc (`none`, `4`, `4.2`, `5` or `6`).
diff --git a/docs/markdown/snippets/test-slicing.md b/docs/markdown/snippets/test-slicing.md
deleted file mode 100644
index 180b9ac..0000000
--- a/docs/markdown/snippets/test-slicing.md
+++ /dev/null
@@ -1,6 +0,0 @@
-## New option to execute a slice of tests
-
-When tests take a long time to run a common strategy is to slice up the tests
-into multiple sets, where each set is executed on a separate machine. You can
-now use the `--slice i/n` argument for `meson test` to create `n` slices and
-execute the `ith` slice.
diff --git a/docs/markdown/snippets/valgrind_test.md b/docs/markdown/snippets/valgrind_test.md
deleted file mode 100644
index 0787300..0000000
--- a/docs/markdown/snippets/valgrind_test.md
+++ /dev/null
@@ -1,6 +0,0 @@
-## Valgrind now fails tests if errors are found
-
-Valgrind does not reflect an error in its exit code by default, meaning
-a test may silently pass despite memory errors. Meson now exports
-`VALGRIND_OPTS` such that Valgrind will exit with status 1 to indicate
-an error if `VALGRIND_OPTS` is not set in the environment.
diff --git a/docs/sitemap.txt b/docs/sitemap.txt
index 21f495e..fd37185 100644
--- a/docs/sitemap.txt
+++ b/docs/sitemap.txt
@@ -88,6 +88,7 @@ index.md
Wrap-best-practices-and-tips.md
Shipping-prebuilt-binaries-as-wraps.md
Release-notes.md
+ Release-notes-for-1.8.0.md
Release-notes-for-1.7.0.md
Release-notes-for-1.6.0.md
Release-notes-for-1.5.0.md