aboutsummaryrefslogtreecommitdiff
path: root/docs/markdown
AgeCommit message (Collapse)AuthorFilesLines
2022-07-13docs: Suggest using depth=1 by default for wrap-gitPhilip Withnall1-1/+5
It saves bandwidth and disk usage on downloaded subprojects, and people very rarely need more than the single commit they’re using. Add `depth=1` to the `[wrap-git]` examples in the rest of the documentation, to make it more likely that people will copy-and-paste it into their `.wrap` files. Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
2022-07-11docs: add cross-file exampleMichael Davidsaver1-1/+28
2022-07-08implement the new preserve_path kwarg for install_data tooEli Schwartz1-0/+8
Primarily interesting to me because it is then available for the python module's install_sources method. Based on the new feature in install_headers.
2022-07-07Users.md: Add SciPyAmit D1-0/+1
2022-07-04Update Users.mdAmit D1-0/+3
2022-07-04Update Users.mdAmit D1-0/+9
2022-07-03Finalize the release.0.63.0Jussi Pakkanen19-244/+269
2022-07-02Users.md: remove wxFormBuildersmowzy1-1/+0
according to commit https://github.com/wxFormBuilder/wxFormBuilder/commit/8a3d1697c819b8a8b41a136a865439b205997ae1
2022-06-29docs: update various function references to be linkifiedEli Schwartz7-26/+26
2022-06-27docs: fix broken link to structured sourcesEli Schwartz1-2/+2
We used the wrong spelling for both the object and the function. Link to both, once in the description and once in the example code.
2022-06-27docs: fix broken links in i18n modueEli Schwartz1-2/+2
We want to talk about the kwargs to the custom_target() function, but tried to link to custom_tgt instead, which is not a function. It is an object, but this was the wrong reference method for a type. We want the function anyway, so use that.
2022-06-27docs: correctly classify module methods as a method, not a functionEli Schwartz1-7/+7
2022-06-27docs: grammar nitEli Schwartz1-1/+1
2022-06-27docs: encourage using the "setup" subcommand where appropriateEli Schwartz1-1/+1
2022-06-27docs: fix confusing repetitionEli Schwartz1-6/+4
The end of the paragraph indicates that the options which support --foo will be listed in the help text. The beginning of the paragraph seems to suggest the same thing, except it doesn't distinguish between -Dfoo and --foo style options. The first mention is redundant and feels like the wrong part of the paragraph to mention it anyway.
2022-06-27docs: linkify some function referencesEli Schwartz3-4/+4
2022-06-27docs: fix yaml refman example of embedding links in a code commentEli Schwartz1-1/+1
With the previous commit, we made this smartly detect when parentheses are not needed. But the example was broken, because it doesn't follow its own documented rules to use `[[#` syntax. Add the missing hash character.
2022-06-21docs: grammar and formatting nitsEli Schwartz1-2/+8
2022-06-21docs: remove incorrect information about nonexisting kwargEli Schwartz1-2/+2
2022-06-21Update Unit-tests.md (#10515)CLanguagePurist1-0/+8
2022-06-19python module: implicitly add python dep to extensionsEli Schwartz2-3/+16
If there isn't a preexisting dependency on python, append one. It's almost assuredly needed, so just do the right thing out of the box.
2022-06-17external-project: Add depends kwargXavier Claessens1-0/+5
The unit test was racy but surprisingly never failed on CI. The reason is we need to ensure ninja build somelib.so before running `make` into the external project.
2022-06-17docs: d_module_versions has an undocumented ability to accept integersEli Schwartz1-2/+2
Dlang uses both integer version "levels" and arbitrary string identifiers, and we support both, but don't mention it in the docs. Also update a test case to pass one via declare_dependency. We already test this kwarg for build_target.
2022-06-16doc: Add meson.override_dependency() in external-project exampleXavier Claessens1-0/+1
2022-06-10fix typo in IndepthTutorial.mdff1-1/+1
2022-06-07wrap: Add support for applying a list of patch filesPaweł Marczewski2-0/+39
Co-authored-by: Xavier Claessens <xavier.claessens@collabora.com>
2022-06-06compilers: Add support for stand-alone leak sanitizerMarco Trevisan (Treviño)2-2/+2
Leak sanitizer can be enabled without the whole AddressSanitizer, this can be done by passing -fsanitize=leak as documented at [1]. Meson doesn't support this, so add support for it. [1] https://clang.llvm.org/docs/LeakSanitizer.html
2022-05-31docs: fix incorrect linkEli Schwartz1-2/+2
When referring to the custom_target docs, we want to point to the docs on the function, not the docs on the returned method.
2022-05-31fix bug in i18n merge_file/itstool_join revealed by previous commitEli Schwartz1-0/+6
Logically, i18n.merge_file cannot ever take a MULTI_OUTPUT_KW, but it does take a CT_OUTPUT_KW-like interface. Actually trying to pass multiple merge_file outputs causes the msgfmthelper script to be entirely malformed in the arguments it accepts, and treat the broken one like a --flag, then exit with argparse errors. Even if we somehow assumed that somehow it was designed to actually allow this, msgfmt doesn't support conceptually passing multiple outputs so that would be a msgfmt error instead of an error inside the guts of `meson --internal msgfmthelper`. Same logic applies again for the itstool command and the itstool internal helper. Catch this error at configuration time by using the single-output kwarg form. Likewise, it's totally nonsense to accept multiple install_dir or install_tags, and ever since commit 11f96380351a88059ec55f1070fdebc1b1033117 the CustomTarget itself won't even check this.
2022-05-30Implement `preserve_path` for install_headersFlorian "sp1rit"​1-0/+35
The `install_headers` function now has an optional argument `preserve_path` that allows installing multi-directory headerfile structures that live alongside sourcecode with a single command. For example, the headerfile structure headers = [ 'one.h', 'two.h', 'alpha/one.h', 'alpha/two.h', 'alpha/three.h' 'beta/one.h' ] can now be passed to `install_headers(headers, subdir: 'mylib', preserve_path: true)` and the resulting directory tree will look like {prefix} └── include    └── mylib       ├── alpha       │   ├── one.h       │   ├── two.h       │   └── three.h       ├── beta       │   └── one.h       ├── one.h       └── two.h Fixes #3371
2022-05-26remove repetition and stiff languageGuilherme Janczak1-2/+1
2022-05-26don't tell documentation contributors to skip CIGuilherme Janczak1-5/+0
The CI correctly handles documentation changes automatically, it's no longer necessary to do it by hand.
2022-05-24Compiler-properties.md:link to compiler object pageandy59951-2/+3
2022-05-19Add cc.has_function_attribute('sentinel')Tristan Partin1-0/+1
2022-05-19Add cc.has_function_attribute('section')Tristan Partin1-0/+3
2022-05-16Update Creating-OSX-packages.mdAdel Kara Slimane1-3/+25
Qt offers a tool to automatize most of what needs to be done regarding its libraries.
2022-05-09python module: default extensions to hidden symbol visibilityEli Schwartz2-0/+18
python compiled extensions should never need to expose any symbol other than PyInit_* which is declared with default visibility via PyMODINIT_FUNC on supported compilers. Thus, a reasonably sane default is to mark any other symbols as hidden, while still respecting any manually specified visibility. Gate this on the version of python itself, as not all versions decorate PyMODINIT_FUNC properly.
2022-05-08compilers/c++: Add MSVC option to make the __cplusplus define accurateEli Schwartz1-0/+15
Otherwise it always returns the value for c++98, starting with MSVC 2017 15.7 or later. Earlier versions are not affected by this mis-feature. See: https://docs.microsoft.com/en-us/cpp/build/reference/zc-cplusplus?view=msvc-160 This was originally applied as 0b97d585480e973d8b149618901f7a4ddfa1a906 but later reverted because it made the CI red. Try it again, now. Original-patch-by: Dylan Baker <dylan@pnwbakers.com> Co-authored-by: Dylan Baker <dylan@pnwbakers.com>
2022-05-06devenv: Set WINEPATH when cross compiling for WindowsXavier Claessens2-0/+10
2022-05-06coverage: be clever and detect config files for gcovr/lcovEli Schwartz1-0/+12
gcovr will read this file anyway, but if it exists we don't need to assume that the project wishes to exclude subprojects/ -- they can determine that themselves. Fixes #3287 Closes #9761 lcov doesn't read the config file by default, but we can do the smart thing here. Fixes #4628
2022-05-03add prefer_static built-in optionDudemanguy3-0/+11
By default, meson will try to look for shared libraries first before static ones. In the meson.build itself, one can use the static keyword to control if a static library will be tried first but there's no simple way for an end user performing a build to switch back and forth at will. Let's cover this usecase by adding an option that allows a user to specify if they want dependency lookups to try static or shared libraries first. The writer of the meson.build can manually specify the static keyword where appropriate which will override the value of this option.
2022-05-03interpreter: new function add_project_dependencies()Paolo Bonzini1-0/+11
This function can be used to add fundamental dependencies such as glib to all build products in one fell swoop. This can be useful whenever, due to a project's coding conventions, it is not really possible to compile any source file without including the dependency. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-05-02complete documentation of declare_dependencyRemi Thebault1-1/+2
2022-05-02Fix wrong name in docRemi Thebault2-7/+6
The doc about declare_dependency states d_module_features instead of d_module_versions
2022-05-01Add support for multiline f-stringsPeter Lesslie2-3/+25
+ Extend the parser to recognize the multiline f-strings, which the documentation already implies will work. The syntax is like: ``` x = 'hello' y = 'world' msg = f'''This is a multiline string. Sending a message: '@x@ @y@' ''' ``` which produces: ``` This is a multiline string. Sending a message: 'hello world' ``` + Added some f-string tests cases to "62 string arithmetic" to exercise the new behavior.
2022-05-01Some documentation fix (#10335)Maple2-1/+1
* update sample image * increase size so all text will be shown
2022-05-01Merge pull request #10039 from eli-schwartz/wayland-protocols-subproject-filesJussi Pakkanen1-0/+22
dependencies: allow get_variable to expose files from subprojects
2022-04-30add release snippetRemi Thebault1-0/+13
2022-04-30linkers: Add support for mold linkerFini Jastrow2-0/+5
[why] Support for the relatively new mold linker is missing. If someone wants to use mold as linker `LDFLAGS="-B/path/to/mold"` has to be added instead of the usual `CC_LD=mold meson ...` or `CXX_LD=mold meson ...`. [how] Allow `mold' as linker for clang and newer GCC versions (that versions that have support). The error message can be a bit off, because it is generic for all GNU like compilers, but I guess that is ok. (i.e. 'mold' is not listed as possible linker, even if it would be possible for the given compiler.) [note] GCC Version 12.0.1 is not sufficient to say `mold` is supported. The expected release with support will be 12.1.0. On the other hand people that use the un-released 12.0.1 will probably have built it from trunk. Allowing 12.0.1 is helping bleeding edge developers to use mold in Meson already now. Fixes: #9072 Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-04-27Add small note that get_variable can publicize its data filesEli Schwartz1-0/+22
Nothing elaborate, just laying down the ground rules for expected usage and pointing out that it now works. The idea is not to give people ideas, but to let projects which already have this use case, use it with confidence.