summaryrefslogtreecommitdiff
path: root/docs/markdown/Commands.md
AgeCommit message (Collapse)Author
2025-10-15Add --check-diff to meson format, to show what should be formattedJulianne Swinoga
2025-08-01format: add --source-file-path argument for stdinCharles Brunet
Fixes #14539. Otherwise, .editorconfig is read from current working directory, and there is no way to know what file name to filter to choose the right section of editor config.
2025-04-02docs: fix default for mformat sort_files optionBenjamin Gilbert
sort_files has always defaulted to true. Fixes: 2b37101998c8 ("meson format command")
2024-12-06format: allow input from stdinCharles Brunet
Fixes #13791
2024-10-01Add a simple reproducibility test command.Jussi Pakkanen
2024-04-08meson format commandCharles Brunet
2024-01-20docs: fix another regression in having functional docsEli Schwartz
In commit 83a973ca04cf53dd98ff487b4273155b82cf554a a bunch of strange changes were made, that were not even tested. Make sure people get the correct command for running coverage targets.
2023-10-05mcompile: add suffix as an additional parameterDudemanguy
Since the previous commit allows for more scenarios with name collisions, it makes sense to expand the compile command so that it can also take into account suffixes. i.e. meson compile -C build foo.exe can now work if the executable has an exe suffix along with being named foo.
2023-08-25msetup: Update options when builddir is already configuredXavier Claessens
`meson setup -Dfoo=bar builddir` command was returning success ignoring new option values. This now also update options. It is useful because it means `meson setup -Dfoo=bar builddir && ninja -C builddir` works regardless whether builddir already exists or not, and when done in a script, changing options in the script will automatically trigger a reconfigure if needed. This was already possible by always passing --reconfigure argument, but that triggers a reconfigure even when options did not change.
2023-05-25mtest: wildcard selectionCharles Brunet
Allow the use of wildcards (e.g. *) to match test names in `meson test`. Raise an error is given test name does not match any test. Optimize the search by looping through the list of tests only once.
2023-03-17fix meson compile with alias targetCharles Brunet
this fixes a bug introduced by #11528
2023-01-18devenv: Allow dumping into file and select a formatXavier Claessens
It is often more useful to generate shell script than dumping to stdout. It is also important to be able to select the shell format. Formats currently implemented: - sh: Basic VAR=prepend_value:$VAR - export: Same as 'sh', but also export VAR - vscode: Same as 'sh', but without substitutions because they don't seems to work. To be used in launch.json's envFile.
2022-12-07devenv: Document recent changesXavier Claessens
2022-10-11Make `meson wrap update` command update all wraps in parallelXavier Claessens
This moves the implementation into msubprojects because it has all the infrastructure to update wraps in parallel while keeping "meson wrap" UX.
2022-08-16deprecate running "meson builddir" without setup subcommandEli Schwartz
This is ambiguous, if the build directory has the same name as a subcommand then we end up running the subcommand. It also means we have a hard time adding *new* subcommands, because if it is a popular name of a build directory then suddenly scripts that try to set up a build directory end up running a subcommand instead. The fact that we support this at all is a legacy design. Back in the day, the "meson" program was for setting up a build directory and all other tools were their own entry points, e.g. `mesontest` or `mesonconf`. Then in commit fa278f351fe3d6924b4d1961f77b5b4a36e133f8 we migrated to the subcommand mechanism. So, for backwards compatibility, we made those tools print a warning and then invoke `meson <tool>`. We also made the `meson` tool default to setup. However, we only warned for the other tools whose entry points were eventually deleted. We never warned for setup itself, we just continued to silently default to setup if no tool was provided. `meson setup` has worked since 0.42, which is 5 years old this week. It's available essentially everywhere. No one needs to use the old backwards-compatible invocation method, but it continues to drag down our ability to innovate. Let's finally do what we should have done a long time ago, and sunset it.
2022-06-29docs: update various function references to be linkifiedEli Schwartz
2022-05-06devenv: Set WINEPATH when cross compiling for WindowsXavier Claessens
2022-03-15Revert "devenv: Set PYTHONPATH where we install python modules"Eli Schwartz
This reverts commit 79c6075b560dbf1c3e4e0b30f1c472dc2086421e. # Conflicts: # docs/markdown/snippets/devenv.md # mesonbuild/modules/python.py # test cases/unit/91 devenv/test-devenv.py PYTHONPATH cannot be reliably determined. The standard use case for installing python modules with Meson is mixed pure sources (at least `__init__.py`) and compiled extension_modules or configured files. Unfortunately that doesn't actually work because python will not load the same package hierarchy from two different directories, one a source directory and one a (mandatory) out of tree build directory. (It kind of can, but you need to do what this test case accidentally stumbled upon, which is namespace packages. Namespace packages are a very specific use case and you are NOT SUPPOSED to use them outside that use case, so people are not going to use them just to circumvent Meson devenv stuff as that would have negative install-time effects.) Adding PYTHONPATH anyway will just lead to documentation commitments which we cannot actually uphold, and confusing issues at time of use because some imports *will* work... and some will *not*. The end result will be a half-created tree of modules which just doesn't work together at all, but because it partially works, users attempting to debug it will spend time wondering why parts of it do import. For any case where the automatic devenv would work correctly, it will also work correctly to use `meson.add_devenv()` a single time, which is very easy to manually get correct and doesn't provide any significant value to automate. In the long run, an uninstalled python package environment will require "editable installs" support.
2022-03-09Add new env2mfile command.Jussi Pakkanen
2022-02-28devenv: Setup GDB auto-load scriptsXavier Claessens
When the project instals GDB helper scripts, copy them into meson-private directory with the right tree layout and write a .gdbinit script to load them automatically.
2022-02-28devenv: Source bash completion scriptsXavier Claessens
2022-02-28devenv: Set PYTHONPATH where we install python modulesXavier Claessens
2021-08-15editorconfig: add setting to trim trailing whitespaceEli Schwartz
and clean up all outstanding issues Skip 'test cases/common/141 special characters/meson.build' since it intentionally uses trailing newlines.
2021-08-04destdir: Allow relative to build directoryXavier Claessens
Meson already works like that, except in do_copydir() that requires absolute destdir. Better explicitly support that instead of leaving it undefined and unconsistent.
2021-06-25msubprojects: Run action on all subprojects in parallelXavier Claessens
This moves all the code into a class and call its run() method in a thread. The class queues all logs to print them at the end to avoid mixing output of multiple actions.
2021-06-23gnome: Set GSETTINGS_SCHEMA_DIR in devenvXavier Claessens
2021-03-23devenv: Set GI_TYPELIB_PATH and LD_LIBRARY_PATH (#8548)Xavier Claessens
2021-03-16Add `meson devenv` command and meson.add_devenv()Xavier Claessens
2021-01-31Capitalize "Meson" consistently as it is a proper name. [skip ci]Jussi Pakkanen
2021-01-30Rewrap long text lines in docs. [skip ci]Jussi Pakkanen
2021-01-13Fix misspellsAntonin Décimo
Signed-off-by: Antonin Décimo <antonin.decimo@gmail.com>
2021-01-11doc: fix invalid Commands.md example for introspect [skip ci]Eli Schwartz
It requires at least one option argument, and the one that provides "basic information" about the project is --projectinfo, so let's use that to demo the command. Fixes #8182
2021-01-10Hotdoc: use template for Commands.md instead of generating the entire file ↵Eli Schwartz
(#8154) * doc: fix hotdoc misuse for dynamically generated content hotdoc has a native include feature for including files inline. Use this to generate one file for each dynamically generated code block, and include that file in Commands.md; see: https://hotdoc.github.io/syntax-extensions.html#smart-file-inclusion-syntax This permits us to move back to using the in-tree version of the hotdoc *.md sources, thus fixing the incorrect inclusion of "builddir/" in the "Edit on github" links which resulted from using copies as the source. Fixes #8061 * doc: call the dummy file a "stamp" as it is a better known term
2020-06-30Made Commands.md dynamically generated (#7346)TheQwertiest
2020-06-29Added ability to specify target in `meson compile`TheQwertiest
2020-06-28Added ability to pass arguments to backend in `meson compile`TheQwertiest
2020-06-21mcompile: Add --verbose modeIgor Raits
Closes: https://github.com/mesonbuild/meson/issues/7352 Signed-off-by: Igor Raits <i.gnatenko.brain@gmail.com>
2020-06-18docs: replaced `ninja` with appropriate `meson` commands [skip ci]TheQwertiest
2020-06-16doc: Fix missing --force-fallback-for documentationXavier Claessens
2020-06-15Added docs for all meson commands + corresponding unit test (#7217)TheQwertiest