* [igt-dev] [PATCH i-g-t v4 0/8] Build Xe test documentation
@ 2023-03-22 6:49 Mauro Carvalho Chehab
2023-03-22 6:49 ` [igt-dev] [PATCH i-g-t v4 1/8] meson: build " Mauro Carvalho Chehab
` (10 more replies)
0 siblings, 11 replies; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-03-22 6:49 UTC (permalink / raw)
To: igt-dev
From: Mauro Carvalho Chehab <mchehab@kernel.org>
IGT has gained support for building Xe driver test documentation,
but there are a few left-overs for it to work.
Add the left overs, creating Xe test documentation at build time.
---
v4:
- Fixed a build error when tests are disabled;
- get rid of source_root future deprecated warning;
- testplan/meson.build now uses join_paths;
- dropped tests/xe/meson.build file;
- re-indented testplan/meson.build.
v3:
- added SPDG tag to docs/testplan/conf.py;
- changed description on patch 2;
- cleanup IGT doc dependency chain.
Mauro Carvalho Chehab (8):
meson: build Xe test documentation
testplan: build also a PDF file with the testplan
meson.build: place gtk-doc dependencies check at the right place
meson: get rid of a future-deprecated warning
meson: get rid of tests/xe/meson.build
testplan/meson.build: cleanup dependency chain
testplan/meson.build: use join_paths()
testplan/meson.build: re-indent file
docs/meson.build | 4 ++
docs/reference/meson.build | 12 +++-
docs/testplan/conf.py | 42 ++++++++++++++
docs/testplan/meson.build | 112 +++++++++++++++++++++----------------
docs/testplan/testplan.css | 7 +++
lib/meson.build | 2 +-
meson.build | 17 +++---
meson_options.txt | 8 +++
scripts/gen_rst_index | 43 ++++++++++++++
scripts/meson.build | 3 +
tests/meson.build | 1 -
tests/xe/meson.build | 1 -
12 files changed, 192 insertions(+), 60 deletions(-)
create mode 100644 docs/testplan/conf.py
create mode 100644 docs/testplan/testplan.css
create mode 100755 scripts/gen_rst_index
delete mode 100644 tests/xe/meson.build
--
2.39.2
^ permalink raw reply [flat|nested] 17+ messages in thread
* [igt-dev] [PATCH i-g-t v4 1/8] meson: build Xe test documentation
2023-03-22 6:49 [igt-dev] [PATCH i-g-t v4 0/8] Build Xe test documentation Mauro Carvalho Chehab
@ 2023-03-22 6:49 ` Mauro Carvalho Chehab
2023-03-22 6:49 ` [igt-dev] [PATCH i-g-t v4 2/8] testplan: build also a PDF file with the testplan Mauro Carvalho Chehab
` (9 subsequent siblings)
10 siblings, 0 replies; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-03-22 6:49 UTC (permalink / raw)
To: igt-dev
From: Mauro Carvalho Chehab <mchehab@kernel.org>
Add the remaining changes at meson for it to build Xe documentation.
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
docs/meson.build | 1 +
docs/testplan/conf.py | 42 +++++++++++++++++++++++++++++++++++++
docs/testplan/testplan.css | 7 +++++++
meson_options.txt | 8 +++++++
scripts/gen_rst_index | 43 ++++++++++++++++++++++++++++++++++++++
scripts/meson.build | 3 +++
6 files changed, 104 insertions(+)
create mode 100644 docs/testplan/conf.py
create mode 100644 docs/testplan/testplan.css
create mode 100755 scripts/gen_rst_index
diff --git a/docs/meson.build b/docs/meson.build
index ead14c4015d9..01edf64f04a8 100644
--- a/docs/meson.build
+++ b/docs/meson.build
@@ -1 +1,2 @@
subdir('reference')
+subdir('testplan')
diff --git a/docs/testplan/conf.py b/docs/testplan/conf.py
new file mode 100644
index 000000000000..cfb866cc7a15
--- /dev/null
+++ b/docs/testplan/conf.py
@@ -0,0 +1,42 @@
+# -*- coding: utf-8 -*-
+# SPDX-License-Identifier: (GPL-2.0 OR MIT)
+
+import sys
+import os
+from shutil import which
+
+extensions = []
+
+if which('rst2pdf'):
+ extensions.append('rst2pdf.pdfbuilder')
+
+source_suffix = '.rst'
+master_doc = 'index'
+
+project = 'IGT Test Tools'
+copyright = 'Intel'
+author = 'IGT developers'
+language = 'en'
+
+exclude_patterns = []
+todo_include_todos = False
+
+html_theme = "nature"
+
+html_css_files = []
+html_static_path = ['.']
+html_copy_source = False
+
+html_use_smartypants = False
+html_sidebars = { '**': ['searchbox.html', 'localtoc.html']}
+htmlhelp_basename = 'IGT'
+
+html_theme_options = {
+ "body_max_width": "1520px",
+ "sidebarwidth": "400px",
+}
+
+# rst2pdf
+pdf_documents = [
+ ('index', u'xe_tests', u'IGT Xe Tests', u'IGT authors'),
+]
diff --git a/docs/testplan/testplan.css b/docs/testplan/testplan.css
new file mode 100644
index 000000000000..8aa7b7105c19
--- /dev/null
+++ b/docs/testplan/testplan.css
@@ -0,0 +1,7 @@
+@import url(html4css1.css);
+
+.literal {
+ background: lightgrey;
+ color: darkblue;
+ font-size: 14px;
+}
diff --git a/meson_options.txt b/meson_options.txt
index d978813b4feb..d4e373d6cfc4 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -20,6 +20,14 @@ option('man',
type : 'feature',
description : 'Build man pages')
+option('testplan',
+ type : 'feature',
+ description : 'Build testplan documentation pages in ReST and html')
+
+option('sphinx',
+ type : 'feature',
+ description : 'Build testplan documentation using Sphinx')
+
option('docs',
type : 'feature',
description : 'Build documentation')
diff --git a/scripts/gen_rst_index b/scripts/gen_rst_index
new file mode 100755
index 000000000000..34955a35a443
--- /dev/null
+++ b/scripts/gen_rst_index
@@ -0,0 +1,43 @@
+#!/bin/bash -e
+# SPDX-License-Identifier: (GPL-2.0 OR MIT)
+
+## Copyright (C) 2023 Intel Corporation ##
+## Author: Mauro Carvalho Chehab <mchehab@kernel.org> ##
+## ##
+## Small script to produce a ReST index file ##
+
+if [ $# -lt 3 ]; then
+ echo 'Usage: $0: <title> <files> <dest_dir>' >&2
+ exit 1
+fi
+
+title=$1
+shift
+
+args=( "$@" )
+
+dest_dir=${args[${#args[@]}-1]}
+unset args[${#args[@]}-1]
+
+if [ ! -d $dest_dir ]; then
+ echo "Error: $dest_dir directory doesn't exist" >&2
+ exit 1
+fi
+
+dest_file="$dest_dir/index.rst"
+
+echo $title > "$dest_file"
+len=${#title}
+for i in $(seq 1 $len); do
+ echo -n "=" >> "$dest_file"
+done
+echo >> "$dest_file"
+echo >> "$dest_file"
+
+echo ".. toctree::" >> "$dest_file"
+echo " :maxdepth: 1" >> "$dest_file"
+echo >> "$dest_file"
+
+for i in "${!args[@]}"; do
+ echo " ${args[$i]}" >> "$dest_file"
+done
diff --git a/scripts/meson.build b/scripts/meson.build
index 342972e66078..ce12aa02e946 100644
--- a/scripts/meson.build
+++ b/scripts/meson.build
@@ -11,3 +11,6 @@ if build_tests
install_data(prog, install_dir : bindir, install_mode : 'r-xr-xr-x')
endforeach
endif
+
+igt_doc_script = find_program('igt_doc.py')
+gen_rst_index = find_program('gen_rst_index')
--
2.39.2
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [igt-dev] [PATCH i-g-t v4 2/8] testplan: build also a PDF file with the testplan
2023-03-22 6:49 [igt-dev] [PATCH i-g-t v4 0/8] Build Xe test documentation Mauro Carvalho Chehab
2023-03-22 6:49 ` [igt-dev] [PATCH i-g-t v4 1/8] meson: build " Mauro Carvalho Chehab
@ 2023-03-22 6:49 ` Mauro Carvalho Chehab
2023-03-22 6:49 ` [igt-dev] [PATCH i-g-t v4 3/8] meson.build: place gtk-doc dependencies check at the right place Mauro Carvalho Chehab
` (8 subsequent siblings)
10 siblings, 0 replies; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-03-22 6:49 UTC (permalink / raw)
To: igt-dev
From: Mauro Carvalho Chehab <mchehab@kernel.org>
PDF files are easier to share, and it costs almost nothing to
produce them with Sphinx, via rst2pdf. Added support for it
if rst2pdf is installed.
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
docs/testplan/meson.build | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/docs/testplan/meson.build b/docs/testplan/meson.build
index 11c08573307e..50063aa2e84f 100644
--- a/docs/testplan/meson.build
+++ b/docs/testplan/meson.build
@@ -5,6 +5,7 @@ build_sphinx = get_option('sphinx')
rst2html = find_program('rst2html-3', 'rst2html', required : build_testplan)
sphinx = find_program('sphinx-build', required: build_sphinx)
+rst2pdf = find_program('rst2pdf', required: false)
stylesheet = meson.current_source_dir() + '/testplan.css'
@@ -52,8 +53,23 @@ if sphinx.found()
output : 'index.html'
)
endif
+
+ if rst2pdf.found()
+ sphinx_out_pdf = meson.current_build_dir() + '/pdf'
+
+ custom_target('xe_tests.pdf',
+ build_by_default : true,
+ command : [ 'sphinx-build', '-c', meson.current_source_dir(),
+ '-b', 'pdf',
+ '-D', 'version=' + meson.project_version(),
+ meson.current_build_dir(), sphinx_out_pdf],
+ input : index_rst,
+ output : 'xe_tests.pdf'
+ )
+ endif
endif
build_info += 'Build ReST test documentation: @0@'.format(igt_doc_script.found())
build_info += 'Build simple html testplan documentation: @0@'.format(rst2html.found())
build_info += 'Build indexed html testplan documentation: @0@'.format(sphinx.found())
+build_info += 'Build pdf testplan documentation: @0@'.format(sphinx.found() and rst2pdf.found())
--
2.39.2
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [igt-dev] [PATCH i-g-t v4 3/8] meson.build: place gtk-doc dependencies check at the right place
2023-03-22 6:49 [igt-dev] [PATCH i-g-t v4 0/8] Build Xe test documentation Mauro Carvalho Chehab
2023-03-22 6:49 ` [igt-dev] [PATCH i-g-t v4 1/8] meson: build " Mauro Carvalho Chehab
2023-03-22 6:49 ` [igt-dev] [PATCH i-g-t v4 2/8] testplan: build also a PDF file with the testplan Mauro Carvalho Chehab
@ 2023-03-22 6:49 ` Mauro Carvalho Chehab
2023-03-22 6:49 ` [igt-dev] [PATCH i-g-t v4 4/8] meson: get rid of a future-deprecated warning Mauro Carvalho Chehab
` (7 subsequent siblings)
10 siblings, 0 replies; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-03-22 6:49 UTC (permalink / raw)
To: igt-dev
From: Mauro Carvalho Chehab <mchehab@kernel.org>
The requirement for having gtk-doc is specific to
docs/reference/igt-gpu-tools.
So, move the code to be there. This lets build testplan docs
without needing gtk-doc (nor having the IGT executables).
It should be noticed that testplan indirectly depends on
build_tests, for one reason only: the tests subdir is only
included if build_tests is true. Without it, the xe_test_config
variable will be undefined, as it is declared inside a tests
subdir.
So, we need to add an extra test for the testplan subdir,
to ensure that the variable is declared.
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
docs/meson.build | 5 ++++-
docs/reference/meson.build | 12 +++++++++++-
meson.build | 11 +++--------
3 files changed, 18 insertions(+), 10 deletions(-)
diff --git a/docs/meson.build b/docs/meson.build
index 01edf64f04a8..9bfec8fee80b 100644
--- a/docs/meson.build
+++ b/docs/meson.build
@@ -1,2 +1,5 @@
subdir('reference')
-subdir('testplan')
+
+if xe_test_config != ''
+ subdir('testplan')
+endif
diff --git a/docs/reference/meson.build b/docs/reference/meson.build
index 85a8aa47f920..d0f38cd33892 100644
--- a/docs/reference/meson.build
+++ b/docs/reference/meson.build
@@ -1 +1,11 @@
-subdir('igt-gpu-tools')
+if build_docs.enabled()
+ gtk_doc = dependency('gtk-doc', required : true)
+
+ if build_tests and gtk_doc.found()
+ subdir('igt-gpu-tools')
+ else
+ error('Documentation requires building tests')
+ endif
+endif
+
+build_info += 'Build reference documentation: @0@'.format(build_docs.enabled())
diff --git a/meson.build b/meson.build
index cbb7ead7d9cd..b896283e3244 100644
--- a/meson.build
+++ b/meson.build
@@ -320,6 +320,8 @@ endif
subdir('lib')
if build_tests
subdir('tests')
+else
+ xe_test_config = ''
endif
build_info += 'Build tests: @0@'.format(build_tests)
@@ -332,14 +334,7 @@ endif
subdir('overlay')
subdir('man')
subdir('scripts')
-
-gtk_doc = dependency('gtk-doc', required : build_docs)
-if build_tests and gtk_doc.found()
- subdir('docs')
-elif build_docs.enabled()
- error('Documentation requires building tests')
-endif
-build_info += 'Build documentation: @0@'.format(build_tests and gtk_doc.found())
+subdir('docs')
message('Build options')
message('=============')
--
2.39.2
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [igt-dev] [PATCH i-g-t v4 4/8] meson: get rid of a future-deprecated warning
2023-03-22 6:49 [igt-dev] [PATCH i-g-t v4 0/8] Build Xe test documentation Mauro Carvalho Chehab
` (2 preceding siblings ...)
2023-03-22 6:49 ` [igt-dev] [PATCH i-g-t v4 3/8] meson.build: place gtk-doc dependencies check at the right place Mauro Carvalho Chehab
@ 2023-03-22 6:49 ` Mauro Carvalho Chehab
2023-03-22 6:50 ` [igt-dev] [PATCH i-g-t v4 5/8] meson: get rid of tests/xe/meson.build Mauro Carvalho Chehab
` (6 subsequent siblings)
10 siblings, 0 replies; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-03-22 6:49 UTC (permalink / raw)
To: igt-dev
From: Mauro Carvalho Chehab <mchehab@kernel.org>
A warning is generated with newer meson versions:
NOTICE: Future-deprecated features used:
* 0.56.0: {'meson.source_root'}
While there is a new macro to get it, that would rise the
dependency chain to meson 0.56. So, instead, just store it
on a variable.
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
lib/meson.build | 2 +-
meson.build | 3 +++
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/lib/meson.build b/lib/meson.build
index 768ce90b54df..ad9e2abef4c3 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -178,7 +178,7 @@ endif
if get_option('srcdir') != ''
srcdir = join_paths(get_option('srcdir'), 'tests')
else
- srcdir = join_paths(meson.source_root(), 'tests')
+ srcdir = join_paths(source_root, 'tests')
endif
if get_option('version_hash') != ''
diff --git a/meson.build b/meson.build
index b896283e3244..12d5113a9042 100644
--- a/meson.build
+++ b/meson.build
@@ -13,6 +13,9 @@ if get_option('b_ndebug') != 'false'
error('Building without -Db_ndebug=false is not supported')
endif
+# meson.source_root is marked as a future-deprecated feature
+source_root = meson.current_source_dir()
+
cc = meson.get_compiler('c')
# Also make sure that the user doesn't have -DNDEBUG defined in their config
--
2.39.2
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [igt-dev] [PATCH i-g-t v4 5/8] meson: get rid of tests/xe/meson.build
2023-03-22 6:49 [igt-dev] [PATCH i-g-t v4 0/8] Build Xe test documentation Mauro Carvalho Chehab
` (3 preceding siblings ...)
2023-03-22 6:49 ` [igt-dev] [PATCH i-g-t v4 4/8] meson: get rid of a future-deprecated warning Mauro Carvalho Chehab
@ 2023-03-22 6:50 ` Mauro Carvalho Chehab
2023-03-22 6:50 ` [igt-dev] [PATCH i-g-t v4 6/8] testplan/meson.build: cleanup dependency chain Mauro Carvalho Chehab
` (5 subsequent siblings)
10 siblings, 0 replies; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-03-22 6:50 UTC (permalink / raw)
To: igt-dev
From: Mauro Carvalho Chehab <mchehab@kernel.org>
Currently, this holds just a variable used by testplan. Drop it,
cleaning up the building system.
This change allows building the testplan documentation without
needing to build tests.
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
docs/meson.build | 5 +----
docs/testplan/meson.build | 6 ++++++
tests/meson.build | 1 -
tests/xe/meson.build | 1 -
4 files changed, 7 insertions(+), 6 deletions(-)
delete mode 100644 tests/xe/meson.build
diff --git a/docs/meson.build b/docs/meson.build
index 9bfec8fee80b..01edf64f04a8 100644
--- a/docs/meson.build
+++ b/docs/meson.build
@@ -1,5 +1,2 @@
subdir('reference')
-
-if xe_test_config != ''
- subdir('testplan')
-endif
+subdir('testplan')
diff --git a/docs/testplan/meson.build b/docs/testplan/meson.build
index 50063aa2e84f..d34a8212df76 100644
--- a/docs/testplan/meson.build
+++ b/docs/testplan/meson.build
@@ -9,6 +9,12 @@ rst2pdf = find_program('rst2pdf', required: false)
stylesheet = meson.current_source_dir() + '/testplan.css'
+xe_test_config = source_root + '/tests/xe/xe_test_config.json'
+
+if not build_tests
+ test_executables = []
+endif
+
test_dict = { 'xe_tests': {
'input': xe_test_config, 'extra_args': []
}
diff --git a/tests/meson.build b/tests/meson.build
index 632e36e059d8..e1cccf6298a6 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -502,7 +502,6 @@ test_executables += executable('sw_sync', 'sw_sync.c',
test_list += 'sw_sync'
subdir('amdgpu')
-subdir('xe')
subdir('v3d')
diff --git a/tests/xe/meson.build b/tests/xe/meson.build
deleted file mode 100644
index bb344f95d59d..000000000000
--- a/tests/xe/meson.build
+++ /dev/null
@@ -1 +0,0 @@
-xe_test_config = meson.current_source_dir() + '/xe_test_config.json'
--
2.39.2
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [igt-dev] [PATCH i-g-t v4 6/8] testplan/meson.build: cleanup dependency chain
2023-03-22 6:49 [igt-dev] [PATCH i-g-t v4 0/8] Build Xe test documentation Mauro Carvalho Chehab
` (4 preceding siblings ...)
2023-03-22 6:50 ` [igt-dev] [PATCH i-g-t v4 5/8] meson: get rid of tests/xe/meson.build Mauro Carvalho Chehab
@ 2023-03-22 6:50 ` Mauro Carvalho Chehab
2023-03-22 6:50 ` [igt-dev] [PATCH i-g-t v4 7/8] testplan/meson.build: use join_paths() Mauro Carvalho Chehab
` (4 subsequent siblings)
10 siblings, 0 replies; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-03-22 6:50 UTC (permalink / raw)
To: igt-dev
From: Mauro Carvalho Chehab <mchehab@kernel.org>
Simplify the checks inside testplan/meson.build and ensure that
it will only build if option build_testplan is selected, by moving
such check to docs/meson.build.
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
docs/meson.build | 5 ++++-
docs/testplan/meson.build | 42 +++++++++++++++++----------------------
meson.build | 3 +++
scripts/meson.build | 4 ++--
4 files changed, 27 insertions(+), 27 deletions(-)
diff --git a/docs/meson.build b/docs/meson.build
index 01edf64f04a8..d56260564cec 100644
--- a/docs/meson.build
+++ b/docs/meson.build
@@ -1,2 +1,5 @@
subdir('reference')
-subdir('testplan')
+
+if igt_doc_script.found()
+ subdir('testplan')
+endif
diff --git a/docs/testplan/meson.build b/docs/testplan/meson.build
index d34a8212df76..9e7ae7a04753 100644
--- a/docs/testplan/meson.build
+++ b/docs/testplan/meson.build
@@ -1,10 +1,7 @@
testplan_title = 'IGT test plans'
-build_testplan = get_option('testplan')
-build_sphinx = get_option('sphinx')
-
-rst2html = find_program('rst2html-3', 'rst2html', required : build_testplan)
sphinx = find_program('sphinx-build', required: build_sphinx)
+rst2html = find_program('rst2html-3', 'rst2html', required : false)
rst2pdf = find_program('rst2pdf', required: false)
stylesheet = meson.current_source_dir() + '/testplan.css'
@@ -20,26 +17,24 @@ test_dict = { 'xe_tests': {
}
}
-if igt_doc_script.found()
- foreach testplan, fields: test_dict
- rst = custom_target(testplan + '.rst',
- build_by_default : true,
- command : [ igt_doc_script, '--config', '@INPUT@', '--rest', '@OUTPUT@' ] + fields['extra_args'],
- depends : test_executables,
- input : fields['input'],
- output : testplan + '.rst'
- )
+foreach testplan, fields: test_dict
+ rst = custom_target(testplan + '.rst',
+ build_by_default : true,
+ command : [ igt_doc_script, '--config', '@INPUT@', '--rest', '@OUTPUT@' ] + fields['extra_args'],
+ depends : test_executables,
+ input : fields['input'],
+ output : testplan + '.rst'
+ )
- if rst2html.found()
- custom_target(testplan + '.html',
- build_by_default : true,
- command : [ rst2html, '--stylesheet=' + stylesheet, '--field-name-limit=0', '@INPUT@', '@OUTPUT@' ],
- input : rst,
- output : testplan + '.html'
- )
- endif
- endforeach
-endif
+ if rst2html.found()
+ custom_target(testplan + '.html',
+ build_by_default : true,
+ command : [ rst2html, '--stylesheet=' + stylesheet, '--field-name-limit=0', '@INPUT@', '@OUTPUT@' ],
+ input : rst,
+ output : testplan + '.html'
+ )
+ endif
+endforeach
if sphinx.found()
if gen_rst_index.found()
@@ -75,7 +70,6 @@ if sphinx.found()
endif
endif
-build_info += 'Build ReST test documentation: @0@'.format(igt_doc_script.found())
build_info += 'Build simple html testplan documentation: @0@'.format(rst2html.found())
build_info += 'Build indexed html testplan documentation: @0@'.format(sphinx.found())
build_info += 'Build pdf testplan documentation: @0@'.format(sphinx.found() and rst2pdf.found())
diff --git a/meson.build b/meson.build
index 12d5113a9042..7360634fe199 100644
--- a/meson.build
+++ b/meson.build
@@ -328,6 +328,9 @@ else
endif
build_info += 'Build tests: @0@'.format(build_tests)
+build_testplan = get_option('testplan')
+build_sphinx = get_option('sphinx')
+
subdir('benchmarks')
subdir('tools')
subdir('runner')
diff --git a/scripts/meson.build b/scripts/meson.build
index ce12aa02e946..98783222b6fc 100644
--- a/scripts/meson.build
+++ b/scripts/meson.build
@@ -12,5 +12,5 @@ if build_tests
endforeach
endif
-igt_doc_script = find_program('igt_doc.py')
-gen_rst_index = find_program('gen_rst_index')
+igt_doc_script = find_program('igt_doc.py', required : build_testplan)
+gen_rst_index = find_program('gen_rst_index', required : build_sphinx)
--
2.39.2
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [igt-dev] [PATCH i-g-t v4 7/8] testplan/meson.build: use join_paths()
2023-03-22 6:49 [igt-dev] [PATCH i-g-t v4 0/8] Build Xe test documentation Mauro Carvalho Chehab
` (5 preceding siblings ...)
2023-03-22 6:50 ` [igt-dev] [PATCH i-g-t v4 6/8] testplan/meson.build: cleanup dependency chain Mauro Carvalho Chehab
@ 2023-03-22 6:50 ` Mauro Carvalho Chehab
2023-03-22 6:50 ` [igt-dev] [PATCH i-g-t v4 8/8] testplan/meson.build: re-indent file Mauro Carvalho Chehab
` (3 subsequent siblings)
10 siblings, 0 replies; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-03-22 6:50 UTC (permalink / raw)
To: igt-dev
From: Mauro Carvalho Chehab <mchehab@kernel.org>
Use the more portable join_paths() macro.
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
docs/testplan/meson.build | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/docs/testplan/meson.build b/docs/testplan/meson.build
index 9e7ae7a04753..10ea4be9a3f5 100644
--- a/docs/testplan/meson.build
+++ b/docs/testplan/meson.build
@@ -4,9 +4,9 @@ sphinx = find_program('sphinx-build', required: build_sphinx)
rst2html = find_program('rst2html-3', 'rst2html', required : false)
rst2pdf = find_program('rst2pdf', required: false)
-stylesheet = meson.current_source_dir() + '/testplan.css'
+stylesheet = join_paths(meson.current_source_dir(), 'testplan.css')
-xe_test_config = source_root + '/tests/xe/xe_test_config.json'
+xe_test_config = join_paths(source_root, 'tests', 'xe', 'xe_test_config.json')
if not build_tests
test_executables = []
--
2.39.2
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [igt-dev] [PATCH i-g-t v4 8/8] testplan/meson.build: re-indent file
2023-03-22 6:49 [igt-dev] [PATCH i-g-t v4 0/8] Build Xe test documentation Mauro Carvalho Chehab
` (6 preceding siblings ...)
2023-03-22 6:50 ` [igt-dev] [PATCH i-g-t v4 7/8] testplan/meson.build: use join_paths() Mauro Carvalho Chehab
@ 2023-03-22 6:50 ` Mauro Carvalho Chehab
2023-03-22 6:57 ` [igt-dev] ✗ GitLab.Pipeline: warning for Build Xe test documentation (rev3) Patchwork
` (2 subsequent siblings)
10 siblings, 0 replies; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-03-22 6:50 UTC (permalink / raw)
To: igt-dev
From: Mauro Carvalho Chehab <mchehab@kernel.org>
As other meson.build files are using tabs to align, replace
spaces with tabs here too.
Just cosmetic changes.
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
docs/testplan/meson.build | 94 +++++++++++++++++++--------------------
1 file changed, 47 insertions(+), 47 deletions(-)
diff --git a/docs/testplan/meson.build b/docs/testplan/meson.build
index 10ea4be9a3f5..fee568868167 100644
--- a/docs/testplan/meson.build
+++ b/docs/testplan/meson.build
@@ -9,65 +9,65 @@ stylesheet = join_paths(meson.current_source_dir(), 'testplan.css')
xe_test_config = join_paths(source_root, 'tests', 'xe', 'xe_test_config.json')
if not build_tests
- test_executables = []
+ test_executables = []
endif
-test_dict = { 'xe_tests': {
- 'input': xe_test_config, 'extra_args': []
- }
- }
+test_dict = { 'xe_tests':
+ { 'input': xe_test_config, 'extra_args': [] }
+ }
foreach testplan, fields: test_dict
- rst = custom_target(testplan + '.rst',
- build_by_default : true,
- command : [ igt_doc_script, '--config', '@INPUT@', '--rest', '@OUTPUT@' ] + fields['extra_args'],
- depends : test_executables,
- input : fields['input'],
- output : testplan + '.rst'
- )
+ rst = custom_target(testplan + '.rst',
+ build_by_default : true,
+ command : [ igt_doc_script, '--config', '@INPUT@', '--rest', '@OUTPUT@' ] + fields['extra_args'],
+ depends : test_executables,
+ input : fields['input'],
+ output : testplan + '.rst'
+ )
- if rst2html.found()
- custom_target(testplan + '.html',
- build_by_default : true,
- command : [ rst2html, '--stylesheet=' + stylesheet, '--field-name-limit=0', '@INPUT@', '@OUTPUT@' ],
- input : rst,
- output : testplan + '.html'
- )
- endif
+ if rst2html.found()
+ custom_target(testplan + '.html',
+ build_by_default : true,
+ command : [ rst2html, '--stylesheet=' + stylesheet, '--field-name-limit=0', '@INPUT@', '@OUTPUT@' ],
+ input : rst,
+ output : testplan + '.html'
+ )
+ endif
endforeach
if sphinx.found()
- if gen_rst_index.found()
- sphinx_out_dir = meson.current_build_dir()+ '/indexed_html'
+ if gen_rst_index.found()
+ sphinx_out_dir = meson.current_build_dir()+ '/indexed_html'
- index_rst = custom_target('index.rst',
- build_by_default : true,
- command : [ gen_rst_index, testplan_title, test_dict.keys(), meson.current_build_dir()],
- input : rst,
- output : 'index.rst'
- )
+ index_rst = custom_target('index.rst',
+ build_by_default : true,
+ command : [ gen_rst_index, testplan_title, test_dict.keys(), meson.current_build_dir()],
+ input : rst,
+ output : 'index.rst'
+ )
- custom_target('index.html',
- build_by_default : true,
- command : [ 'sphinx-build', '-c', meson.current_source_dir(), meson.current_build_dir(), sphinx_out_dir],
- input : index_rst,
- output : 'index.html'
- )
- endif
+ custom_target('index.html',
+ build_by_default : true,
+ command : [ 'sphinx-build', '-c', meson.current_source_dir(),
+ meson.current_build_dir(), sphinx_out_dir],
+ input : index_rst,
+ output : 'index.html'
+ )
+ endif
- if rst2pdf.found()
- sphinx_out_pdf = meson.current_build_dir() + '/pdf'
+ if rst2pdf.found()
+ sphinx_out_pdf = meson.current_build_dir() + '/pdf'
- custom_target('xe_tests.pdf',
- build_by_default : true,
- command : [ 'sphinx-build', '-c', meson.current_source_dir(),
- '-b', 'pdf',
- '-D', 'version=' + meson.project_version(),
- meson.current_build_dir(), sphinx_out_pdf],
- input : index_rst,
- output : 'xe_tests.pdf'
- )
- endif
+ custom_target('xe_tests.pdf',
+ build_by_default : true,
+ command : [ 'sphinx-build', '-c', meson.current_source_dir(),
+ '-b', 'pdf',
+ '-D', 'version=' + meson.project_version(),
+ meson.current_build_dir(), sphinx_out_pdf],
+ input : index_rst,
+ output : 'xe_tests.pdf'
+ )
+ endif
endif
build_info += 'Build simple html testplan documentation: @0@'.format(rst2html.found())
--
2.39.2
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [igt-dev] ✗ GitLab.Pipeline: warning for Build Xe test documentation (rev3)
2023-03-22 6:49 [igt-dev] [PATCH i-g-t v4 0/8] Build Xe test documentation Mauro Carvalho Chehab
` (7 preceding siblings ...)
2023-03-22 6:50 ` [igt-dev] [PATCH i-g-t v4 8/8] testplan/meson.build: re-indent file Mauro Carvalho Chehab
@ 2023-03-22 6:57 ` Patchwork
2023-03-22 7:26 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
2023-03-22 10:31 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
10 siblings, 0 replies; 17+ messages in thread
From: Patchwork @ 2023-03-22 6:57 UTC (permalink / raw)
To: Mauro Carvalho Chehab; +Cc: igt-dev
== Series Details ==
Series: Build Xe test documentation (rev3)
URL : https://patchwork.freedesktop.org/series/115373/
State : warning
== Summary ==
Pipeline status: FAILED.
see https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/pipelines/835439 for the overview.
build:tests-fedora has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/38527580):
Installing /builds/gfx-ci/igt-ci-tags/tests/intel-ci/README to /builds/gfx-ci/igt-ci-tags/installdir/opt/igt/share/igt-gpu-tools
Installing /builds/gfx-ci/igt-ci-tags/tests/intel-ci/blacklist.txt to /builds/gfx-ci/igt-ci-tags/installdir/opt/igt/share/igt-gpu-tools
Installing /builds/gfx-ci/igt-ci-tags/tests/intel-ci/blacklist-pre-merge.txt to /builds/gfx-ci/igt-ci-tags/installdir/opt/igt/share/igt-gpu-tools
Installing /builds/gfx-ci/igt-ci-tags/tests/intel-ci/xe-fast-feedback.testlist to /builds/gfx-ci/igt-ci-tags/installdir/opt/igt/share/igt-gpu-tools
Installing /builds/gfx-ci/igt-ci-tags/tools/intel_gpu_abrt to /builds/gfx-ci/igt-ci-tags/installdir/opt/igt/bin
Installing /builds/gfx-ci/igt-ci-tags/build/assembler/intel-gen4asm.pc to /builds/gfx-ci/igt-ci-tags/installdir/opt/igt/lib64/pkgconfig
Installing /builds/gfx-ci/igt-ci-tags/scripts/code_cov_capture to /builds/gfx-ci/igt-ci-tags/installdir/opt/igt/bin
Installing /builds/gfx-ci/igt-ci-tags/scripts/code_cov_gather_on_build to /builds/gfx-ci/igt-ci-tags/installdir/opt/igt/bin
Installing /builds/gfx-ci/igt-ci-tags/scripts/code_cov_gather_on_test to /builds/gfx-ci/igt-ci-tags/installdir/opt/igt/bin
Installing /builds/gfx-ci/igt-ci-tags/scripts/code_cov_gen_report to /builds/gfx-ci/igt-ci-tags/installdir/opt/igt/bin
Installing /builds/gfx-ci/igt-ci-tags/scripts/code_cov_parse_info to /builds/gfx-ci/igt-ci-tags/installdir/opt/igt/bin
$ ninja -C build -j${FDO_CI_CONCURRENT:-4} igt-gpu-tools-doc
ninja: Entering directory `build'
ninja: error: unknown target 'igt-gpu-tools-doc'
section_end:1679468075:step_script
section_start:1679468075:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1679468076:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-fedora-oldest-meson has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/38527582):
[1332/1342] Compiling C object 'lib/lib@@i915_perf@sha/meson-generated_.._i915_perf_registers_acmgt3.c.o'.
[1333/1342] Linking target lib/libi915_perf.so.1.5.
[1334/1342] Generating symbol file 'lib/lib@@i915_perf@sha/libi915_perf.so.1.5.symbols'.
[1335/1342] Linking target tools/i915-perf/i915-perf-configs.
[1336/1342] Linking target tools/i915-perf/i915-perf-recorder.
[1337/1342] Linking target tools/i915-perf/i915-perf-reader.
[1338/1342] Linking target tests/core_hotunplug.
[1339/1342] Linking target tests/gem_barrier_race.
[1340/1342] Linking target tests/perf.
[1341/1342] Generating xe_tests.rst with a custom command.
[1342/1342] Generating xe_tests.html with a custom command.
$ ninja -C build -j${FDO_CI_CONCURRENT:-4} igt-gpu-tools-doc
ninja: Entering directory `build'
ninja: error: unknown target 'igt-gpu-tools-doc'
section_end:1679468072:step_script
section_start:1679468072:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1679468073:cleanup_file_variables
ERROR: Job failed: exit code 1
== Logs ==
For more details see: https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/pipelines/835439
^ permalink raw reply [flat|nested] 17+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for Build Xe test documentation (rev3)
2023-03-22 6:49 [igt-dev] [PATCH i-g-t v4 0/8] Build Xe test documentation Mauro Carvalho Chehab
` (8 preceding siblings ...)
2023-03-22 6:57 ` [igt-dev] ✗ GitLab.Pipeline: warning for Build Xe test documentation (rev3) Patchwork
@ 2023-03-22 7:26 ` Patchwork
2023-03-22 10:31 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
10 siblings, 0 replies; 17+ messages in thread
From: Patchwork @ 2023-03-22 7:26 UTC (permalink / raw)
To: Mauro Carvalho Chehab; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 3141 bytes --]
== Series Details ==
Series: Build Xe test documentation (rev3)
URL : https://patchwork.freedesktop.org/series/115373/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_12893 -> IGTPW_8657
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/index.html
Participating hosts (37 -> 35)
------------------------------
Missing (2): bat-atsm-1 fi-snb-2520m
Known issues
------------
Here are the changes found in IGTPW_8657 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_exec_suspend@basic-s3@smem:
- bat-rpls-2: NOTRUN -> [ABORT][1] ([i915#7978])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/bat-rpls-2/igt@gem_exec_suspend@basic-s3@smem.html
* igt@i915_selftest@live@slpc:
- bat-rpls-2: NOTRUN -> [DMESG-FAIL][2] ([i915#6997] / [i915#7913])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/bat-rpls-2/igt@i915_selftest@live@slpc.html
- bat-rpls-1: NOTRUN -> [DMESG-FAIL][3] ([i915#6997])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/bat-rpls-1/igt@i915_selftest@live@slpc.html
#### Possible fixes ####
* igt@i915_selftest@live@gt_pm:
- bat-rpls-2: [DMESG-FAIL][4] ([i915#4258]) -> [PASS][5]
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/bat-rpls-2/igt@i915_selftest@live@gt_pm.html
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/bat-rpls-2/igt@i915_selftest@live@gt_pm.html
* igt@i915_selftest@live@mman:
- bat-rpls-1: [TIMEOUT][6] ([i915#6794]) -> [PASS][7]
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/bat-rpls-1/igt@i915_selftest@live@mman.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/bat-rpls-1/igt@i915_selftest@live@mman.html
* igt@i915_selftest@live@reset:
- bat-rpls-2: [ABORT][8] ([i915#4983] / [i915#7913]) -> [PASS][9]
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/bat-rpls-2/igt@i915_selftest@live@reset.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/bat-rpls-2/igt@i915_selftest@live@reset.html
[i915#4258]: https://gitlab.freedesktop.org/drm/intel/issues/4258
[i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
[i915#6794]: https://gitlab.freedesktop.org/drm/intel/issues/6794
[i915#6997]: https://gitlab.freedesktop.org/drm/intel/issues/6997
[i915#7913]: https://gitlab.freedesktop.org/drm/intel/issues/7913
[i915#7978]: https://gitlab.freedesktop.org/drm/intel/issues/7978
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_7210 -> IGTPW_8657
CI-20190529: 20190529
CI_DRM_12893: f8980398783b2abaa6479829786e9ffb9c4b7490 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_8657: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/index.html
IGT_7210: 5f7116708590b55864456acd993ecdb02374a06f @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/index.html
[-- Attachment #2: Type: text/html, Size: 4008 bytes --]
^ permalink raw reply [flat|nested] 17+ messages in thread
* [igt-dev] [PATCH i-g-t v4 1/8] meson: build Xe test documentation
2023-03-22 8:28 [igt-dev] [PATCH i-g-t v4 0/8] Build Xe test documentation Mauro Carvalho Chehab
@ 2023-03-22 8:28 ` Mauro Carvalho Chehab
2023-03-24 13:31 ` Kamil Konieczny
0 siblings, 1 reply; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-03-22 8:28 UTC (permalink / raw)
To: igt-dev
From: Mauro Carvalho Chehab <mchehab@kernel.org>
Add the remaining changes at meson for it to build Xe documentation.
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
docs/meson.build | 1 +
docs/testplan/conf.py | 42 +++++++++++++++++++++++++++++++++++++
docs/testplan/testplan.css | 7 +++++++
meson_options.txt | 8 +++++++
scripts/gen_rst_index | 43 ++++++++++++++++++++++++++++++++++++++
scripts/meson.build | 3 +++
6 files changed, 104 insertions(+)
create mode 100644 docs/testplan/conf.py
create mode 100644 docs/testplan/testplan.css
create mode 100755 scripts/gen_rst_index
diff --git a/docs/meson.build b/docs/meson.build
index ead14c4015d9..01edf64f04a8 100644
--- a/docs/meson.build
+++ b/docs/meson.build
@@ -1 +1,2 @@
subdir('reference')
+subdir('testplan')
diff --git a/docs/testplan/conf.py b/docs/testplan/conf.py
new file mode 100644
index 000000000000..cfb866cc7a15
--- /dev/null
+++ b/docs/testplan/conf.py
@@ -0,0 +1,42 @@
+# -*- coding: utf-8 -*-
+# SPDX-License-Identifier: (GPL-2.0 OR MIT)
+
+import sys
+import os
+from shutil import which
+
+extensions = []
+
+if which('rst2pdf'):
+ extensions.append('rst2pdf.pdfbuilder')
+
+source_suffix = '.rst'
+master_doc = 'index'
+
+project = 'IGT Test Tools'
+copyright = 'Intel'
+author = 'IGT developers'
+language = 'en'
+
+exclude_patterns = []
+todo_include_todos = False
+
+html_theme = "nature"
+
+html_css_files = []
+html_static_path = ['.']
+html_copy_source = False
+
+html_use_smartypants = False
+html_sidebars = { '**': ['searchbox.html', 'localtoc.html']}
+htmlhelp_basename = 'IGT'
+
+html_theme_options = {
+ "body_max_width": "1520px",
+ "sidebarwidth": "400px",
+}
+
+# rst2pdf
+pdf_documents = [
+ ('index', u'xe_tests', u'IGT Xe Tests', u'IGT authors'),
+]
diff --git a/docs/testplan/testplan.css b/docs/testplan/testplan.css
new file mode 100644
index 000000000000..8aa7b7105c19
--- /dev/null
+++ b/docs/testplan/testplan.css
@@ -0,0 +1,7 @@
+@import url(html4css1.css);
+
+.literal {
+ background: lightgrey;
+ color: darkblue;
+ font-size: 14px;
+}
diff --git a/meson_options.txt b/meson_options.txt
index d978813b4feb..d4e373d6cfc4 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -20,6 +20,14 @@ option('man',
type : 'feature',
description : 'Build man pages')
+option('testplan',
+ type : 'feature',
+ description : 'Build testplan documentation pages in ReST and html')
+
+option('sphinx',
+ type : 'feature',
+ description : 'Build testplan documentation using Sphinx')
+
option('docs',
type : 'feature',
description : 'Build documentation')
diff --git a/scripts/gen_rst_index b/scripts/gen_rst_index
new file mode 100755
index 000000000000..34955a35a443
--- /dev/null
+++ b/scripts/gen_rst_index
@@ -0,0 +1,43 @@
+#!/bin/bash -e
+# SPDX-License-Identifier: (GPL-2.0 OR MIT)
+
+## Copyright (C) 2023 Intel Corporation ##
+## Author: Mauro Carvalho Chehab <mchehab@kernel.org> ##
+## ##
+## Small script to produce a ReST index file ##
+
+if [ $# -lt 3 ]; then
+ echo 'Usage: $0: <title> <files> <dest_dir>' >&2
+ exit 1
+fi
+
+title=$1
+shift
+
+args=( "$@" )
+
+dest_dir=${args[${#args[@]}-1]}
+unset args[${#args[@]}-1]
+
+if [ ! -d $dest_dir ]; then
+ echo "Error: $dest_dir directory doesn't exist" >&2
+ exit 1
+fi
+
+dest_file="$dest_dir/index.rst"
+
+echo $title > "$dest_file"
+len=${#title}
+for i in $(seq 1 $len); do
+ echo -n "=" >> "$dest_file"
+done
+echo >> "$dest_file"
+echo >> "$dest_file"
+
+echo ".. toctree::" >> "$dest_file"
+echo " :maxdepth: 1" >> "$dest_file"
+echo >> "$dest_file"
+
+for i in "${!args[@]}"; do
+ echo " ${args[$i]}" >> "$dest_file"
+done
diff --git a/scripts/meson.build b/scripts/meson.build
index 342972e66078..ce12aa02e946 100644
--- a/scripts/meson.build
+++ b/scripts/meson.build
@@ -11,3 +11,6 @@ if build_tests
install_data(prog, install_dir : bindir, install_mode : 'r-xr-xr-x')
endforeach
endif
+
+igt_doc_script = find_program('igt_doc.py')
+gen_rst_index = find_program('gen_rst_index')
--
2.39.2
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for Build Xe test documentation (rev3)
2023-03-22 6:49 [igt-dev] [PATCH i-g-t v4 0/8] Build Xe test documentation Mauro Carvalho Chehab
` (9 preceding siblings ...)
2023-03-22 7:26 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
@ 2023-03-22 10:31 ` Patchwork
10 siblings, 0 replies; 17+ messages in thread
From: Patchwork @ 2023-03-22 10:31 UTC (permalink / raw)
To: Mauro Carvalho Chehab; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 27844 bytes --]
== Series Details ==
Series: Build Xe test documentation (rev3)
URL : https://patchwork.freedesktop.org/series/115373/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_12893_full -> IGTPW_8657_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/index.html
Participating hosts (7 -> 8)
------------------------------
Additional (1): shard-rkl0
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in IGTPW_8657_full:
### IGT changes ###
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* igt@i915_pm_rps@min-max-config-loaded:
- {shard-dg1}: NOTRUN -> [FAIL][1] +1 similar issue
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-dg1-14/igt@i915_pm_rps@min-max-config-loaded.html
* igt@kms_cursor_legacy@forked-bo@pipe-b:
- {shard-rkl}: [PASS][2] -> [INCOMPLETE][3]
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-1/igt@kms_cursor_legacy@forked-bo@pipe-b.html
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-6/igt@kms_cursor_legacy@forked-bo@pipe-b.html
Known issues
------------
Here are the changes found in IGTPW_8657_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_exec_fair@basic-pace@vcs0:
- shard-glk: [PASS][4] -> [FAIL][5] ([i915#2842])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-glk8/igt@gem_exec_fair@basic-pace@vcs0.html
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-glk2/igt@gem_exec_fair@basic-pace@vcs0.html
* igt@gem_lmem_swapping@verify:
- shard-glk: NOTRUN -> [SKIP][6] ([fdo#109271] / [i915#4613])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-glk7/igt@gem_lmem_swapping@verify.html
* igt@gen9_exec_parse@allowed-all:
- shard-apl: [PASS][7] -> [ABORT][8] ([i915#5566])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-apl6/igt@gen9_exec_parse@allowed-all.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-apl7/igt@gen9_exec_parse@allowed-all.html
* igt@gen9_exec_parse@allowed-single:
- shard-glk: [PASS][9] -> [ABORT][10] ([i915#5566])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-glk7/igt@gen9_exec_parse@allowed-single.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-glk4/igt@gen9_exec_parse@allowed-single.html
* igt@i915_pm_rps@reset:
- shard-snb: [PASS][11] -> [INCOMPLETE][12] ([i915#7790])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-snb5/igt@i915_pm_rps@reset.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-snb5/igt@i915_pm_rps@reset.html
* igt@kms_async_flips@alternate-sync-async-flip@pipe-c-hdmi-a-1:
- shard-glk: [PASS][13] -> [FAIL][14] ([i915#2521])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-glk8/igt@kms_async_flips@alternate-sync-async-flip@pipe-c-hdmi-a-1.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-glk2/igt@kms_async_flips@alternate-sync-async-flip@pipe-c-hdmi-a-1.html
* igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc:
- shard-glk: NOTRUN -> [SKIP][15] ([fdo#109271] / [i915#3886]) +3 similar issues
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-glk2/igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc.html
* igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-c-hdmi-a-1:
- shard-glk: NOTRUN -> [SKIP][16] ([fdo#109271]) +29 similar issues
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-glk7/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-c-hdmi-a-1.html
* igt@kms_psr2_sf@overlay-plane-update-continuous-sf:
- shard-glk: NOTRUN -> [SKIP][17] ([fdo#109271] / [i915#658])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-glk6/igt@kms_psr2_sf@overlay-plane-update-continuous-sf.html
* igt@perf@oa-exponents:
- shard-glk: [PASS][18] -> [ABORT][19] ([i915#5213])
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-glk4/igt@perf@oa-exponents.html
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-glk8/igt@perf@oa-exponents.html
#### Possible fixes ####
* igt@drm_fdinfo@idle@rcs0:
- {shard-rkl}: [FAIL][20] ([i915#7742]) -> [PASS][21] +1 similar issue
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-1/igt@drm_fdinfo@idle@rcs0.html
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-3/igt@drm_fdinfo@idle@rcs0.html
* igt@gem_ctx_persistence@legacy-engines-hang@blt:
- {shard-rkl}: [SKIP][22] ([i915#6252]) -> [PASS][23]
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-5/igt@gem_ctx_persistence@legacy-engines-hang@blt.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-4/igt@gem_ctx_persistence@legacy-engines-hang@blt.html
* igt@gem_eio@kms:
- {shard-dg1}: [FAIL][24] ([i915#5784]) -> [PASS][25]
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-dg1-16/igt@gem_eio@kms.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-dg1-17/igt@gem_eio@kms.html
* igt@gem_eio@suspend:
- {shard-rkl}: [FAIL][26] ([i915#5115] / [i915#7052]) -> [PASS][27]
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-4/igt@gem_eio@suspend.html
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-6/igt@gem_eio@suspend.html
* igt@gem_exec_fair@basic-deadline:
- {shard-rkl}: [FAIL][28] ([i915#2846]) -> [PASS][29]
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-1/igt@gem_exec_fair@basic-deadline.html
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-3/igt@gem_exec_fair@basic-deadline.html
* igt@gem_exec_fair@basic-pace-share@rcs0:
- shard-glk: [FAIL][30] ([i915#2842]) -> [PASS][31] +1 similar issue
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-glk9/igt@gem_exec_fair@basic-pace-share@rcs0.html
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-glk2/igt@gem_exec_fair@basic-pace-share@rcs0.html
* igt@gem_exec_flush@basic-batch-kernel-default-cmd:
- {shard-rkl}: [SKIP][32] ([fdo#109313]) -> [PASS][33]
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-1/igt@gem_exec_flush@basic-batch-kernel-default-cmd.html
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-5/igt@gem_exec_flush@basic-batch-kernel-default-cmd.html
* igt@gem_readwrite@beyond-eob:
- {shard-rkl}: [SKIP][34] ([i915#3282]) -> [PASS][35] +3 similar issues
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-1/igt@gem_readwrite@beyond-eob.html
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-5/igt@gem_readwrite@beyond-eob.html
* igt@gem_set_tiling_vs_blt@tiled-to-untiled:
- {shard-rkl}: [SKIP][36] ([i915#3281]) -> [PASS][37] +9 similar issues
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-3/igt@gem_set_tiling_vs_blt@tiled-to-untiled.html
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-5/igt@gem_set_tiling_vs_blt@tiled-to-untiled.html
* igt@gen9_exec_parse@valid-registers:
- {shard-rkl}: [SKIP][38] ([i915#2527]) -> [PASS][39] +2 similar issues
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-4/igt@gen9_exec_parse@valid-registers.html
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-5/igt@gen9_exec_parse@valid-registers.html
* igt@i915_hangman@gt-engine-error@bcs0:
- {shard-rkl}: [SKIP][40] ([i915#6258]) -> [PASS][41]
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-5/igt@i915_hangman@gt-engine-error@bcs0.html
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-1/igt@i915_hangman@gt-engine-error@bcs0.html
* igt@i915_pipe_stress@stress-xrgb8888-untiled:
- {shard-rkl}: [SKIP][42] ([i915#4098]) -> [PASS][43]
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-2/igt@i915_pipe_stress@stress-xrgb8888-untiled.html
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-6/igt@i915_pipe_stress@stress-xrgb8888-untiled.html
* igt@i915_pm_dc@dc5-psr:
- {shard-rkl}: [SKIP][44] ([i915#658]) -> [PASS][45]
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-4/igt@i915_pm_dc@dc5-psr.html
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-6/igt@i915_pm_dc@dc5-psr.html
* igt@i915_pm_dc@dc9-dpms:
- {shard-tglu}: [SKIP][46] ([i915#4281]) -> [PASS][47]
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-tglu-5/igt@i915_pm_dc@dc9-dpms.html
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-tglu-10/igt@i915_pm_dc@dc9-dpms.html
* igt@i915_pm_rc6_residency@rc6-idle@bcs0:
- {shard-dg1}: [FAIL][48] ([i915#3591]) -> [PASS][49]
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-dg1-15/igt@i915_pm_rc6_residency@rc6-idle@bcs0.html
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-dg1-15/igt@i915_pm_rc6_residency@rc6-idle@bcs0.html
* igt@i915_pm_rpm@dpms-mode-unset-lpsp:
- {shard-tglu}: [SKIP][50] ([i915#1397]) -> [PASS][51] +1 similar issue
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-tglu-9/igt@i915_pm_rpm@dpms-mode-unset-lpsp.html
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-tglu-8/igt@i915_pm_rpm@dpms-mode-unset-lpsp.html
* igt@i915_pm_rpm@dpms-mode-unset-non-lpsp:
- {shard-dg1}: [SKIP][52] ([i915#1397]) -> [PASS][53]
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-dg1-14/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-dg1-17/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html
* igt@i915_pm_rpm@drm-resources-equal:
- {shard-tglu}: [SKIP][54] ([i915#3547]) -> [PASS][55]
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-tglu-9/igt@i915_pm_rpm@drm-resources-equal.html
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-tglu-5/igt@i915_pm_rpm@drm-resources-equal.html
* igt@i915_pm_rpm@modeset-lpsp-stress:
- {shard-rkl}: [SKIP][56] ([i915#1397]) -> [PASS][57]
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-4/igt@i915_pm_rpm@modeset-lpsp-stress.html
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-6/igt@i915_pm_rpm@modeset-lpsp-stress.html
* igt@i915_pm_rpm@system-suspend-modeset:
- {shard-rkl}: [SKIP][58] ([fdo#109308]) -> [PASS][59]
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-3/igt@i915_pm_rpm@system-suspend-modeset.html
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-6/igt@i915_pm_rpm@system-suspend-modeset.html
* igt@i915_selftest@live@migrate:
- shard-glk: [DMESG-FAIL][60] -> [PASS][61]
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-glk1/igt@i915_selftest@live@migrate.html
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-glk1/igt@i915_selftest@live@migrate.html
* igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions:
- shard-glk: [FAIL][62] ([i915#2346]) -> [PASS][63]
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-glk5/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-glk1/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
* igt@kms_cursor_legacy@forked-bo@pipe-b:
- {shard-tglu}: [INCOMPLETE][64] -> [PASS][65]
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-tglu-1/igt@kms_cursor_legacy@forked-bo@pipe-b.html
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-tglu-2/igt@kms_cursor_legacy@forked-bo@pipe-b.html
* igt@kms_fbcon_fbt@fbc-suspend:
- shard-apl: [FAIL][66] ([i915#4767]) -> [PASS][67]
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-apl1/igt@kms_fbcon_fbt@fbc-suspend.html
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-apl4/igt@kms_fbcon_fbt@fbc-suspend.html
* igt@kms_frontbuffer_tracking@fbc-1p-indfb-fliptrack-mmap-gtt:
- {shard-tglu}: [SKIP][68] ([i915#1849]) -> [PASS][69] +5 similar issues
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-tglu-9/igt@kms_frontbuffer_tracking@fbc-1p-indfb-fliptrack-mmap-gtt.html
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-tglu-2/igt@kms_frontbuffer_tracking@fbc-1p-indfb-fliptrack-mmap-gtt.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-indfb-plflip-blt:
- {shard-rkl}: [SKIP][70] ([i915#1849] / [i915#4098]) -> [PASS][71] +13 similar issues
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-3/igt@kms_frontbuffer_tracking@psr-1p-primscrn-indfb-plflip-blt.html
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-6/igt@kms_frontbuffer_tracking@psr-1p-primscrn-indfb-plflip-blt.html
* {igt@kms_plane@invalid-pixel-format-settings}:
- {shard-rkl}: [SKIP][72] ([i915#8152]) -> [PASS][73]
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-4/igt@kms_plane@invalid-pixel-format-settings.html
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-6/igt@kms_plane@invalid-pixel-format-settings.html
* igt@kms_psr@cursor_mmap_gtt:
- {shard-rkl}: [SKIP][74] ([i915#1072]) -> [PASS][75] +3 similar issues
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-4/igt@kms_psr@cursor_mmap_gtt.html
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-6/igt@kms_psr@cursor_mmap_gtt.html
* igt@kms_pwrite_crc:
- {shard-tglu}: [SKIP][76] ([fdo#109274] / [i915#1845]) -> [PASS][77]
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-tglu-9/igt@kms_pwrite_crc.html
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-tglu-5/igt@kms_pwrite_crc.html
* igt@kms_universal_plane@universal-plane-pipe-a-functional:
- {shard-tglu}: [SKIP][78] ([i915#1845]) -> [PASS][79] +8 similar issues
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-tglu-9/igt@kms_universal_plane@universal-plane-pipe-a-functional.html
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-tglu-7/igt@kms_universal_plane@universal-plane-pipe-a-functional.html
* igt@kms_vblank@pipe-a-ts-continuation-idle:
- {shard-rkl}: [SKIP][80] ([i915#1845] / [i915#4098]) -> [PASS][81] +27 similar issues
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-1/igt@kms_vblank@pipe-a-ts-continuation-idle.html
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-6/igt@kms_vblank@pipe-a-ts-continuation-idle.html
* igt@kms_vblank@pipe-d-wait-forked-busy:
- {shard-tglu}: [SKIP][82] ([i915#1845] / [i915#7651]) -> [PASS][83] +23 similar issues
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-tglu-9/igt@kms_vblank@pipe-d-wait-forked-busy.html
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-tglu-5/igt@kms_vblank@pipe-d-wait-forked-busy.html
* igt@perf@stress-open-close:
- shard-glk: [ABORT][84] ([i915#5213]) -> [PASS][85]
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-glk6/igt@perf@stress-open-close.html
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-glk3/igt@perf@stress-open-close.html
* igt@perf_pmu@idle@rcs0:
- {shard-rkl}: [FAIL][86] ([i915#4349]) -> [PASS][87] +1 similar issue
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-4/igt@perf_pmu@idle@rcs0.html
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-3/igt@perf_pmu@idle@rcs0.html
* igt@prime_vgem@basic-fence-flip:
- {shard-tglu}: [SKIP][88] ([fdo#109295]) -> [PASS][89]
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-tglu-9/igt@prime_vgem@basic-fence-flip.html
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-tglu-2/igt@prime_vgem@basic-fence-flip.html
* igt@prime_vgem@basic-read:
- {shard-rkl}: [SKIP][90] ([fdo#109295] / [i915#3291] / [i915#3708]) -> [PASS][91]
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12893/shard-rkl-6/igt@prime_vgem@basic-read.html
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/shard-rkl-5/igt@prime_vgem@basic-read.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
[fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
[fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
[fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
[fdo#109302]: https://bugs.freedesktop.org/show_bug.cgi?id=109302
[fdo#109303]: https://bugs.freedesktop.org/show_bug.cgi?id=109303
[fdo#109308]: https://bugs.freedesktop.org/show_bug.cgi?id=109308
[fdo#109313]: https://bugs.freedesktop.org/show_bug.cgi?id=109313
[fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
[fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
[fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
[fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
[fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
[fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
[fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
[fdo#111656]: https://bugs.freedesktop.org/show_bug.cgi?id=111656
[fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
[fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
[i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
[i915#1769]: https://gitlab.freedesktop.org/drm/intel/issues/1769
[i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
[i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
[i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
[i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
[i915#1902]: https://gitlab.freedesktop.org/drm/intel/issues/1902
[i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
[i915#2433]: https://gitlab.freedesktop.org/drm/intel/issues/2433
[i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
[i915#2521]: https://gitlab.freedesktop.org/drm/intel/issues/2521
[i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
[i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575
[i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
[i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
[i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658
[i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
[i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681
[i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
[i915#2846]: https://gitlab.freedesktop.org/drm/intel/issues/2846
[i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
[i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
[i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
[i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
[i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
[i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
[i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
[i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
[i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
[i915#3361]: https://gitlab.freedesktop.org/drm/intel/issues/3361
[i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
[i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
[i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546
[i915#3547]: https://gitlab.freedesktop.org/drm/intel/issues/3547
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#3591]: https://gitlab.freedesktop.org/drm/intel/issues/3591
[i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
[i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
[i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
[i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
[i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
[i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
[i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
[i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
[i915#3938]: https://gitlab.freedesktop.org/drm/intel/issues/3938
[i915#3952]: https://gitlab.freedesktop.org/drm/intel/issues/3952
[i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
[i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
[i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078
[i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
[i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
[i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
[i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213
[i915#426]: https://gitlab.freedesktop.org/drm/intel/issues/426
[i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
[i915#4281]: https://gitlab.freedesktop.org/drm/intel/issues/4281
[i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
[i915#4387]: https://gitlab.freedesktop.org/drm/intel/issues/4387
[i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
[i915#4565]: https://gitlab.freedesktop.org/drm/intel/issues/4565
[i915#4579]: https://gitlab.freedesktop.org/drm/intel/issues/4579
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[i915#4767]: https://gitlab.freedesktop.org/drm/intel/issues/4767
[i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771
[i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
[i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
[i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
[i915#4859]: https://gitlab.freedesktop.org/drm/intel/issues/4859
[i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
[i915#4879]: https://gitlab.freedesktop.org/drm/intel/issues/4879
[i915#4880]: https://gitlab.freedesktop.org/drm/intel/issues/4880
[i915#4885]: https://gitlab.freedesktop.org/drm/intel/issues/4885
[i915#5115]: https://gitlab.freedesktop.org/drm/intel/issues/5115
[i915#5122]: https://gitlab.freedesktop.org/drm/intel/issues/5122
[i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
[i915#5213]: https://gitlab.freedesktop.org/drm/intel/issues/5213
[i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
[i915#5251]: https://gitlab.freedesktop.org/drm/intel/issues/5251
[i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
[i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
[i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
[i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
[i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354
[i915#5439]: https://gitlab.freedesktop.org/drm/intel/issues/5439
[i915#5563]: https://gitlab.freedesktop.org/drm/intel/issues/5563
[i915#5566]: https://gitlab.freedesktop.org/drm/intel/issues/5566
[i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
[i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
[i915#6227]: https://gitlab.freedesktop.org/drm/intel/issues/6227
[i915#6248]: https://gitlab.freedesktop.org/drm/intel/issues/6248
[i915#6252]: https://gitlab.freedesktop.org/drm/intel/issues/6252
[i915#6258]: https://gitlab.freedesktop.org/drm/intel/issues/6258
[i915#6301]: https://gitlab.freedesktop.org/drm/intel/issues/6301
[i915#6433]: https://gitlab.freedesktop.org/drm/intel/issues/6433
[i915#6497]: https://gitlab.freedesktop.org/drm/intel/issues/6497
[i915#6524]: https://gitlab.freedesktop.org/drm/intel/issues/6524
[i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
[i915#6590]: https://gitlab.freedesktop.org/drm/intel/issues/6590
[i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768
[i915#6944]: https://gitlab.freedesktop.org/drm/intel/issues/6944
[i915#6953]: https://gitlab.freedesktop.org/drm/intel/issues/6953
[i915#7052]: https://gitlab.freedesktop.org/drm/intel/issues/7052
[i915#7116]: https://gitlab.freedesktop.org/drm/intel/issues/7116
[i915#7118]: https://gitlab.freedesktop.org/drm/intel/issues/7118
[i915#7128]: https://gitlab.freedesktop.org/drm/intel/issues/7128
[i915#7294]: https://gitlab.freedesktop.org/drm/intel/issues/7294
[i915#7561]: https://gitlab.freedesktop.org/drm/intel/issues/7561
[i915#7651]: https://gitlab.freedesktop.org/drm/intel/issues/7651
[i915#7697]: https://gitlab.freedesktop.org/drm/intel/issues/7697
[i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711
[i915#7742]: https://gitlab.freedesktop.org/drm/intel/issues/7742
[i915#7790]: https://gitlab.freedesktop.org/drm/intel/issues/7790
[i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
[i915#7949]: https://gitlab.freedesktop.org/drm/intel/issues/7949
[i915#7957]: https://gitlab.freedesktop.org/drm/intel/issues/7957
[i915#8152]: https://gitlab.freedesktop.org/drm/intel/issues/8152
[i915#8154]: https://gitlab.freedesktop.org/drm/intel/issues/8154
[i915#8211]: https://gitlab.freedesktop.org/drm/intel/issues/8211
[i915#8228]: https://gitlab.freedesktop.org/drm/intel/issues/8228
[i915#8247]: https://gitlab.freedesktop.org/drm/intel/issues/8247
[i915#8282]: https://gitlab.freedesktop.org/drm/intel/issues/8282
[i915#8292]: https://gitlab.freedesktop.org/drm/intel/issues/8292
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_7210 -> IGTPW_8657
* Piglit: piglit_4509 -> None
CI-20190529: 20190529
CI_DRM_12893: f8980398783b2abaa6479829786e9ffb9c4b7490 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_8657: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/index.html
IGT_7210: 5f7116708590b55864456acd993ecdb02374a06f @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8657/index.html
[-- Attachment #2: Type: text/html, Size: 23394 bytes --]
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v4 1/8] meson: build Xe test documentation
2023-03-22 8:28 ` [igt-dev] [PATCH i-g-t v4 1/8] meson: build " Mauro Carvalho Chehab
@ 2023-03-24 13:31 ` Kamil Konieczny
2023-03-28 17:56 ` Juha-Pekka Heikkila
0 siblings, 1 reply; 17+ messages in thread
From: Kamil Konieczny @ 2023-03-24 13:31 UTC (permalink / raw)
To: igt-dev
On 2023-03-22 at 09:28:19 +0100, Mauro Carvalho Chehab wrote:
> From: Mauro Carvalho Chehab <mchehab@kernel.org>
>
> Add the remaining changes at meson for it to build Xe documentation.
>
> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
> ---
> docs/meson.build | 1 +
> docs/testplan/conf.py | 42 +++++++++++++++++++++++++++++++++++++
> docs/testplan/testplan.css | 7 +++++++
> meson_options.txt | 8 +++++++
> scripts/gen_rst_index | 43 ++++++++++++++++++++++++++++++++++++++
> scripts/meson.build | 3 +++
> 6 files changed, 104 insertions(+)
> create mode 100644 docs/testplan/conf.py
> create mode 100644 docs/testplan/testplan.css
> create mode 100755 scripts/gen_rst_index
>
> diff --git a/docs/meson.build b/docs/meson.build
> index ead14c4015d9..01edf64f04a8 100644
> --- a/docs/meson.build
> +++ b/docs/meson.build
> @@ -1 +1,2 @@
> subdir('reference')
> +subdir('testplan')
> diff --git a/docs/testplan/conf.py b/docs/testplan/conf.py
> new file mode 100644
> index 000000000000..cfb866cc7a15
> --- /dev/null
> +++ b/docs/testplan/conf.py
> @@ -0,0 +1,42 @@
> +# -*- coding: utf-8 -*-
> +# SPDX-License-Identifier: (GPL-2.0 OR MIT)
> +
> +import sys
> +import os
> +from shutil import which
> +
> +extensions = []
> +
> +if which('rst2pdf'):
> + extensions.append('rst2pdf.pdfbuilder')
> +
> +source_suffix = '.rst'
> +master_doc = 'index'
> +
> +project = 'IGT Test Tools'
> +copyright = 'Intel'
> +author = 'IGT developers'
> +language = 'en'
> +
> +exclude_patterns = []
> +todo_include_todos = False
> +
> +html_theme = "nature"
> +
> +html_css_files = []
> +html_static_path = ['.']
> +html_copy_source = False
> +
> +html_use_smartypants = False
> +html_sidebars = { '**': ['searchbox.html', 'localtoc.html']}
> +htmlhelp_basename = 'IGT'
> +
> +html_theme_options = {
> + "body_max_width": "1520px",
> + "sidebarwidth": "400px",
> +}
> +
> +# rst2pdf
> +pdf_documents = [
> + ('index', u'xe_tests', u'IGT Xe Tests', u'IGT authors'),
> +]
> diff --git a/docs/testplan/testplan.css b/docs/testplan/testplan.css
> new file mode 100644
> index 000000000000..8aa7b7105c19
> --- /dev/null
> +++ b/docs/testplan/testplan.css
> @@ -0,0 +1,7 @@
> +@import url(html4css1.css);
> +
> +.literal {
> + background: lightgrey;
> + color: darkblue;
> + font-size: 14px;
> +}
> diff --git a/meson_options.txt b/meson_options.txt
> index d978813b4feb..d4e373d6cfc4 100644
> --- a/meson_options.txt
> +++ b/meson_options.txt
> @@ -20,6 +20,14 @@ option('man',
> type : 'feature',
> description : 'Build man pages')
>
> +option('testplan',
> + type : 'feature',
> + description : 'Build testplan documentation pages in ReST and html')
> +
> +option('sphinx',
> + type : 'feature',
> + description : 'Build testplan documentation using Sphinx')
> +
> option('docs',
> type : 'feature',
> description : 'Build documentation')
> diff --git a/scripts/gen_rst_index b/scripts/gen_rst_index
> new file mode 100755
> index 000000000000..34955a35a443
> --- /dev/null
> +++ b/scripts/gen_rst_index
> @@ -0,0 +1,43 @@
> +#!/bin/bash -e
> +# SPDX-License-Identifier: (GPL-2.0 OR MIT)
> +
> +## Copyright (C) 2023 Intel Corporation ##
> +## Author: Mauro Carvalho Chehab <mchehab@kernel.org> ##
> +## ##
> +## Small script to produce a ReST index file ##
> +
> +if [ $# -lt 3 ]; then
> + echo 'Usage: $0: <title> <files> <dest_dir>' >&2
> + exit 1
> +fi
> +
> +title=$1
> +shift
> +
> +args=( "$@" )
> +
> +dest_dir=${args[${#args[@]}-1]}
> +unset args[${#args[@]}-1]
> +
> +if [ ! -d $dest_dir ]; then
> + echo "Error: $dest_dir directory doesn't exist" >&2
> + exit 1
> +fi
> +
> +dest_file="$dest_dir/index.rst"
> +
> +echo $title > "$dest_file"
> +len=${#title}
> +for i in $(seq 1 $len); do
> + echo -n "=" >> "$dest_file"
> +done
> +echo >> "$dest_file"
> +echo >> "$dest_file"
> +
> +echo ".. toctree::" >> "$dest_file"
> +echo " :maxdepth: 1" >> "$dest_file"
> +echo >> "$dest_file"
> +
> +for i in "${!args[@]}"; do
> + echo " ${args[$i]}" >> "$dest_file"
> +done
> diff --git a/scripts/meson.build b/scripts/meson.build
> index 342972e66078..ce12aa02e946 100644
> --- a/scripts/meson.build
> +++ b/scripts/meson.build
> @@ -11,3 +11,6 @@ if build_tests
> install_data(prog, install_dir : bindir, install_mode : 'r-xr-xr-x')
> endforeach
> endif
> +
> +igt_doc_script = find_program('igt_doc.py')
> +gen_rst_index = find_program('gen_rst_index')
> --
> 2.39.2
>
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v4 1/8] meson: build Xe test documentation
2023-03-24 13:31 ` Kamil Konieczny
@ 2023-03-28 17:56 ` Juha-Pekka Heikkila
2023-03-30 5:20 ` Mauro Carvalho Chehab
0 siblings, 1 reply; 17+ messages in thread
From: Juha-Pekka Heikkila @ 2023-03-28 17:56 UTC (permalink / raw)
To: Kamil Konieczny, igt-dev, Mauro Carvalho Chehab
On 24.3.2023 15.31, Kamil Konieczny wrote:
> On 2023-03-22 at 09:28:19 +0100, Mauro Carvalho Chehab wrote:
>> From: Mauro Carvalho Chehab <mchehab@kernel.org>
>>
>> Add the remaining changes at meson for it to build Xe documentation.
>>
>> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
>
> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
Because of this patch building igt started to fail for me like this:
---
Configuration error:
There is a programable error in your configuration file:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/sphinx/config.py", line 157,
in __init__
execfile_(filename, config)
File "/usr/lib/python2.7/dist-packages/sphinx/util/pycompat.py", line
150, in execfile_
exec_(code, _globals)
File "/usr/lib/python2.7/dist-packages/six.py", line 709, in exec_
exec("""exec _code_ in _globs_, _locs_""")
File "<string>", line 1, in <module>
File "conf.py", line 6, in <module>
from shutil import which
ImportError: cannot import name which
---
Cleaning out old build and rebuild also fail. This is on ubuntu 18.04
/Juha-Pekka
>
>> ---
>> docs/meson.build | 1 +
>> docs/testplan/conf.py | 42 +++++++++++++++++++++++++++++++++++++
>> docs/testplan/testplan.css | 7 +++++++
>> meson_options.txt | 8 +++++++
>> scripts/gen_rst_index | 43 ++++++++++++++++++++++++++++++++++++++
>> scripts/meson.build | 3 +++
>> 6 files changed, 104 insertions(+)
>> create mode 100644 docs/testplan/conf.py
>> create mode 100644 docs/testplan/testplan.css
>> create mode 100755 scripts/gen_rst_index
>>
>> diff --git a/docs/meson.build b/docs/meson.build
>> index ead14c4015d9..01edf64f04a8 100644
>> --- a/docs/meson.build
>> +++ b/docs/meson.build
>> @@ -1 +1,2 @@
>> subdir('reference')
>> +subdir('testplan')
>> diff --git a/docs/testplan/conf.py b/docs/testplan/conf.py
>> new file mode 100644
>> index 000000000000..cfb866cc7a15
>> --- /dev/null
>> +++ b/docs/testplan/conf.py
>> @@ -0,0 +1,42 @@
>> +# -*- coding: utf-8 -*-
>> +# SPDX-License-Identifier: (GPL-2.0 OR MIT)
>> +
>> +import sys
>> +import os
>> +from shutil import which
>> +
>> +extensions = []
>> +
>> +if which('rst2pdf'):
>> + extensions.append('rst2pdf.pdfbuilder')
>> +
>> +source_suffix = '.rst'
>> +master_doc = 'index'
>> +
>> +project = 'IGT Test Tools'
>> +copyright = 'Intel'
>> +author = 'IGT developers'
>> +language = 'en'
>> +
>> +exclude_patterns = []
>> +todo_include_todos = False
>> +
>> +html_theme = "nature"
>> +
>> +html_css_files = []
>> +html_static_path = ['.']
>> +html_copy_source = False
>> +
>> +html_use_smartypants = False
>> +html_sidebars = { '**': ['searchbox.html', 'localtoc.html']}
>> +htmlhelp_basename = 'IGT'
>> +
>> +html_theme_options = {
>> + "body_max_width": "1520px",
>> + "sidebarwidth": "400px",
>> +}
>> +
>> +# rst2pdf
>> +pdf_documents = [
>> + ('index', u'xe_tests', u'IGT Xe Tests', u'IGT authors'),
>> +]
>> diff --git a/docs/testplan/testplan.css b/docs/testplan/testplan.css
>> new file mode 100644
>> index 000000000000..8aa7b7105c19
>> --- /dev/null
>> +++ b/docs/testplan/testplan.css
>> @@ -0,0 +1,7 @@
>> +@import url(html4css1.css);
>> +
>> +.literal {
>> + background: lightgrey;
>> + color: darkblue;
>> + font-size: 14px;
>> +}
>> diff --git a/meson_options.txt b/meson_options.txt
>> index d978813b4feb..d4e373d6cfc4 100644
>> --- a/meson_options.txt
>> +++ b/meson_options.txt
>> @@ -20,6 +20,14 @@ option('man',
>> type : 'feature',
>> description : 'Build man pages')
>>
>> +option('testplan',
>> + type : 'feature',
>> + description : 'Build testplan documentation pages in ReST and html')
>> +
>> +option('sphinx',
>> + type : 'feature',
>> + description : 'Build testplan documentation using Sphinx')
>> +
>> option('docs',
>> type : 'feature',
>> description : 'Build documentation')
>> diff --git a/scripts/gen_rst_index b/scripts/gen_rst_index
>> new file mode 100755
>> index 000000000000..34955a35a443
>> --- /dev/null
>> +++ b/scripts/gen_rst_index
>> @@ -0,0 +1,43 @@
>> +#!/bin/bash -e
>> +# SPDX-License-Identifier: (GPL-2.0 OR MIT)
>> +
>> +## Copyright (C) 2023 Intel Corporation ##
>> +## Author: Mauro Carvalho Chehab <mchehab@kernel.org> ##
>> +## ##
>> +## Small script to produce a ReST index file ##
>> +
>> +if [ $# -lt 3 ]; then
>> + echo 'Usage: $0: <title> <files> <dest_dir>' >&2
>> + exit 1
>> +fi
>> +
>> +title=$1
>> +shift
>> +
>> +args=( "$@" )
>> +
>> +dest_dir=${args[${#args[@]}-1]}
>> +unset args[${#args[@]}-1]
>> +
>> +if [ ! -d $dest_dir ]; then
>> + echo "Error: $dest_dir directory doesn't exist" >&2
>> + exit 1
>> +fi
>> +
>> +dest_file="$dest_dir/index.rst"
>> +
>> +echo $title > "$dest_file"
>> +len=${#title}
>> +for i in $(seq 1 $len); do
>> + echo -n "=" >> "$dest_file"
>> +done
>> +echo >> "$dest_file"
>> +echo >> "$dest_file"
>> +
>> +echo ".. toctree::" >> "$dest_file"
>> +echo " :maxdepth: 1" >> "$dest_file"
>> +echo >> "$dest_file"
>> +
>> +for i in "${!args[@]}"; do
>> + echo " ${args[$i]}" >> "$dest_file"
>> +done
>> diff --git a/scripts/meson.build b/scripts/meson.build
>> index 342972e66078..ce12aa02e946 100644
>> --- a/scripts/meson.build
>> +++ b/scripts/meson.build
>> @@ -11,3 +11,6 @@ if build_tests
>> install_data(prog, install_dir : bindir, install_mode : 'r-xr-xr-x')
>> endforeach
>> endif
>> +
>> +igt_doc_script = find_program('igt_doc.py')
>> +gen_rst_index = find_program('gen_rst_index')
>> --
>> 2.39.2
>>
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v4 1/8] meson: build Xe test documentation
2023-03-28 17:56 ` Juha-Pekka Heikkila
@ 2023-03-30 5:20 ` Mauro Carvalho Chehab
2023-03-30 11:13 ` Juha-Pekka Heikkila
0 siblings, 1 reply; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-03-30 5:20 UTC (permalink / raw)
To: Juha-Pekka Heikkila; +Cc: igt-dev
On Tue, 28 Mar 2023 20:56:34 +0300
Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> wrote:
> On 24.3.2023 15.31, Kamil Konieczny wrote:
> > On 2023-03-22 at 09:28:19 +0100, Mauro Carvalho Chehab wrote:
> >> From: Mauro Carvalho Chehab <mchehab@kernel.org>
> >>
> >> Add the remaining changes at meson for it to build Xe documentation.
> >>
> >> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
> >
> > Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
>
> Because of this patch building igt started to fail for me like this:
>
> ---
> Configuration error:
> There is a programable error in your configuration file:
>
> Traceback (most recent call last):
> File "/usr/lib/python2.7/dist-packages/sphinx/config.py", line 157,
> in __init__
> execfile_(filename, config)
> File "/usr/lib/python2.7/dist-packages/sphinx/util/pycompat.py", line
> 150, in execfile_
> exec_(code, _globals)
> File "/usr/lib/python2.7/dist-packages/six.py", line 709, in exec_
> exec("""exec _code_ in _globs_, _locs_""")
> File "<string>", line 1, in <module>
> File "conf.py", line 6, in <module>
> from shutil import which
> ImportError: cannot import name which
> ---
>
> Cleaning out old build and rebuild also fail. This is on ubuntu 18.04
I added at IGT upstream two patches, one getting rid of shutil dependency
and the another one making the conf.py file compatible with Ubuntu 18.04:
https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/commit/c6585fd1c070c2ad299f6aaa6fa5438535c002b9
https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/commit/f91dc09b9e9f5794705259e6947e47ae788a0a5d
I tested only with python 3, but just ran vermin[1]. It seems it should
run with any Python version.
[1] https://pypi.org/project/vermin/
Please test.
Regards,
Mauro
>
> /Juha-Pekka
>
> >
> >> ---
> >> docs/meson.build | 1 +
> >> docs/testplan/conf.py | 42 +++++++++++++++++++++++++++++++++++++
> >> docs/testplan/testplan.css | 7 +++++++
> >> meson_options.txt | 8 +++++++
> >> scripts/gen_rst_index | 43 ++++++++++++++++++++++++++++++++++++++
> >> scripts/meson.build | 3 +++
> >> 6 files changed, 104 insertions(+)
> >> create mode 100644 docs/testplan/conf.py
> >> create mode 100644 docs/testplan/testplan.css
> >> create mode 100755 scripts/gen_rst_index
> >>
> >> diff --git a/docs/meson.build b/docs/meson.build
> >> index ead14c4015d9..01edf64f04a8 100644
> >> --- a/docs/meson.build
> >> +++ b/docs/meson.build
> >> @@ -1 +1,2 @@
> >> subdir('reference')
> >> +subdir('testplan')
> >> diff --git a/docs/testplan/conf.py b/docs/testplan/conf.py
> >> new file mode 100644
> >> index 000000000000..cfb866cc7a15
> >> --- /dev/null
> >> +++ b/docs/testplan/conf.py
> >> @@ -0,0 +1,42 @@
> >> +# -*- coding: utf-8 -*-
> >> +# SPDX-License-Identifier: (GPL-2.0 OR MIT)
> >> +
> >> +import sys
> >> +import os
> >> +from shutil import which
> >> +
> >> +extensions = []
> >> +
> >> +if which('rst2pdf'):
> >> + extensions.append('rst2pdf.pdfbuilder')
> >> +
> >> +source_suffix = '.rst'
> >> +master_doc = 'index'
> >> +
> >> +project = 'IGT Test Tools'
> >> +copyright = 'Intel'
> >> +author = 'IGT developers'
> >> +language = 'en'
> >> +
> >> +exclude_patterns = []
> >> +todo_include_todos = False
> >> +
> >> +html_theme = "nature"
> >> +
> >> +html_css_files = []
> >> +html_static_path = ['.']
> >> +html_copy_source = False
> >> +
> >> +html_use_smartypants = False
> >> +html_sidebars = { '**': ['searchbox.html', 'localtoc.html']}
> >> +htmlhelp_basename = 'IGT'
> >> +
> >> +html_theme_options = {
> >> + "body_max_width": "1520px",
> >> + "sidebarwidth": "400px",
> >> +}
> >> +
> >> +# rst2pdf
> >> +pdf_documents = [
> >> + ('index', u'xe_tests', u'IGT Xe Tests', u'IGT authors'),
> >> +]
> >> diff --git a/docs/testplan/testplan.css b/docs/testplan/testplan.css
> >> new file mode 100644
> >> index 000000000000..8aa7b7105c19
> >> --- /dev/null
> >> +++ b/docs/testplan/testplan.css
> >> @@ -0,0 +1,7 @@
> >> +@import url(html4css1.css);
> >> +
> >> +.literal {
> >> + background: lightgrey;
> >> + color: darkblue;
> >> + font-size: 14px;
> >> +}
> >> diff --git a/meson_options.txt b/meson_options.txt
> >> index d978813b4feb..d4e373d6cfc4 100644
> >> --- a/meson_options.txt
> >> +++ b/meson_options.txt
> >> @@ -20,6 +20,14 @@ option('man',
> >> type : 'feature',
> >> description : 'Build man pages')
> >>
> >> +option('testplan',
> >> + type : 'feature',
> >> + description : 'Build testplan documentation pages in ReST and html')
> >> +
> >> +option('sphinx',
> >> + type : 'feature',
> >> + description : 'Build testplan documentation using Sphinx')
> >> +
> >> option('docs',
> >> type : 'feature',
> >> description : 'Build documentation')
> >> diff --git a/scripts/gen_rst_index b/scripts/gen_rst_index
> >> new file mode 100755
> >> index 000000000000..34955a35a443
> >> --- /dev/null
> >> +++ b/scripts/gen_rst_index
> >> @@ -0,0 +1,43 @@
> >> +#!/bin/bash -e
> >> +# SPDX-License-Identifier: (GPL-2.0 OR MIT)
> >> +
> >> +## Copyright (C) 2023 Intel Corporation ##
> >> +## Author: Mauro Carvalho Chehab <mchehab@kernel.org> ##
> >> +## ##
> >> +## Small script to produce a ReST index file ##
> >> +
> >> +if [ $# -lt 3 ]; then
> >> + echo 'Usage: $0: <title> <files> <dest_dir>' >&2
> >> + exit 1
> >> +fi
> >> +
> >> +title=$1
> >> +shift
> >> +
> >> +args=( "$@" )
> >> +
> >> +dest_dir=${args[${#args[@]}-1]}
> >> +unset args[${#args[@]}-1]
> >> +
> >> +if [ ! -d $dest_dir ]; then
> >> + echo "Error: $dest_dir directory doesn't exist" >&2
> >> + exit 1
> >> +fi
> >> +
> >> +dest_file="$dest_dir/index.rst"
> >> +
> >> +echo $title > "$dest_file"
> >> +len=${#title}
> >> +for i in $(seq 1 $len); do
> >> + echo -n "=" >> "$dest_file"
> >> +done
> >> +echo >> "$dest_file"
> >> +echo >> "$dest_file"
> >> +
> >> +echo ".. toctree::" >> "$dest_file"
> >> +echo " :maxdepth: 1" >> "$dest_file"
> >> +echo >> "$dest_file"
> >> +
> >> +for i in "${!args[@]}"; do
> >> + echo " ${args[$i]}" >> "$dest_file"
> >> +done
> >> diff --git a/scripts/meson.build b/scripts/meson.build
> >> index 342972e66078..ce12aa02e946 100644
> >> --- a/scripts/meson.build
> >> +++ b/scripts/meson.build
> >> @@ -11,3 +11,6 @@ if build_tests
> >> install_data(prog, install_dir : bindir, install_mode : 'r-xr-xr-x')
> >> endforeach
> >> endif
> >> +
> >> +igt_doc_script = find_program('igt_doc.py')
> >> +gen_rst_index = find_program('gen_rst_index')
> >> --
> >> 2.39.2
> >>
>
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v4 1/8] meson: build Xe test documentation
2023-03-30 5:20 ` Mauro Carvalho Chehab
@ 2023-03-30 11:13 ` Juha-Pekka Heikkila
0 siblings, 0 replies; 17+ messages in thread
From: Juha-Pekka Heikkila @ 2023-03-30 11:13 UTC (permalink / raw)
To: Mauro Carvalho Chehab; +Cc: igt-dev
On 30.3.2023 8.20, Mauro Carvalho Chehab wrote:
> On Tue, 28 Mar 2023 20:56:34 +0300
> Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> wrote:
>
>> On 24.3.2023 15.31, Kamil Konieczny wrote:
>>> On 2023-03-22 at 09:28:19 +0100, Mauro Carvalho Chehab wrote:
>>>> From: Mauro Carvalho Chehab <mchehab@kernel.org>
>>>>
>>>> Add the remaining changes at meson for it to build Xe documentation.
>>>>
>>>> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
>>>
>>> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
>>
>> Because of this patch building igt started to fail for me like this:
>>
>> ---
>> Configuration error:
>> There is a programable error in your configuration file:
>>
>> Traceback (most recent call last):
>> File "/usr/lib/python2.7/dist-packages/sphinx/config.py", line 157,
>> in __init__
>> execfile_(filename, config)
>> File "/usr/lib/python2.7/dist-packages/sphinx/util/pycompat.py", line
>> 150, in execfile_
>> exec_(code, _globals)
>> File "/usr/lib/python2.7/dist-packages/six.py", line 709, in exec_
>> exec("""exec _code_ in _globs_, _locs_""")
>> File "<string>", line 1, in <module>
>> File "conf.py", line 6, in <module>
>> from shutil import which
>> ImportError: cannot import name which
>> ---
>>
>> Cleaning out old build and rebuild also fail. This is on ubuntu 18.04
>
> I added at IGT upstream two patches, one getting rid of shutil dependency
> and the another one making the conf.py file compatible with Ubuntu 18.04:
>
> https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/commit/c6585fd1c070c2ad299f6aaa6fa5438535c002b9
> https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/commit/f91dc09b9e9f5794705259e6947e47ae788a0a5d
>
> I tested only with python 3, but just ran vermin[1]. It seems it should
> run with any Python version.
>
> [1] https://pypi.org/project/vermin/
>
> Please test.
Works for me. Thx for fixing.
/Juha-Pekka
>>>
>>>> ---
>>>> docs/meson.build | 1 +
>>>> docs/testplan/conf.py | 42 +++++++++++++++++++++++++++++++++++++
>>>> docs/testplan/testplan.css | 7 +++++++
>>>> meson_options.txt | 8 +++++++
>>>> scripts/gen_rst_index | 43 ++++++++++++++++++++++++++++++++++++++
>>>> scripts/meson.build | 3 +++
>>>> 6 files changed, 104 insertions(+)
>>>> create mode 100644 docs/testplan/conf.py
>>>> create mode 100644 docs/testplan/testplan.css
>>>> create mode 100755 scripts/gen_rst_index
>>>>
>>>> diff --git a/docs/meson.build b/docs/meson.build
>>>> index ead14c4015d9..01edf64f04a8 100644
>>>> --- a/docs/meson.build
>>>> +++ b/docs/meson.build
>>>> @@ -1 +1,2 @@
>>>> subdir('reference')
>>>> +subdir('testplan')
>>>> diff --git a/docs/testplan/conf.py b/docs/testplan/conf.py
>>>> new file mode 100644
>>>> index 000000000000..cfb866cc7a15
>>>> --- /dev/null
>>>> +++ b/docs/testplan/conf.py
>>>> @@ -0,0 +1,42 @@
>>>> +# -*- coding: utf-8 -*-
>>>> +# SPDX-License-Identifier: (GPL-2.0 OR MIT)
>>>> +
>>>> +import sys
>>>> +import os
>>>> +from shutil import which
>>>> +
>>>> +extensions = []
>>>> +
>>>> +if which('rst2pdf'):
>>>> + extensions.append('rst2pdf.pdfbuilder')
>>>> +
>>>> +source_suffix = '.rst'
>>>> +master_doc = 'index'
>>>> +
>>>> +project = 'IGT Test Tools'
>>>> +copyright = 'Intel'
>>>> +author = 'IGT developers'
>>>> +language = 'en'
>>>> +
>>>> +exclude_patterns = []
>>>> +todo_include_todos = False
>>>> +
>>>> +html_theme = "nature"
>>>> +
>>>> +html_css_files = []
>>>> +html_static_path = ['.']
>>>> +html_copy_source = False
>>>> +
>>>> +html_use_smartypants = False
>>>> +html_sidebars = { '**': ['searchbox.html', 'localtoc.html']}
>>>> +htmlhelp_basename = 'IGT'
>>>> +
>>>> +html_theme_options = {
>>>> + "body_max_width": "1520px",
>>>> + "sidebarwidth": "400px",
>>>> +}
>>>> +
>>>> +# rst2pdf
>>>> +pdf_documents = [
>>>> + ('index', u'xe_tests', u'IGT Xe Tests', u'IGT authors'),
>>>> +]
>>>> diff --git a/docs/testplan/testplan.css b/docs/testplan/testplan.css
>>>> new file mode 100644
>>>> index 000000000000..8aa7b7105c19
>>>> --- /dev/null
>>>> +++ b/docs/testplan/testplan.css
>>>> @@ -0,0 +1,7 @@
>>>> +@import url(html4css1.css);
>>>> +
>>>> +.literal {
>>>> + background: lightgrey;
>>>> + color: darkblue;
>>>> + font-size: 14px;
>>>> +}
>>>> diff --git a/meson_options.txt b/meson_options.txt
>>>> index d978813b4feb..d4e373d6cfc4 100644
>>>> --- a/meson_options.txt
>>>> +++ b/meson_options.txt
>>>> @@ -20,6 +20,14 @@ option('man',
>>>> type : 'feature',
>>>> description : 'Build man pages')
>>>>
>>>> +option('testplan',
>>>> + type : 'feature',
>>>> + description : 'Build testplan documentation pages in ReST and html')
>>>> +
>>>> +option('sphinx',
>>>> + type : 'feature',
>>>> + description : 'Build testplan documentation using Sphinx')
>>>> +
>>>> option('docs',
>>>> type : 'feature',
>>>> description : 'Build documentation')
>>>> diff --git a/scripts/gen_rst_index b/scripts/gen_rst_index
>>>> new file mode 100755
>>>> index 000000000000..34955a35a443
>>>> --- /dev/null
>>>> +++ b/scripts/gen_rst_index
>>>> @@ -0,0 +1,43 @@
>>>> +#!/bin/bash -e
>>>> +# SPDX-License-Identifier: (GPL-2.0 OR MIT)
>>>> +
>>>> +## Copyright (C) 2023 Intel Corporation ##
>>>> +## Author: Mauro Carvalho Chehab <mchehab@kernel.org> ##
>>>> +## ##
>>>> +## Small script to produce a ReST index file ##
>>>> +
>>>> +if [ $# -lt 3 ]; then
>>>> + echo 'Usage: $0: <title> <files> <dest_dir>' >&2
>>>> + exit 1
>>>> +fi
>>>> +
>>>> +title=$1
>>>> +shift
>>>> +
>>>> +args=( "$@" )
>>>> +
>>>> +dest_dir=${args[${#args[@]}-1]}
>>>> +unset args[${#args[@]}-1]
>>>> +
>>>> +if [ ! -d $dest_dir ]; then
>>>> + echo "Error: $dest_dir directory doesn't exist" >&2
>>>> + exit 1
>>>> +fi
>>>> +
>>>> +dest_file="$dest_dir/index.rst"
>>>> +
>>>> +echo $title > "$dest_file"
>>>> +len=${#title}
>>>> +for i in $(seq 1 $len); do
>>>> + echo -n "=" >> "$dest_file"
>>>> +done
>>>> +echo >> "$dest_file"
>>>> +echo >> "$dest_file"
>>>> +
>>>> +echo ".. toctree::" >> "$dest_file"
>>>> +echo " :maxdepth: 1" >> "$dest_file"
>>>> +echo >> "$dest_file"
>>>> +
>>>> +for i in "${!args[@]}"; do
>>>> + echo " ${args[$i]}" >> "$dest_file"
>>>> +done
>>>> diff --git a/scripts/meson.build b/scripts/meson.build
>>>> index 342972e66078..ce12aa02e946 100644
>>>> --- a/scripts/meson.build
>>>> +++ b/scripts/meson.build
>>>> @@ -11,3 +11,6 @@ if build_tests
>>>> install_data(prog, install_dir : bindir, install_mode : 'r-xr-xr-x')
>>>> endforeach
>>>> endif
>>>> +
>>>> +igt_doc_script = find_program('igt_doc.py')
>>>> +gen_rst_index = find_program('gen_rst_index')
>>>> --
>>>> 2.39.2
>>>>
>>
^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2023-03-30 11:13 UTC | newest]
Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-03-22 6:49 [igt-dev] [PATCH i-g-t v4 0/8] Build Xe test documentation Mauro Carvalho Chehab
2023-03-22 6:49 ` [igt-dev] [PATCH i-g-t v4 1/8] meson: build " Mauro Carvalho Chehab
2023-03-22 6:49 ` [igt-dev] [PATCH i-g-t v4 2/8] testplan: build also a PDF file with the testplan Mauro Carvalho Chehab
2023-03-22 6:49 ` [igt-dev] [PATCH i-g-t v4 3/8] meson.build: place gtk-doc dependencies check at the right place Mauro Carvalho Chehab
2023-03-22 6:49 ` [igt-dev] [PATCH i-g-t v4 4/8] meson: get rid of a future-deprecated warning Mauro Carvalho Chehab
2023-03-22 6:50 ` [igt-dev] [PATCH i-g-t v4 5/8] meson: get rid of tests/xe/meson.build Mauro Carvalho Chehab
2023-03-22 6:50 ` [igt-dev] [PATCH i-g-t v4 6/8] testplan/meson.build: cleanup dependency chain Mauro Carvalho Chehab
2023-03-22 6:50 ` [igt-dev] [PATCH i-g-t v4 7/8] testplan/meson.build: use join_paths() Mauro Carvalho Chehab
2023-03-22 6:50 ` [igt-dev] [PATCH i-g-t v4 8/8] testplan/meson.build: re-indent file Mauro Carvalho Chehab
2023-03-22 6:57 ` [igt-dev] ✗ GitLab.Pipeline: warning for Build Xe test documentation (rev3) Patchwork
2023-03-22 7:26 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
2023-03-22 10:31 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
-- strict thread matches above, loose matches on Subject: below --
2023-03-22 8:28 [igt-dev] [PATCH i-g-t v4 0/8] Build Xe test documentation Mauro Carvalho Chehab
2023-03-22 8:28 ` [igt-dev] [PATCH i-g-t v4 1/8] meson: build " Mauro Carvalho Chehab
2023-03-24 13:31 ` Kamil Konieczny
2023-03-28 17:56 ` Juha-Pekka Heikkila
2023-03-30 5:20 ` Mauro Carvalho Chehab
2023-03-30 11:13 ` Juha-Pekka Heikkila
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox