| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Helps the consumers of the documentation to assume that the documentation is
using gtk-doc format or gi-docgen.
|
|
|
|
| |
The `check` argument to `run_command()` is now mandatory.
|
|
|
|
|
|
|
|
|
|
|
|
| |
The hack that copies the doctemplates directory into the build
directory has stopped working with newer versions of Meson; while it's
possible to copy files, custom_target() cannot depend on a directory.
Additionally, the dependency has always been broken.
Instead, we enumerate the template files—after all, it's not like they
change a lot—and then we list them as dependencies for the test targets.
Fixes: #414
|
|
|
|
|
|
|
|
|
|
| |
Because of skepticism I received in #224, I made this PR which keeps the
testsuite and CI improvements but doesn't add any new build options. I
hope this would be less controversial:
- no new knobs
- tests for those using existing build options
- CI tests `build_introspection_data = false`
|
|
|
|
|
| |
meson.build_root() is the root of the main project, better use
meson.current_build_dir() instead.
|
|
|
|
|
|
|
|
|
|
|
|
| |
This avoids compilation erroring out on C4819 (Unicode handling issue in the
Visual Studio compiler), notably when running on Chinese, Japanese and Korean
(CJK) locales.
This also applies -utf-8 into the cflags passed into the various g-ir-scanner
command lines that are used to generate the *.gir files, where -utf-8 is
available, so that we don't get flooded with C4819 warnings during the
build, and therefore avoid potential mishaps, as C4819 is a real warning that
warngs us the code may be incorrectly built.
|
|
|
|
|
|
|
| |
Similar to !180 this should prevent devs from not running all tests by
accident.
This also adds some checks for the required doctool dependencies, mako and markdown.
|
|
|
|
|
|
|
|
|
| |
We require cairo only to run all tests and thus default it to false.
This usually results in developers not using it when working on changes and
tests depending on cairo then failing in CI.
This changes it to a feature option that defaults to auto, so that devs that
have cairo headers installed will automatically use it.
|
|
|
|
|
|
|
|
|
|
| |
By doing so, we essentially cover the various compiler flags that we
want to use for non-Visual Studio builds to check for warnings that
might cause real concern.
This also skips the checks for the various GCC-isque CFlag checks that
are scattered in the various build files on Visual Studio builds, since
they are essentially meaningless on Visual Studio builds.
|
|
|
|
| |
Less noisy build
|
|
|
|
|
|
|
|
|
|
| |
The scanner matches gtk-doc sections which match the lower case type name
to the type and uses that for the type documentation. The only problem is
it only takes the docs and none of the other annotations like deprecation
info etc.
This changes things to also parse the annotations in that case and adds some
tests while at it.
|
|
|
|
|
| |
To make it easier to test make sure it always returns absolute paths.
Also fix a typo, oops!
|
| |
|
| |
|
|
|
|
| |
This time pass the libgirepository build dir
|
| |
|
|
|
|
| |
I added it to the wrong one in d2bd6390ed8, oops..
|
|
|
|
|
| |
It broke continuous
https://build.gnome.org/continuous/buildmaster/builds/2019/01/01/0/build/log-gobject-introspection.txt
|
| |
|
| |
|
|
|
|
|
| |
The cairo dependency fallback code is copied from pygobject. I assume that
will work for msvc users (cairo is disabled by default anyway)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
No functional changes intended.
Tests check that:
* Compiler is obtained from CC.
* cc is used as the default compiler.
Currently not true as a Python build time compiler is used as the default.
* Preprocessor is obtained from CC when CPP is unspecified by adding -E.
* Preprocessor is obtained from CPP.
* cpp is used as the default preprocessor.
Currently not true as Python build time preprocessor is used as the default.
* Shell word splitting rules are used to split CC.
* Shell word splitting rules are used to split CPP.
* Deprecation warnings are disabled during compilation.
* Preprocessing step includes CPPFLAGS.
* Compilation step includes both CFLAGS and CPPFLAGS, in that order.
* Macros from CFLAGS are defined only once.
Currently not true as they are defined twice.
* Flags that would retain macros after preprocessing step are filtered out.
Currently only partially true as they aren't filtered out from CPPFLAGS.
* Preprocessing step includes flag that preserves comments.
* Preprocessing step includes current working directory.
* Complete preprocessing command doesn't contain anything unexpected.
Currently not true as Python build time CPPFLAGS are included as well.
* Complete build command doesn't contain anything unexpected.
Currently not true as Python build time CFLAGS and CPPFLAGS are included as well.
|
|
|
|
|
|
|
|
| |
Manually add all the subproject build directories to PATH for running
the scanner tests.
I'm wondering if meson shouldn't do this for us based on the dependency
we pass to test(), but this will do for now.
|
|
|
|
|
| |
Add a simple test using the docwriter so we trigger the docwriter related
Python imports.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Functional changes:
* Consistently check that return code from pkg-config is zero.
* Use shell word splitting rules to process pkg-config output to match
behaviour obtained by running `cc program.cc $(pkg-config --cflags ...)`.
Fixes issue #171 .
* Use user preferred encoding to process output from pkg-config on
Python 3. Python 2 behaviour defaults to using ascii encoding as before.
edit creiter: still ignore pkg-config errors by default for now as we
depend on it when glib is a subproject.
|
|
|
|
|
| |
There was a stray test() function already there. Move it to a unittest
file and run it with the other tests.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Windows
Instead of passing the filter commands to the shell, split them with the shlex module.
This gives us more control and a more similar behaviour on unix/win32 systems.
I could only find two users in Debian which just call python with some script, so
this seems safe to me.
Adjust the tests accordingly and use the running python executable to test the
functionality as we can be sure that's available on all platforms. Also add a
new test for the symbol filter commadn which wasn't tested before.
|
| |
|
|
|
|
|
|
|
|
| |
This allows us to build with Python 2 and run tests with it.
This requires the new "python" meson module which was added in 0.46.0 so
bump the required meson version (glib needs a newer one anyway).
Also fixes a small test error under Python 2.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* Use a single pattern that matches against potentially complete paths.
* Extract filename only afterwards on platforms where it is necessary.
* Match patterns against complete words in ldd output instead of searching
for them inside the lines - this avoids unintentional matches without
complexity of negative lookbehinds and negative lookaheads.
Fixes issue #208.
|
|
|