diff options
author | Eric Engestrom <[email protected]> | 2019-02-26 12:32:04 +0000 |
---|---|---|
committer | Eric Engestrom <[email protected]> | 2019-02-28 17:30:44 +0000 |
commit | bb6b691c574ecc891528947f92be227fb6bcf872 (patch) | |
tree | 9040fa39fa20a7d55a9e8e4ea79a876507a1110e /src | |
parent | 4c3b2932422a7b8cad6b8373bbcf30328754b76b (diff) |
driconf: add DTD to allow the drirc xml (00-mesa-defaults.conf) to be validated
This DTD can be used to validate the drirc xml:
$ xmllint --noout --valid 00-mesa-defaults.conf
Signed-off-by: Eric Engestrom <[email protected]>
Reviewed-by: Emil Velikov <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/util/00-mesa-defaults.conf | 13 | ||||
-rw-r--r-- | src/util/meson.build | 16 |
2 files changed, 28 insertions, 1 deletions
diff --git a/src/util/00-mesa-defaults.conf b/src/util/00-mesa-defaults.conf index f5405a0da84..320de83a619 100644 --- a/src/util/00-mesa-defaults.conf +++ b/src/util/00-mesa-defaults.conf @@ -1,3 +1,4 @@ +<?xml version="1.0" standalone="yes"?> <!-- ============================================ @@ -27,6 +28,18 @@ TODO: document the other workarounds. --> +<!DOCTYPE driconf [ + <!ELEMENT driconf (device+)> + <!ELEMENT device (application+)> + <!ATTLIST device driver CDATA #IMPLIED> + <!ELEMENT application (option+)> + <!ATTLIST application name CDATA #REQUIRED + executable CDATA #REQUIRED> + <!ELEMENT option EMPTY> + <!ATTLIST option name CDATA #REQUIRED + value CDATA #REQUIRED> +]> + <driconf> <!-- Please always enable app-specific workarounds for all drivers and screens. --> diff --git a/src/util/meson.build b/src/util/meson.build index 397c2228129..4f64681f191 100644 --- a/src/util/meson.build +++ b/src/util/meson.build @@ -100,7 +100,21 @@ files_mesa_util = files( 'vma.h', ) -install_data('00-mesa-defaults.conf', install_dir : join_paths(get_option('datadir'), 'drirc.d')) +files_drirc = files('00-mesa-defaults.conf') + +install_data(files_drirc, install_dir : join_paths(get_option('datadir'), 'drirc.d')) + +if with_tests + prog_xmllint = find_program('xmllint', required : false, native : true) + if prog_xmllint.found() + test( + 'drirc xml validation', + prog_xmllint, + args : ['--noout', '--valid', files_drirc], + suite : ['util'], + ) + endif +endif files_xmlconfig = files( 'xmlconfig.c', |