aboutsummaryrefslogtreecommitdiff
path: root/docs/markdown
AgeCommit message (Collapse)AuthorFilesLines
11 hoursdocs: fix markup in release notesHEADmasterBenjamin Gilbert1-1/+1
29 hoursAdd release notes for 1.8 that I forgot.Jussi Pakkanen15-112/+134
7 daysdocs: users: list is for notable meson adopteesSam James1-7/+6
We don't want churn with thie list for every project someone creates that uses Meson. Change the intro to say we want notable projects and link to a GitHub search for 'meson.build' files for people who want further examples to consider.
9 daysdocument android_exe_type in release notesPaolo Bonzini1-0/+10
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
9 daysdocument c_std=c2y in release notesPaolo Bonzini1-0/+4
9 daysdocument improvements to Objective-C and Objective-C++Paolo Bonzini1-0/+8
9 daysdocument -Dswift_std in release notesPaolo Bonzini1-0/+4
9 daysadd wayland stabilisation to release notesPaolo Bonzini1-0/+4
9 daysfix typoPaolo Bonzini1-1/+1
9 daysmove "since 1.8.0" for rust.doctest to the right placePaolo Bonzini1-2/+2
14 daysenvironment: handle all iOS variants as xnuPaolo Bonzini1-0/+2
All of iOS, tvOS, visionOS, watchOS use the XNU kernel. Report that and also make them return true for is_darwin() which is really more like "is_xnu()". Co-authored-by: Russell Keith-Magee <russell@keith-magee.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2025-04-09Add documentation for compiler.has_define to user guideWill Ayd1-0/+12
2025-04-09New xgettext method for i18n moduleCharles Brunet2-0/+59
This method call xgettext to extract translatable string from source files into a .pot translation template. It differs from a plain CustomTarget in three ways: - It accepts build targets as sources, and automatically resolves source files from those build targets; - It detects command lines that are too long, and writes, at config time, the list of source files into a text file to be consumed by the xgettext command; - It detects dependencies between pot extraction targets, based on the dependencies between source targets.
2025-04-07Fix documentation typosEmil Berg7-9/+9
2025-04-07Fix link to "Building Fancy DMG Images on Mac OS X"Heikki Rauhala1-1/+1
2025-04-06Add C# to home page supported language listEmil Berg1-1/+1
2025-04-06docs: say '--wrapper', not '--wrap' for testsSam James1-3/+3
We document --wrapper and --wrap works only by expanding it automatically to --wrapper as it is unambiguous.
2025-04-04rust: add external objects to the link command linePaolo Bonzini1-0/+4
Because rustc does not support extract_objects, QEMU creates a static library with all the C objects. It then passes this static library as link_whole, together with another static library containing general purpose utility functions which is passed as link_with. However, this is brittle because the two have a circular dependency and they cannot be merged because of the link_whole/link_with difference. While lld seems to have the --start-group/--end-group semantics automatically, ld.bfd can fail if these options are needed. This can cause difference between distros depending on how Rust is packaged (e.g. Ubuntu 22.04 and Debian bookworm seem to use ld.bfd). The simplest solution is for Meson to implement "objects:" properly for Rust. Then QEMU can use the same internal dependency objects that it already has in place for C programs. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2025-04-02docs: fix default for mformat sort_files optionBenjamin Gilbert1-1/+1
sort_files has always defaulted to true. Fixes: 2b37101998c8 ("meson format command")
2025-04-02mtest: set VALGRIND_OPTS to fail tests on errorsSam James1-0/+6
We currently suggest that users run `meson test --wrapper valgrind`, but this doesn't do what one might expect: Valgrind doesn't error out on violations/issues it detects. In the past, we had special handling for Valgrind in tests, see 1f76b76a84cb635f764ecbd2b77aaba1d375d72b but it was later dropped in 951262d7590343ffa9730666c427ad9d708a9fb6. This is similar to what we do for {A,UB,M}SAN_OPTIONS to give sensible behaviour that users expect out-of-the-box. Only do this if we see 'valgrind' in the wrapper command to avoid polluting logs. We may want to do that for the sanitizers variables in future too. Note that we're not adding --exit-on-first-error=yes here, as there may be several issues in an application, or a test may be rather slow, and so on. But --error-exitcode=1 to simply make Valgrind's exit status reflect whether an error was found is uncontroversial. Bug: https://github.com/mesonbuild/meson/issues/4727 Bug: https://github.com/mesonbuild/meson/issues/1105 Bug: https://github.com/mesonbuild/meson/issues/1175 Bug: https://github.com/mesonbuild/meson/issues/13745
2025-04-02wayland: Mark module stableXavier Claessens1-7/+4
There is no point in printing warning about unstable module, in the worst case we can just deprecate and add new API. It has been tested in a few projects already, and this warning is a blocker on wider adoption.
2025-04-02rust: add link_whole to rust.test and rust.doctestPaolo Bonzini2-0/+6
QEMU needs it in its integration tests (in order to run global constructors), and therefore in rust.doctest too. With this change I could do: # Rust executables do not support objects, so add an intermediate step. rust_qemu_api_objs = static_library( 'rust_qemu_api_objs', objects: [libqom.extract_all_objects(recursive: false), libhwcore.extract_all_objects(recursive: false)]) rust.doctest('rust-qemu-api-doc', _qemu_api_rs, dependencies: [qemu_api, qemu_api_macros], link_with: libqemuutil, link_whole: [rust_qemu_api_objs], suite: ['doc', 'rust']) followed by "meson test --suite doc". For completeness, add it to rust.test as well. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2025-04-02rust: add rust.doctestPaolo Bonzini1-0/+27
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2025-04-02docs: add release notes for "ninja rustdoc"Paolo Bonzini1-0/+6
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2025-03-26docs: Clarify string building with absolute pathsPaul Caprioli1-0/+2
2025-03-24linkers: darwin: do not use -bundle for shared_modulesPaolo Bonzini1-2/+1
Both dynamic libraries and bundles these days can be dynamically loaded using the dl APIs (e.g. dlopen, dlclose). It is not possible to include bundles on a linker command line as if they were shared libraries, but that's pretty much the only difference. However, bundles fail the Apple verification for iOS: 2025-02-10 13:54:09.095 ERROR: Validation failed (409) The binary is invalid. The executable 'Runner.app/Frameworks/numpy._core._operand_flag_tests.framework/numpy._core._operand_flag_tests' has type 'BUNDLE' that is not valid. Only 'EXECUTE' is permitted. 2025-02-10 13:54:09.096 ERROR: Validation failed (409) Missing load commands. The executable at 'Runner.app/Frameworks/numpy._core._operand_flag_tests.framework' does not have the necessary load commands. Try rebuilding the app with the latest Xcode version. If you are using third party development tools, contact the provider. So switch to -dynamiclib for shared modules as well. Fixes: #14240
2025-03-24docs: Fix apt-get installation command linehpkfft.com1-6/+11
2025-03-24Fix doc for `meson test --print-errorlogs` [skip ci]Khairul Azhar Kasmiran1-5/+5
2025-03-12modules/gnome: header argument of generate_gir accepts an array of stringsCorentin Noël1-1/+2
The behavioral change is there since be1d013453e3df3b83da0c91f5211c822d4da4d7 so align the documentation with what is allowed here.
2025-03-09compilers: convert `b_sanitize` to a free-form array optionPatrick Steinhardt2-4/+31
In the preceding commit we have started to perform compiler checks for the value of `b_sanitize`, which allows us to detect sanitizers that aren't supported by the compiler toolchain. But we haven't yet loosened the option itself to accept arbitrary values, so until now it's still only possible to pass sanitizer combinations known by Meson, which is quite restrictive. Lift that restriction by adapting the `b_sanitize` option to become a free-form array. Like this, users can pass whatever combination of comma-separated sanitizers to Meson, which will then figure out whether that combination is supported via the compiler checks. This lifts a couple of restrictions and makes the supporting infrastructure way more future proof. A couple of notes regarding backwards compatibility: - All previous values of `b_sanitize` will remain valid as the syntax for free-form array values and valid combo choices is the same. We also treat 'none' specially so that we know to convert it into an empty array. - Even though the option has been converted into a free-form array, callers of `get_option('b_sanitize')` continue to get a string as value. We may eventually want to introduce a kwarg to alter this behaviour, but for now it is expected to be good enough for most use cases. Fixes #8283 Fixes #7761 Fixes #5154 Fixes #1582 Co-authored-by: Dylan Baker <dylan@pnwbakers.com> Signed-off-by: Patrick Steinhardt <ps@pks.im>
2025-03-07docs: provide details about how to fund Meson developmentEli Schwartz1-0/+15
At the moment it turns out this mostly means... me. But this was discussed publicly, as requested by a third party, and as per the newly added page this is open to anyone in the Project who wishes to let it be known that they accept donations. Closes: https://github.com/mesonbuild/meson/issues/14262
2025-03-07docs: reorganize the main landing page and add more linksEli Schwartz1-9/+25
It can sometimes be hard to find content without digging through menus. Try to guide people towards the specific content they are probably looking for.
2025-03-07docs: describe the support policy for python versionsEli Schwartz2-2/+67
Bug: https://github.com/mesonbuild/meson/issues/14322
2025-03-06doc: fix sentence about cross-compilation.Charles Brunet1-1/+1
Fixes #14338
2025-03-04docs: update dead link in Users.mdEli Schwartz1-1/+1
The project in question still exists but no longer has a dedicated domain; instead it uses a group website in theory for multiple projects hosted by the same group (but in practice still just the one). Apparently changed almost 2 years ago. See: https://github.com/theimpossibleastronaut/rmw/commit/0f53e40861c46916597990bfe2c95ca3e5cfb0a3
2025-03-03docs: document release process and security keysEli Schwartz1-0/+24
Bug: https://github.com/mesonbuild/meson/issues/13446
2025-03-03docs: Mention deprecation of path(), document full_path()Nirbheek Chauhan1-3/+15
2025-03-01modules/gnome: Allow to specify the doc-format argumentCorentin Noël1-0/+1
Add the support for the doc-format argument if g-ir-scanner supports it. Ignore the argument otherwise as this is a no-op in such cases.
2025-02-27mtest: add option to slice testsPatrick Steinhardt2-0/+11
Executing tests can take a very long time. As an example, the Git test suite on Windows takes around 4 hours to execute. The Git project has been working around the issue by splitting up CI jobs into multiple slices: one job creates the build artifacts, and then we spawn N test jobs with those artifacts, where each test job executes 1/Nth of the tests. This can be scripted rather easily by using `meson test --list`, selecting every Nth line, but there may be other projects that have a similar need. Wire up a new option "--slice i/n" to `meson test` that does implements this logic. Signed-off-by: Patrick Steinhardt <ps@pks.im>
2025-02-26Tutorial.md typo fixEniek1-1/+1
2025-02-13Make all Meson level options overridable per subproject.Jussi Pakkanen2-0/+56
2025-01-30Mention add_dist_script in meson dist docs (#14186)Otto Moerbeek1-0/+7
2025-01-28docs: clarify behavior of default_both_libraries optionDaiki Ueno1-5/+10
Signed-off-by: Daiki Ueno <dueno@redhat.com>
2025-01-27allow to compare multiple version with version_compareCharles Brunet1-0/+8
2025-01-27adding c_std=c2y option for clangajs2-2/+2
Signed-off-by: ajs <sam4lordjesus@outlook.com>
2025-01-26Created release notes for 1.7.0.Jussi Pakkanen16-131/+155
2025-01-26Ask for testing help for the option refactor branch.Jussi Pakkanen1-0/+16
2025-01-26docs: Add missing release snippet for the TASKING compiler supportgerioldman1-0/+3
2025-01-20Alphabetize the Docs on DependenciesKevin Meagher1-42/+42
Persumably this list of was supposed to be alphabetized, but a few of the items were out of order. This confused me because I was looking for numpy, got the the Os and thought it wasn't there.
2025-01-19docs: Remove dead links in Users.mdDaniele Nicolodi1-2/+0