summaryrefslogtreecommitdiff
path: root/test cases/frameworks
AgeCommit message (Collapse)Author
2025-11-05tests: Add a basic test for the codegen implementation codeDylan Baker
This just tests that it works, so it catches the previous bug. Not sure how to test this more thoroughly.
2025-10-29tests: don't skip HDF5 for Gentoo anymoreSam James
Stable HDF5 has a fixed .pc file, but we need to enable hdf5[cxx] for H5Cpp.h.
2025-10-24modules/codegen: Add support for bison/byacc/yaccDylan Baker
This adds a similar wrapper to the Lex wrapper for yacc/bison/byacc. The interface is equivalent.
2025-10-24modules/codegen: Add wrapper for lex/flex/reflexDylan Baker
This module is a bit of a dumping ground for code generators, particularly ones that are important and non-trivial to wrap, either due to multiple implementations, major command line changes, or complex outputs (such as those that may output a directory structure). The initially provided method is for lex. It provides a simple wrapper that handles win_flex, reflex, flex, and generic lex.
2025-10-01Allow CustomTarget source for i18n.xgettextCharles Brunet
Fixes #15054
2025-07-14hdf5: Skip failing Fortran config-tool test when h5fc is brokenMichał Górny
Skip the hdf5 Fortran config-tool test when running on CI and h5fc looks broken. This is needed due to upstream bug that h5fc does not include include paths when built via CMake, that currently affects at least Arch Linux and Gentoo. Bug: https://github.com/HDFGroup/hdf5/issues/5660 Signed-off-by: Michał Górny <mgorny@quansight.com>
2025-06-09modules/gnome: Allow to generate markdown and reStructuredText dbus docCorentin Noël
gdbus-docgen supports reStructuredText output since 2.71.1 and markdown since 2.75.2, allow to simply generate it.
2025-05-25tests: don't skip frameworks/17 mpi for auto/pkgconfigSam James
This is fixed in Ubuntu rolling now and Bionic wasn't affected to begin with. Bug: https://bugs.debian.org/1078026
2025-05-23vulkan: Add regression test with VULKAN_SDK variableArjan Molenaar
Add test cases that target the Vulkan system dependeny resolver explicitly.
2025-05-20CI: always install llvm for MSYS2Christoph Reiter
Due to some recent package splits llvm is no longer installed when clang is installed and the meson test suite was depending on the transitive dependency. Instead explicitly install llvm in all cases.
2025-05-14Skip gettext extractor on macos because it is unstableCharles Brunet
2025-04-15Fix version requirement.Jussi Pakkanen
2025-04-14Condense directory names for 1.8 rc1.Jussi Pakkanen
2025-04-09New xgettext method for i18n moduleCharles Brunet
This method call xgettext to extract translatable string from source files into a .pot translation template. It differs from a plain CustomTarget in three ways: - It accepts build targets as sources, and automatically resolves source files from those build targets; - It detects command lines that are too long, and writes, at config time, the list of source files into a text file to be consumed by the xgettext command; - It detects dependencies between pot extraction targets, based on the dependencies between source targets.
2025-04-09gnome: Add a test consuming PythonL. E. Segovia
2025-03-01modules/gnome: Allow to specify the doc-format argumentCorentin Noël
Add the support for the doc-format argument if g-ir-scanner supports it. Ignore the argument otherwise as this is a no-op in such cases.
2025-01-28tests: enable gir static lib on cygwinDylan Baker
Where it is now working.
2025-01-09qt module: add qml module testPierre Lamot
2024-12-25test cases: fix '8 flex' with C23Sam James
With C23 (as upcoming GCC 15 will default to), `void yyerror()` is the same as `void yyerror(void)`, i.e. `yyerror` takes no arguments. Fix the prototype given we *do* call it with an error string: ``` pgen.p/parser.tab.c: In function ‘yyparse’: pgen.p/parser.tab.c:1104:7: error: too many arguments to function ‘yyerror’ 1104 | yyerror (YY_("syntax error")); | ^~~~~~~ ../test cases/frameworks/8 flex/parser.y:3:12: note: declared here 3 | extern int yyerror(); | ^~~~~~~ pgen.p/parser.tab.c:1215:3: error: too many arguments to function ‘yyerror’ 1215 | yyerror (YY_("memory exhausted")); | ^~~~~~~ ../test cases/frameworks/8 flex/parser.y:3:12: note: declared here 3 | extern int yyerror(); | ^~~~~~~ ``` Bug: https://bugs.gentoo.org/946625
2024-12-19replace cmake configuration workaround with a straight copyJan200101
2024-12-06fix generate_gir with BothLibraries dependencyCharles Brunet
Co-authored-by: Xavier Claessens <xclaesse@gmail.com>
2024-12-06libgcrypt-config is no more on ubuntu-rollingPaolo Bonzini
2024-11-18tests: HDF5 no longer skips on MacOSDylan Baker
The `-show` switch was added into the cmake-generated scripts in HDFGroup/hdf5@6fa09bd and backported to 1.14.5.
2024-10-11Recreate Boost symlink at runtime to survive sdist. Closes: #13763.Jussi Pakkanen
2024-09-30tests: set c++ stdandard to c++11 for hd5fDylan Baker
This fails on MacOS otherwise
2024-09-24qt module: allow has_tools to specify which tools to checkPierre Lamot
This allows checking for tools that may not be available in older version of qt or avoiding requesting tools that may not be necessary for a given project Co-authored-by: Nirbheek Chauhan <nirbheek@centricular.com>
2024-09-20tests: only skip MPI test on Ubuntu if we are in a CI containerEli Schwartz
It is genuinely horribly buggy so we don't want the testsuite to succeed. We make a special exception for the CI runner since it is a known breakage but people packaging meson should see the issue.
2024-08-19ci: skip frameworks/17 mpi for auto/pkgconfig on UbuntuSam James
The pkgconfig file in Debian and Ubuntu is definitely broken and we've reported it upstream, but we don't really want to keep our image building failing while we wait for that to be fixed. Skip the auto/pkgconfig test if both: a) we're on Ubuntu, and b) the .pc checksum matches a known-bad copy. I'm also CC'd to the bug to catch if it gets fixed. Bug: https://bugs.debian.org/1078026
2024-08-06CI: mark arch as skipping frameworks/libgcryptEli Schwartz
They have recently upgraded to libgcrypt 1.11 and it has inherited the gpg suite migration to pkg-config.
2024-07-02CI: mark cygwin as skipping frameworks/libgcryptEli Schwartz
They have recently upgraded to libgcrypt 1.11 and it has inherited the gpg suite migration to pkg-config.
2024-04-10Document a probable cause for test failures.Jussi Pakkanen
2024-04-08gnome: Actually run all mkenums_simple tests and fix numberingMatthijs Velsink
Some tests for `gnome.mkenums_simple` were only compiled, but not run. Most bugs will be caught by compilation alone, but it's better to run the generated binary too in case there are runtime issues in the generated code. The naming of all enum tests is now unified as well.
2024-03-28tests: don't expect msys2 llvm cmake tests to skip with llvm 18Christoph Reiter
They were skipped with llvm 17 based on the version, and they are now no longer skipped with v18 and also pass now. This depends on #12964 for llvm 18 support in meson.
2024-03-17tests: rename skip_on_jobname to expect_skip_on_jobname and skip_on_os to ↵Christoph Reiter
expect_skip_on_os The test.json format currently has three keys related to skipping tests: * `skip_on_jobname` * `skip_on_os` * `skip_on_env` While `skip_on_env` marks the test itself as skipped, i.e. they don't get run when the conditions are met, the other two skip options are just marking the test as "expected to be skipped" if the conditions apply, i.e. they want to see `MESON_SKIP_TEST` in the output and things will fail if that doesn't happen. They don't actually skip the tests as the names imply. To make this clearer rename the keys: * `skip_on_jobname` -> `expect_skip_on_jobname` * `skip_on_os` -> `expect_skip_on_os` `skip_on_env` stays the same, since that actually skips. The docs were also confused about this, so adjust that too.
2024-02-12qt: add preserve_paths keyword to functionsCharles Brunet
This allow to generate ui and moc under subdirectories, as this is allowed with generic generators.
2024-02-09Suppress LLVM static test on ArchEli Schwartz
It is properly detected as unavailable, ever since commit d1b783fc6923efa1a891d6d3a717e4e5ad15de21
2024-02-09test cases: use C++17 for protobuf because of abseil-cppSam James
On the openSUSE builder, we got a horrifying CI failure like: ``` FAILED: asubdir/subdir-prog.p/main.cpp.o c++ -Iasubdir/subdir-prog.p -Iasubdir '-I../test cases/frameworks/5 protocol buffers/asubdir' -fdiagnostics-color=always -D_GLIBCXX_ASSERTIONS=1 -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -std=c++14 -O0 -g -DPROTOBUF_USE_DLLS -DNOMINMAX -MD -MQ asubdir/subdir-prog.p/main.cpp.o -MF asubdir/subdir-prog.p/main.cpp.o.d -o asubdir/subdir-prog.p/main.cpp.o -c '../test cases/frameworks/5 protocol buffers/asubdir/main.cpp' In file included from /usr/include/google/protobuf/stubs/common.h:20, from /usr/include/google/protobuf/io/coded_stream.h:107, from asubdir/subdir-prog.p/defs.pb.h:26, from ../test cases/frameworks/5 protocol buffers/asubdir/main.cpp:1: /usr/include/absl/strings/string_view.h:52:26: error: ‘string_view’ in namespace ‘std’ does not name a type 52 | using string_view = std::string_view; | ^~~~~~~~~~~ [...] ``` This turns out to be because of a *huge* mess with abseil-cpp and protobuf. We're still trying to handle it in Gentoo, even (see bgo#912819) and https://github.com/gentoo/gentoo/pull/32281. In summary, abseil-cpp started to require C++17 (unless built with a special option which causes ABI problems). Let's switch the protobuf test case to use C++17 accordingly. There's some precedence for Just Doing This, like in cb54f0d707e5673eb1d8aaafae59a6d5fde25e18 recently for Boost, and 792a84199b8829c923968e8816a27e021647d146 previously for protobuf itself. Bug: https://bugs.gentoo.org/912819 See also: https://github.com/gentoo/gentoo/pull/32281 Signed-off-by: Sam James <sam@gentoo.org> Signed-off-by: Eli Schwartz <eschwartz93@gmail.com>
2024-02-09ci: add GentooSam James
We may want to consider our own binpkg cache for future to speed things up, in addition to the ones provided by Gentoo's own binhost. Signed-off-by: Sam James <sam@gentoo.org> Signed-off-by: Eli Schwartz <eschwartz93@gmail.com>
2024-01-31CI: mark hdf5 as inaccessible on macOS with config-tool instead of pkg-configEli Schwartz
It is broken with the cmake build. With the previous commit, it now shows the former as UNEXSKIP instead of ERROR.
2023-11-06tests: skip llvm modules test more thoroughlyEli Schwartz
The bug that is referenced in the SKIP message was merged in time for the most recent llvm 16.x release. However, due to the graciousness of the LLVM developers, a very reasonable response was taken: LLVM will not merge ("the average"?) bugfixes during the final point release of a release series, as judged by their willingness to continue maintaining a major release of LLVM (????????) because merging a bugfix could theoretically cause a new bug instead and that Simply Is Not Done™. It could result in truly tragic outcomes, like having to release another bugfix. This innovative approach to bug solving has advanced the science of computing forward by decades. Sadly, it comes at a downside: software doesn't work. At this point it becomes obvious that llvm 16 in general will simply not work with Meson, and this is "expected", so bump the version checking for our SKIP to match reality.
2023-10-19test cases/15 llvm: Skip cmake when llvm == 17.0Nirbheek Chauhan
There's a bug in the zstd find_package module: https://github.com/llvm/llvm-project/commit/e7fc7540daa9333f0be4f380fc9c619236d17f57#r130257253
2023-09-09gnome.mkenum_simple(): Fix include path when header is in subdirXavier Claessens
It was generating #include with the basename of every header file. That assumes that every directory where there are headers are also included into search path when compiling the .c file. Change to use path relative to current subdir, which can be both in build or source directory. That means that we assume that when the .c file is compiled, the target has a include_directories pointing to the directory where gnome.mkenum_simple() has been called, which is generally '.' and added automatically. Also fix type annotation to only allow str and File sources, other types have never been working, it would require to iterate over custom target outputs, etc. Fixes: #7582
2023-09-08Override config-tool get_variable args for qmakeNirbheek Chauhan
2023-09-06qt module: add include_directories to moc compileCharles Brunet
Fixes #12182
2023-08-30ci: Skip gir test on cygwinXavier Claessens
2023-08-29gnome: Fix crash in gtkdoc and generate_gir in C++ projectsXavier Claessens
gtkdoc() and generate_gir() methods assumes there is a C compiler, but pure C++ projects might not add it explicitly. Fixes: #12162
2023-07-23hdf5 tests: make cpp test actually use cpp HDF5George Sedov
the previous version didn't even link to libhdf5_cpp.so
2023-07-18tests: bump the C++ std for protobuf testsEli Schwartz
Based on https://opensource.google/documentation/policies/cplusplus-support Google no longer supports C++11, and protobuf spawns an `#error` if you don't have at least 14. So, perform our currently scheduled automatic bump.
2023-07-18tests: mark gpgme test skippable on Ubuntu rollingEli Schwartz
It has been rebuilt to no longer provide the deprecated gpgme-config tool.
2023-07-18ci: Skip test_generate_gir_with_address_sanitizerXavier Claessens
It fails with glib >= 2.76 and gobject-introspection <= 1.76.1. Fixes: #11754