summaryrefslogtreecommitdiff
path: root/docs/markdown/snippets
AgeCommit message (Collapse)Author
2022-03-03add release snippet for declare_dependencyRemi Thebault
2022-03-02Rename JDK system dep to JNITristan Partin
JNI is a more apt name because it currently only supports the JNI. I also believe that CMake uses the terminology JNI here as well. JNI is currently the only way to interact with the JVM through native code, but there is a project called "Project Panama" which aims to be another way for native code to interact with the JVM.
2022-03-01Deprecate java.generate_native_header() in favor of ↵Tristan Partin
java.generate_native_headers() After implementing a much more extensive Java native module than what currently exists in the tests, I found shortcomings. 1. You need to be able to pass multiple Java files. 2. Meson needs more information to better track the generated native headers. 3. Meson wasn't tracking the header files generated from inner classes. This new function should fix all the issues the old function had with room to grow should more functionality need to be added. What I implemented here in this new function is essentially what I have done in the Heterogeneous-Memory Storage Engine's Java bindings.
2022-02-28Allow setting method/separator in environment() and meson.add_devenv()Xavier Claessens
2022-02-28devenv: Add --dump optionXavier Claessens
It prints all envorinmente variables that have been modified. Can be used by shell scripts that wish to setup their environment themself.
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
2022-02-28Change jar() default install dirTristan Partin
The previous install dir seemed incorrect when looking at various Linux distributions.
2022-02-27modules/wayland: Add unstable_wayland moduleMark Bolhuis
2022-02-27cmake: configure_package_config_file can now take a dictAndrea Pappacoda
2022-02-22python module: add option to specify a python environment to install toEli Schwartz
The default behavior of installing relative to prefix may be unexpected, and is definitely wrong in many cases. Give users control in order to specify that yes, they actually want to install to a venv. This is particularly useful for projects that use meson as a build system for a python module, where *all* files shall be installed into the python site-packages.
2022-02-15pkgconfig module: allow custom variables to reference builtin directoriesEli Schwartz
Automatically generate additional variables and write them into the generated pkg-config file. This means projects no longer need to manually define the ones they use, which is annoying for dataonly usages (it used to forbid setting the base library-relevant "reserved" ones, and now allows it only for dataonly. But it's bloat to manualy list them anyway). It also fixes a regression in commit 248e6cf4736ef9ec636228da66c28f9be03aa74f which caused libdir to not be set, and to be unsettable, if the pkg-config file has no libraries but uses the ${libdir} expansion in a custom variable. This could be considered likely a case for dataonly, but it's not guaranteed.
2022-02-10implement 'dist --allow-dirty' flagandy5995
closes #9824
2022-02-09meson: Allow directory options outside of prefixJan Tojnar
This bring us in line with Autotools and CMake and it is useful for platforms like Nix, which install projects into multiple independent prefixes. As a consequence, `get_option` might return absolute paths for some directory options, if a directory outside of prefix is passed. This is technically a backwards incompatible change but its effect should be minimal, thanks to widespread use of `join_paths`/`/` operator and pkg-config generator module. It should only cause an issue when a path were constructed by concatenating the value of directory path option. Also remove a comment about commonpath since we do not use that since <https://github.com/mesonbuild/meson/commit/00f5dadd5b7d71c30bd7393d165a87f554eb92e5>. Fixes: https://github.com/mesonbuild/meson/issues/2561
2022-02-03cmake: Deprecate CMake <3.17 supportDaniel Mensinger
2022-02-03cmake: Drop CMake server support and bump min. CMake to >= 3.14Daniel Mensinger
2022-02-02Merge pull request #9834 from bonzini/test-verbose-kwargJussi Pakkanen
New keyword argument `verbose` for tests and benchmarks
2022-02-02Genericise TI compiler and add MSP430 supportWilliam Toohey
2022-02-01cmake: add arch_independent kwargAndrea Pappacoda
CMake's write_basic_package_version_file has supported since version 3.14 an ARCH_INDEPENDENT option that makes it skip its architecture check in the Version file. With this patch Meson now supports it as well, and the change is also compatible with older CMake versions, as they will simply ignore the option. This also slightly changes the contents of the generated Version file when arch_independent is not set: previously, the if() needed to skip the arch check was always filled with an empty string, while CMake puts "FALSE" (or "TRUE") in it. Now, that if() will always be filled with either "False" or "True", better matching CMake's behaviour.
2022-02-01minstall: stop running ldconfig for the userEli Schwartz
This was a nice idea in theory, but in practice it had various problems: - On the only platform where ldconfig is expected to be run, it is really slow, even when the user uses a non-default prefix and ldconfig doesn't even have permission to run, nor can do anything useful due to ld.so.conf state - On FreeBSD, it bricked the system: #9592 - On cross builds, it should not be used and broke installing, because ldconfig may not be runnable without binfmt + qemu: #9707 - it prints weird and confusing errors in the common "custom prefix" layout: #9241 Some of these problems can be or have been fixed. But it's a constant source of footguns and complaints and for something that was originally supposed to be just "it's the right thing to do anyway, so just do it automatically" it is entirely too risky. Ultimately I do not think there is justification for keeping this feature in since it doesn't actually make everyone happy. Better for users to decide whether they need this themselves. This is anyways the case for cmake and autotools and generally any other build system, so it should not be too intimidating... Fixes #9721
2022-02-01new custom dependency lookup for libdlAndrew Krasavin
2022-02-01interpreter: support for forcibly verbose logging of some testsPaolo Bonzini
Add a new keyword argument to test() and benchmark(), completing the implementation of the feature. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-01-22Merge pull request #9742 from ximion/wip/itstoolJussi Pakkanen
i18n: Add support for joining XML localization via itstool
2022-01-21i18n: Add support for joining XML localization via itstoolMatthias Klumpp
2022-01-10bump minimum required version of python to 3.7Eli Schwartz
Comment out the pending deprecation notice. It cannot be reached anymore, but is still useful for the next time we do a version bump.
2022-01-10remove the RPM moduleEli Schwartz
It is unmaintained, broken (frequently for long periods of time) and not really required for any meson functionality. Its purpose is to be used as a one-shot tool for creating a distro package recipe, and then deleted from your meson.build files. Due to its fragile dependency on coredata implementation details, we cannot assume it will reliably work, or continue to work, without someone who is actively willing to take responsibility for it. Even if that were to happen, this might be better off as an external script that parses introspection data. Closes #9764 Closes #9763
2022-01-10Merge pull request #9739 from mathstuf/armclang-supportJussi Pakkanen
Armclang support
2022-01-10Prepare release 0.61.0.Jussi Pakkanen
2022-01-10add pending deprecation notice for python 3.6Eli Schwartz
2022-01-06add release notes for refman man pageStone Tickle
2022-01-03armltdclang: add support for ARM Ltd.'s `armclang` toolchainBen Boeckel
This is another toolchain also called `armclang`, but it is not a cross compiler like Keil's `armclang`. It is essentially the same as `clang` based on its interface and CMake's support of the toolchain. Use an `armltd` prefix for the compiler ID. Fixes: #7255
2021-12-15rewriter: create {add,rm}_extra_files commandsCeleste Wouters
Add ability to mutate a target's `extra_files` list through the rewriter. The logic is copied from sources add/rm, but changes the `extra_files` kwarg instead of the sources positional argument. Has additional logic to handle creating the `extra_files` list if it doesn't exist.
2021-12-06interpreter: allow extract_objects to receive generated sourcesPaolo Bonzini
Fixes: #8333
2021-12-02cmake: Deprecate CMake <3.14 and warn for <3.17 (#9677)Daniel Mensinger
* cmake: Deprecate CMake <3.14 and warn for <3.17 See: - #7832 - #9676 * cmake: Add deprecation release note snippet
2021-12-01add install_symlink functionPablo Correa Gómez
Allows installing symlinks directly from meson, which can become useful in multiple scenarios. Current main use is to help moving forward #9557
2021-11-25Stop backend_startup_project from erasing the last project in a VS solutionLuke Elliott
if it is not the specified project.
2021-11-21Support Visual Studio 2022 backendCrend King
2021-10-30Added warning if run_command is called without the check kwargVolker Weißmann
2021-10-29Merge pull request #9375 from dcbaker/submit/windows-module-typingJussi Pakkanen
Typing for the Windows module
2021-10-25Add sccache support.Jussi Pakkanen
2021-10-24Create release notes page for 0.60.Jussi Pakkanen
2021-10-10Add missing release snippet for option() deprecated kwargXavier Claessens
2021-10-10Add --vsenv command line option and active VS only when neededXavier Claessens
2021-10-10Fix typos discovered by codespellChristian Clauss
2021-10-10ar linker: generate thin archives for uninstalled static librariesEli Schwartz
Since they will never be used outside of the build directory, they do not need to literally contain the .o files, and references will be sufficient. This covers a major use of object libraries, which is that the static library would potentially take up a lot of space by including another copy of every .o file. Fixes #9292 Fixes #8057 Fixes #2129
2021-10-10Add release notes for `subprojects packagefiles`.Eli Schwartz
2021-10-09modules/windows: allow CustomTargets with more than one output for ↵Dylan Baker
compile_resources
2021-10-08python: Add platlibdir and purelibdir optionsXavier Claessens
2021-10-08add install_emptydir functionEli Schwartz
This replaces the absolute hack of using ``` install_subdir('nonexisting', install_dir: 'share') ``` which requires you to make sure you don't accidentally or deliberately have a completely different directory with the same name in your source tree that is full of files you don't want installed. It also avoids splitting the name in two and listing them in the wrong order. You can also set the install mode of each directory component by listing them one at a time in order, and in fact create nested structures at all. Fixes #1604 Properly fixes #2904