aboutsummaryrefslogtreecommitdiff
path: root/docs/markdown/snippets
AgeCommit message (Collapse)AuthorFilesLines
2021-03-10Some documentation language adjustments & improved error messagesLaurin-Luis Lehning1-1/+1
2021-03-10Fix release snippet still using the old fstring syntaxLaurin-Luis Lehning1-1/+1
2021-03-10Add failing test cases & release snippetLaurin-Luis Lehning1-0/+7
2021-03-09Add address sanitizer support for Visual Studio.Jussi Pakkanen1-0/+6
2021-03-09Add str.replace() methodTristan Partin1-0/+10
2021-02-27install_man locale supportJason Woodward1-0/+9
Rather than having to manually build the locale aware man paths with `install_data('foo.fr.1', install_dir: join_paths(get_option('mandir'), 'fr', 'man1'), rename: 'foo.1')` Support doing `install_man('foo.fr.1', locale: 'fr')`
2021-02-26Allow printing UserOptions in the summaryStephen Gregoratto1-0/+3
2021-02-26meson: add .has_external_property() methodsTim-Philipp Müller1-0/+7
Useful in case of boolean values to distinguish between a boolean value having been set in the native/cross file and not having been provided, which can't be achieved by passing a fallback parameter to .get_external_property().
2021-02-25deprecated `meson.get_cross_property`Dylan Baker1-0/+5
It's a pure subset of `get_external_property`, and has odd behavior in host == build configurations. `get_external_property` is clear, and uses the standard `native : bool` syntax to control host vs build properties
2021-02-25Support multiple args in error()Xavier Claessens1-0/+4
Seems it got forgotten when that was added to warnings() and message(). Fixes: #8414.
2021-02-25Allow custom target output to be processed by generatorsMatthias Klumpp1-0/+4
2021-02-22minstall: Add --skip-subprojects optionXavier Claessens1-0/+10
By default all subprojects are installed. If --skip-subprojects is given with no value only the main project is installed. If --skip-subprojects is given with a value, it should be a coma separated list of subprojects to skip and all others will be installed. Fixes: #2550.
2021-02-14Set up release 0.57.0.57.0Jussi Pakkanen31-315/+0
2021-02-07Add Qt6 moduleLuca Weiss1-0/+8
2021-02-07Merge pull request #8162 from dcbaker/wip/2021-01/rust-module-bindgenJussi Pakkanen1-1/+2
Add a wrapper to the rust module for bindgen
2021-02-07Merge pull request #8305 from xclaesse/run-target-envJussi Pakkanen1-1/+1
run_target: Add env kwarg
2021-02-06rust: Add a module wrapper for bindgenDylan Baker1-1/+2
This has a couple of advantages over rolling it by hand: 1. it correctly handles include_directories objects, which is always handy 2. it correctly generates a depfile for you, which makes it more reliable 3. it requires less typing
2021-02-05vala: Disable unity buildsDylan Baker1-0/+7
Our approach to unity builds with vala is broken, you cannot unify the generated C files, as they contain duplicate symbols. We would need to instead combine the files while they are still in their vala form, then convert that to C and compile the unified C file. This does not fix the linked issue, as this removed the ability to do vala unity builds, but it does allow running vala with `--unity=on`. Related: #5280
2021-02-05run_target: Add env kwargXavier Claessens1-1/+1
Re-implement it in backend using the same code path as for custom_target(). This for example handle setting PATH on Windows when command is an executable.
2021-02-05gnome: Add post_install() methodXavier Claessens1-0/+9
Various GNOME projects have scripts that does similar task, better do it directly in meson. This ensures it's done correctly regarding usage of subprojects and pkg-config. See for example this gtk bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/3626. Fixes: #8268
2021-02-04Introduce `fs.read` to read a file as a stringLuke Drummond1-0/+40
Following #7890, this patch introduces the ability to read the contents of a file to the fs module. This patch introduces the ability to read files at configure time, but has some restrictions: - binary files are not supported (I don't think this will prove a problem, and if people are wanting to do something with binary files, they should probably be shelling out to their own script). - Only files outside the build directory allowed. This limitation should prevent build loops. Given that reading an arbitrary file at configure time can affect the configuration in almost arbitrary ways, meson should force a reconfigure when the given file changes. This is non-configurable, but this can easily be changed with a future keyword argument.
2021-02-04minstall: Add --dry-run optionXavier Claessens1-0/+4
Closes: #1281
2021-02-03Fix some typos in the release notes snippetsLuca Weiss3-4/+4
2021-02-02Add support for LLVM's thinLTODylan Baker1-0/+5
This uses a separate option, b_lto_mode. It works in conjunction with b_lto_threads. Fixes #7493
2021-02-02compilers: Add support for using multiple threads with ltoDylan Baker1-0/+7
Both Clang and GCC support using multiple threads for preforming link time optimizaions, and they can now be configured using the `-Db_lto_threads` option. Fixes #7820
2021-01-31Capitalize "Meson" consistently as it is a proper name. [skip ci]Jussi Pakkanen1-1/+1
2021-01-31copy editing for 0.57 release notes [skip ci]Paolo Bonzini15-43/+46
2021-01-30add_install_script: add skip_if_destdir kwargXavier Claessens1-0/+11
It is common, at least in GNOME projects, to have scripts that must be run only in the final destination, to update system icon cache, etc. Skipping them from Meson ensures we can properly log that they have not been run instead of relying on such scripts to to it (they don't always).
2021-01-30Merge pull request #8264 from xclaesse/ep-miscJussi Pakkanen1-0/+11
external_project: misc improvements
2021-01-30Merge pull request #8200 from bonzini/mtest-asyncio-logsJussi Pakkanen1-0/+29
mtest: improvements to logging
2021-01-29external_project: Add release snippetXavier Claessens1-0/+11
2021-01-29Can read project version from a file.Jussi Pakkanen1-0/+12
2021-01-27intepreter: Allow using file objects for the script_name of add_*_scriptDylan Baker1-0/+15
It's a bit silly and conveluted to have to call find_program on the output of configure_file, so let's just allow passing files as the script name.
2021-01-27custom_target: Add env kwargXavier Claessens1-0/+11
2021-01-27test: Make timeout <= 0 infinite duractionXavier Claessens1-0/+9
2021-01-26dist: Allow packaging subproject in same git repo as main projectXavier Claessens1-0/+16
2021-01-22docs: add documentation snippet for meson test console output changesPaolo Bonzini1-0/+29
2021-01-21interpreter: accept external programs and dependencies for summaryPaolo Bonzini1-0/+4
2021-01-20MSVC and Clang-Cl Compiler Argument CleanupMarios Staikopoulos1-0/+16
This commit performs some cleanup for the msvc and clang-cl arguments. * "Disable Debug" (`/Od`) is no longer manually specified for optimization levels {`0`,`g`} (it is already the default for MSVC). * "Run Time Checking" (`/RTC1`) removed from `debug` buildtype by default * Clang-CL `debug` buildtype arguments now match MSVC arguments * There is now no difference between `buildtype` flags and `debug` + `optimization` flags
2021-01-19Keep buildtype the same even if user changes debug and/or optimization.Jussi Pakkanen1-0/+10
2021-01-17Removal of /ZI on MSVC DebugMarios Staikopoulos1-0/+14
The /ZI flag adds in "Edit and Continue" debug information, which will cause massive slowdown. It is not a flag that we should be adding by default to debug builds. /Zi will still be added.
2021-01-14mtest: allow quickly interrupting the test runPaolo Bonzini1-0/+5
The new behavior of interrupting the longest running test with Ctrl-C is useful when tests hang, but not when the run is completely broken for some reason. Psychology tells us that the user will compulsively spam Ctrl-C in this case, so exit if three Ctrl-C's are detected within a second.
2021-01-12summary: align left, not align middleEli Schwartz1-0/+4
aligning along the left is, I think, what most projects want to do. Aligning along the middle looks subjectively ugly, and objectively prevents me from further indenting an element, e.g. Build information: prefix : /usr sysconfdir : /etc conf file : /etc/myprogram.conf
2021-01-12Allow '//' as project function id due to git bash path conversion.Luke Elliott1-0/+7
See https://stackoverflow.com/questions/54258996/git-bash-string-parameter-with-at-start-is-being-expanded-to-a-file-path
2021-01-05modules: Add an unstable-rust moduleDylan Baker1-0/+4
Like other language specific modules this module is module for holding rust specific helpers. This commit adds a test() function, which simplifies using rust's internal unittest mechanism. Rust tests are generally placed in the same code files as they are testing, in contrast to languages like C/C++ and python which generally place the tests in separate translation units. For meson this is somewhat problematic from a repetition point of view, as the only changes are generally adding --test, and possibly some dependencies. The rustmod.test() method provides a mechanism to remove the repatition: it takes a rust target, copies it, and then addes the `--test` option, then creates a Test() target with the `rust` protocol. You can pass additional dependencies via the `dependencies` keyword. This all makes for a nice, DRY, test definition.
2021-01-05mtest: Add support for rust unit testsDylan Baker1-0/+4
Rust has it's own built in unit test format, which is invoked by compiling a rust executable with the `--test` flag to rustc. The tests are then run by simply invoking that binary. They output a custom test format, which this patch adds parsing support for. This means that we can report each subtest in the junit we generate correctly, which should be helpful for orchestration systems like gitlab and jenkins which can parse junit XML.
2020-12-14mtest: only build what is needed for the testsPaolo Bonzini1-0/+17
It is a usual workflow to fix something and retest to see if it is fixed using a particular test. When tests start to become numerous, it becomes time consuming for "meson test" to relink all of them (and in fact rebuild the whole project) where the user has already specified the tests they want to run, as well as the tests' dependencies. Teach meson to be smart and only build what is needed for the test (or suite) that were specified. Fixes: #7473 Related: #7830
2020-12-03Add prelinking support for static libraries.Jussi Pakkanen1-0/+6
2020-11-24compiler: allow non-built internal dependencies as argumentsPaolo Bonzini1-0/+6
Allow methods on the compiler object to receive internal dependencies, as long as they only specify compiler/linker arguments or other dependencies that satisfy the same requirements. This is useful if you're using internal dependencies to add special "-D" flags such as -DNCURSES_WIDECHAR, -D_XOPEN_SOURCE_EXTENDED or -DGLIB_STATIC_COMPILATION.
2020-11-21Handle cmake dependencies which require a specified versionJason Ekstrand1-0/+5
Some CMake packages fail to find at all if no version is specified. This commit adds a cmake_version parameter to dependency() to allow you to specify the requested version.