summaryrefslogtreecommitdiff
path: root/docs/markdown
AgeCommit message (Collapse)Author
2025-06-17docs: fix formatting of pkg_config_libdir propertySam James
2025-06-09modules/gnome: Allow to generate markdown and reStructuredText dbus docCorentin Noël
gdbus-docgen supports reStructuredText output since 2.71.1 and markdown since 2.75.2, allow to simply generate it.
2025-06-05swift: Pass C base compile options to swiftcKatalin Rebhan
2025-06-05docs: Update docs for eldKushal Pal
Update reference table for eld Mention eld support in release notes Signed-off-by: Kushal Pal <kushpal@qti.qualcomm.com>
2025-05-22Use two hashes in snippet.Jussi Pakkanen
2025-05-22docs: Add response files entryL. E. Segovia
See https://github.com/mesonbuild/meson/pull/14391
2025-05-19docs: Note that debug=false does not define NDEBUGPaul Caprioli
2025-05-15docs: mention masm support in release notesZephyr Lykos
2025-05-14docs: gender neutral pronouns for "the user"nasso
2025-05-08Update Getting-meson_zh.mdDaniel
Sync with the English version
2025-05-06Add license keyword to pkgconfig generateCharles Brunet
Fixes #14270.
2025-05-05cmake: include_directories() returns an arrayPaolo Bonzini
See the way that it is created: dir_node = assign(dir_var, function(include_directories, tgt.includes)) sys_node = assign(sys_var, function(include_directories, tgt.sys_includes, {is_system: True})) inc_node = assign(inc_var, array([id_node(dir_var), id_node(sys_var)])) Due to incorrect documentation, commit 1f4bb3737 ("modules/cmake: Make fully type safe", 2025-04-02) added an incorrect assertion. Fix both. Fixes: #14530 Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2025-05-05docs/users: drop + from GTKDylan Baker
This reflects the upstream project, which dropped the + in 2020
2025-05-05docs/users: Trim down only to highly notable projectsDylan Baker
This removes a lot of projects from our list of users, unless they are very notable.
2025-05-05docs/users: remove "not default" from XserverDylan Baker
2025-05-05docs/users: Split notable organizations from individual projectsDylan Baker
Some of the projects listed are part of larger umbrella organizations, which have many project using Meson. Instead of listing every single project from them, list the organization itself and a couple of major projects (if we have any listed) from those organizations.
2025-05-03docs: disambiguate exe_wrapperAndy MacGregor
As of this commit, meson has three different pathways to set an exe_wrapper field. exe_wrapper set through `meson test --wrapper` CLI arg or `add_test_setup()` meson function argument are treated equally. Only one wrapper through either of these routes may be set though. The exe_wrapper field set in the cross file is handled separately internally in mtest.py, and holds a little more consequence over meson test behavior than the other two fields. Perhaps a future version of meson should treat these fields equally and explicitly document how they are combined. For now, I think its a better first step to document current behavior to generate discussion about how exactly the future version should behave.
2025-05-01docs: Update link to rust-analyzer docsM Henning
2025-04-29docs: fix markup in release notesBenjamin Gilbert
2025-04-28Add release notes for 1.8 that I forgot.Jussi Pakkanen
2025-04-23docs: users: list is for notable meson adopteesSam James
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.
2025-04-20document android_exe_type in release notesPaolo Bonzini
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2025-04-20document c_std=c2y in release notesPaolo Bonzini
2025-04-20document improvements to Objective-C and Objective-C++Paolo Bonzini
2025-04-20document -Dswift_std in release notesPaolo Bonzini
2025-04-20add wayland stabilisation to release notesPaolo Bonzini
2025-04-20fix typoPaolo Bonzini
2025-04-20move "since 1.8.0" for rust.doctest to the right placePaolo Bonzini
2025-04-16environment: handle all iOS variants as xnuPaolo Bonzini
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 Ayd
2025-04-09New xgettext method for i18n moduleCharles Brunet
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 Berg
2025-04-07Fix link to "Building Fancy DMG Images on Mac OS X"Heikki Rauhala
2025-04-06Add C# to home page supported language listEmil Berg
2025-04-06docs: say '--wrapper', not '--wrap' for testsSam James
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 Bonzini
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 Gilbert
sort_files has always defaulted to true. Fixes: 2b37101998c8 ("meson format command")
2025-04-02mtest: set VALGRIND_OPTS to fail tests on errorsSam James
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 Claessens
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 Bonzini
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 Bonzini
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2025-04-02docs: add release notes for "ninja rustdoc"Paolo Bonzini
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2025-03-26docs: Clarify string building with absolute pathsPaul Caprioli
2025-03-24linkers: darwin: do not use -bundle for shared_modulesPaolo Bonzini
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.com
2025-03-24Fix doc for `meson test --print-errorlogs` [skip ci]Khairul Azhar Kasmiran
2025-03-12modules/gnome: header argument of generate_gir accepts an array of stringsCorentin Noël
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 Steinhardt
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 Schwartz
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 Schwartz
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.