commit | 00b446d5db26f8cbb6ba13ab792281564d2dc6d3 | [log] [tgz] |
---|---|---|
author | Pekka Paalanen <[email protected]> | Fri Oct 14 13:49:41 2022 +0300 |
committer | Pekka Paalanen <[email protected]> | Wed Nov 09 14:18:04 2022 +0200 |
tree | 896b75b310db8e229a1d4f3603d7088d856049e3 | |
parent | f70fa58441834ce44609aee49a8e61091b599857 [diff] |
test: make edid-decode-diff.sh easier to run Having to define just DI_EDID_DECODE was tolerable when REF_EDID_DECODE does not need setting, but now that there are two built tools, it is getting inconvenient. Change the defaults to match the build directory structure and add a new overridable for the build directory. Now I only need to set BUILDDIR for this to work. My build dirs are completely elsewhere, but if someone uses the usual 'meson build' incantation, the default value for BUILDDIR should be fine. Signed-off-by: Pekka Paalanen <[email protected]>
EDID and DisplayID library.
Goals:
Documentation is available on the website.
The public API headers are categorised as either high-level or low-level API as per the comments in the header files. Users of libdisplay-info should prefer high-level API over low-level API when possible.
If high-level API lacks needed features, please propose additions to the high-level API upstream before using low-level API to get what you need. If the additions are rejected, you are welcome to use the low-level API.
This policy is aimed to propagate best practises when interpreting EDID and DisplayID information which can often be cryptic or even inconsistent.
Open issues and merge requests on the GitLab project.
In general, the Wayland contribution guidelines should be followed. In particular, each commit must carry a Signed-off-by tag to denote that the submitter adheres to the Developer Certificate of Origin 1.1. This project follows the freedesktop.org Contributor Covenant.
libdisplay-info is built using Meson. It has no dependencies.
meson setup build/ ninja -C build/
The low-level EDID library is tested against edid-decode. test/data/
contains a small collection of EDID blobs and diffs between upstream edid-decode
and our di-edid-decode
clone. Our CI ensures the diffs are up-to-date. A patch should never make the diffs grow larger. To add a new EDID blob or update a diff, use test/edid-decode-diff.sh test/data/<edid>
.
To run the test suite locally, you need to use edid-decode of the git revision mentioned in .gitlab-ci.yml
. Otherwise you may experience false failures.
The latest code coverage report is available on GitLab CI.
To fuzz libdisplay-info with AFL, the library needs to be instrumented:
CC=afl-gcc meson build/ ninja -C build/ afl-fuzz -i test/data/ -o afl/ build/di-edid-decode