aboutsummaryrefslogtreecommitdiff
path: root/test cases
AgeCommit message (Collapse)AuthorFilesLines
2021-03-18add test case for installed targets uninstalling a single directoryEli Schwartz3-3/+18
2021-03-18Allow add_dist_script() in subprojectsXavier Claessens5-0/+27
Fixes: #8440.
2021-03-18interpreter: Add varname as positional arg in dep.get_variable()Xavier Claessens1-0/+2
2021-03-17Warn when grabbing internals of subprojects with include_directories.Jussi Pakkanen4-0/+20
2021-03-17One more unixy fix.Jussi Pakkanen2-1/+5
2021-03-16clangformat: Add include and ignore filesXavier Claessens7-0/+17
2021-03-16Add range() functionXavier Claessens1-0/+20
Fixes: #5026.
2021-03-16Replace Unix shell commands with scripts.Jussi Pakkanen6-5/+23
2021-03-16Add `meson devenv` command and meson.add_devenv()Xavier Claessens5-0/+50
2021-03-14Fix run_targets running scripts from different subdirs.Jussi Pakkanen2-0/+5
2021-03-12interpreter: Cache found dependency before converting for include_typeXavier Claessens6-0/+28
Fixes: #8516.
2021-03-10Add test to build a mixed C/Rust shared library.Jussi Pakkanen5-0/+93
2021-03-10Some documentation language adjustments & improved error messagesLaurin-Luis Lehning1-1/+1
2021-03-10Formatting fixLaurin-Luis Lehning2-2/+2
2021-03-10Add failing test cases & release snippetLaurin-Luis Lehning4-0/+21
2021-03-10Switch fstring syntax to @..@ & limit fstring captures to int, str, float ↵Laurin-Luis Lehning1-4/+2
and bool
2021-03-10Add support for basic format stringsLaurin-Luis Lehning1-0/+9
2021-03-10Disable broken asm test on Cygwin as nobody knows how to fix it.Jussi Pakkanen1-0/+4
2021-03-09Add str.replace() methodTristan Partin1-1/+5
2021-03-06Refactor subdir visitation to track files instead of dirs.Jussi Pakkanen3-0/+11
2021-03-06Fix Fortran dep scanner for upper case file extensions. Closes #8395.Jussi Pakkanen2-1/+2
2021-03-04use python2-compatible syntax because needed on macOSEli Schwartz1-2/+2
Apparently this unittest runs on macOS using the system python2.
2021-03-04mass rewrite of string formatting to use f-strings everywhereEli Schwartz14-22/+22
performed by running "pyupgrade --py36-plus" and committing the results
2021-03-04various python neatness cleanupsEli Schwartz12-12/+7
All changes were created by running "pyupgrade --py3-only --keep-percent-format" and committing the results. I have not touched string formatting for now. - use set literals - simplify .format() parameter naming - remove __future__ - remove default "r" mode for open() - use OSError rather than compatibility aliases - remove stray parentheses in function(generator) scopes
2021-02-27install_man locale supportJason Woodward3-0/+3
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-26Merge pull request #8429 from dcbaker/submit/rust-fix-linking-with-find-libraryDylan Baker5-0/+53
rust: correctly handle -l link args
2021-02-26interpreter: Clean up and simplify/optimize get_(external|cross)_propertyDylan Baker6-8/+18
These are both way more compilcated than they needed to be, this is a much simpler implementation, and is shared between cross and external properies.
2021-02-26tests/rust: Add rust case linking to libm in rust static libraryJordan Justen5-0/+53
When building on Linux, I see: rustc -C linker=cc --color=always --crate-type rlib --crate-name rs_math -g --emit dep-info=rs_math.d --emit link -L /usr/lib/x86_64-linux-gnu -o librs_math.rlib -l static=m ../rs_math.rs error: failed to add native library /usr/lib/x86_64-linux-gnu/libm.a: file too small to be an archive I think the "file too small to be an archive" message is coming from libLLVM, and is a case of LLVM not handling this type of "script archive". So, possibly this is just LLVM not handling a linking case. The rust_args usage in meson.build is invalid, but required to reproduce the issue in the test case. Perhaps meson should automatically add the library include path via the dep_m meson object, or maybe the meson.build can add the link path in a better way. Changing '-l static=m' to '-l dylib=m' appears to fix this case. (See comments in meson.build.)
2021-02-26interpreter: correctly track whether a subproject is initializedDylan Baker4-0/+23
The way the tracking is currently done it works if no new subprojects are added to a configured build directory. For cases where we want to add a new subproject, it fails because we don't initialize builtins for that subproject. This corrects that by checking to see if the subproject already exists, and if it doesn't initializes the bultins for it. Fixes: #8421
2021-02-26Allow printing UserOptions in the summaryStephen Gregoratto2-0/+2
2021-02-26meson: add .has_external_property() methodsTim-Philipp Müller2-2/+27
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-26Merge pull request #8404 from dcbaker/submit/rust-c-dependenciesJussi Pakkanen5-0/+62
Fix linking Rust with C dependencies
2021-02-25Allow custom target output to be processed by generatorsMatthias Klumpp3-4/+22
2021-02-23rust: fix linking with external dependenciesDylan Baker1-1/+4
Rust can link with any dependency that uses c linkage, which is pretty much what we assume across the board anyway.
2021-02-23tests/rust: Add rust case linking to zlib dependencyJordan Justen5-0/+59
Reworks: * Add MESON_SKIP_TEST error for darwin from polyglot test * Remove dependencies from executable Dylan's changes: * Add support for both static and shared testing * Test with pkg-config, cmake, and system * reformat to meson's style Co-authored-by: Dylan Baker <dylan@pnwbakers.com>
2021-02-22[CUDA] Bugfix: Forward sanitizer_*_args() methods to host compiler.Olexa Bilaniuk2-0/+34
Enables -Db_sanitize=undefined and company. Also serves as a testcase for NVCC comma-shielding: Because the test- case declares `b_sanitize=address,undefined`, the host GCC compiler needs `-fsanitize=address,undefined`, but this stands a danger of being split by NVCC when wrapped with `-Xcompiler=args,args`. Special, already-existing comma-shielding codepaths activate to prevent this splitting. Closes #8394.
2021-02-22minstall: Add --skip-subprojects optionXavier Claessens10-0/+27
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-19Fix combining C and Fortran. Closes #8377.Jussi Pakkanen2-2/+18
2021-02-19[TAP] Fix TAP parser when test exits with statusLuke Drummond2-1/+11
Some time between 0.56 and 0.57 the TAP parser broke when a test exits with a nonzero status. The TAP protocol does not specify this behaviour - giving latitude to implementers, and meson's previous behaviour was to report the exit status gracefully. This patch restores the old behaviour and adds a regression test
2021-02-19Ensure that $lang_args and $lang_link_args are properly parsedDylan Baker3-0/+29
Currently we don't handle things correctly if we get a string we should split, and the linker and needs compiler arguments. It would result in two unsplit strings in a list, instead of the split arguments in a list Fixes: #8348
2021-02-18Increase OpenMPI timeout to see if it fixes macOS CI test hangs.Jussi Pakkanen1-3/+3
2021-02-18Disable failing Cygwin GIR test.Jussi Pakkanen5-0/+20
2021-02-17ci: Fix failure in unit tests with vs backendXavier Claessens1-2/+2
2021-02-17Do not validate options when finding non-matchingDylan Baker3-0/+20
This is a) useless because it's only used to print which options are not default, and b) harmful because it can result in cases where things break, like in projects that set a standard that the chosen compiler doesn't support, but the project (or some subset) can be built with a different standard. Fixes: #8360
2021-02-17Substitute @CURRENT_SOURCE_DIR@ in run_target() and custom_target()Xavier Claessens2-3/+34
run_target() does some variable substitutions since 0.57.0. This is a new behavior, and undocumented, caused by sharing more code with custom_target(). More consistency is better, so document it now. custom_target() was doing variable substitution in the past, because it shared some code with generator(), but that was undocumented. Some refactoring in 0.57.0 caused it to not replace @CURRENT_SOURCE_DIR@, @SOURCE_DIR@, and @BUILD_DIR@ anymore. This patch adds back @CURRENT_SOURCE_DIR@ and document it. It does not add back @SOURCE_DIR@ because it is duplicate with @SOURCE_ROOT@ that has a better name. Also do not add back @BUILD_DIR@ which is duplicate of @PRIVATE_DIR@, and not @BUILD_ROOT@ surprisingly, adding to the confusion.
2021-02-17Environment: Fix passing envrionment variables CPPFLAGS and CFLAGSDylan Baker3-0/+40
Or other language flags that use CPPFLAGS (like CXXFLAGS). The problem here is actually rather simple, `dict.setdefault()` doesn't work like I thought it did, I thought it created a weak entry, but it actually is equivalent to: ```python if k not in dict: dict[k] = v ``` Instead we'll use an intermediate dictionary (a default dictionary actually, since that makes things a little cleaner) and then add the keys from that dict to self.options as applicable. Test case written by Jussi, Fix by Dylan Co-authored-by: Jussi Pakkanen Fixes: #8361 Fixes: #8345
2021-02-09backends: Fix custom_target() with configure_file() exeXavier Claessens1-1/+4
2021-02-09Condense test directory names in preparation for rc1.Jussi Pakkanen21-0/+0
2021-02-08Fix exe wrapper detection for run targets.Jussi Pakkanen1-2/+7
2021-02-07Add Qt6 moduleLuca Weiss1-1/+4