* [PATCH v3 0/2] buildtools-docs-tarball: add new Sphinx extension svg2pdfconverter
@ 2025-12-03 11:32 Quentin Schulz
2025-12-03 11:32 ` [PATCH v3 1/2] python3-sphinxcontrib-svg2pdfconverter: add new recipe Quentin Schulz
2025-12-03 11:32 ` [PATCH v3 2/2] buildtools-docs-tarball: add python3-sphinxcontrib-svg2pdfconverter to the SDK Quentin Schulz
0 siblings, 2 replies; 6+ messages in thread
From: Quentin Schulz @ 2025-12-03 11:32 UTC (permalink / raw)
To: openembedded-core; +Cc: Antonin Godard, Quentin Schulz
This will soon be required to build the Yocto docs, so add a recipe for
the Sphinx extension and add it to the docs tarball.
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
Changes in v3:
- added Antonin as maintainer of the newly added recipe (thanks!),
- removed changes from patch 1 to
scripts/lib/recipetool/create_buildsys_python.py as those weren't
supposed to be sent in this series,
- Link to v2: https://patch.msgid.link/20251202-svg2pdf-v2-0-529856a2b6da@cherry.de
Changes in v2:
- fixed incorrect PYPI_PACKAGE that was set by `devtool add`,
- fixed default UPSTREAM_CHECK_PYPI_PACKAGE so latest version is found,
sphinxcontrib-svg2pdfconverter (the default) is used only until 1.2.2
(included),
- Link to v1: https://patch.msgid.link/20251202-svg2pdf-v1-0-bf4bd322e528@cherry.de
---
Quentin Schulz (2):
python3-sphinxcontrib-svg2pdfconverter: add new recipe
buildtools-docs-tarball: add python3-sphinxcontrib-svg2pdfconverter to the SDK
meta/conf/distro/include/maintainers.inc | 1 +
meta/recipes-core/meta/buildtools-docs-tarball.bb | 1 +
.../python3-sphinxcontrib-svg2pdfconverter_2.0.0.bb | 20 ++++++++++++++++++++
3 files changed, 22 insertions(+)
---
base-commit: ac7327583aef83fd400190506f3147623de38b68
change-id: 20251202-svg2pdf-e35074cd8cea
Best regards,
--
Quentin Schulz <quentin.schulz@cherry.de>
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v3 1/2] python3-sphinxcontrib-svg2pdfconverter: add new recipe
2025-12-03 11:32 [PATCH v3 0/2] buildtools-docs-tarball: add new Sphinx extension svg2pdfconverter Quentin Schulz
@ 2025-12-03 11:32 ` Quentin Schulz
2025-12-03 12:18 ` [OE-core] " Mathieu Dubois-Briand
2025-12-03 11:32 ` [PATCH v3 2/2] buildtools-docs-tarball: add python3-sphinxcontrib-svg2pdfconverter to the SDK Quentin Schulz
1 sibling, 1 reply; 6+ messages in thread
From: Quentin Schulz @ 2025-12-03 11:32 UTC (permalink / raw)
To: openembedded-core; +Cc: Antonin Godard, Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
This will be a dependency for building the Yocto docs soon, so let's add
a recipe for it.
This does SVG to PDF (or PNG) conversion for images used in Sphinx
projects.
It exposes three different Sphinx extensions, each using a different
tool for the conversion:
- cairosvg, a Python module with no available recipe,
- inkscape, only available in seemingly unmaintained 3rd party layer,
- rsvg-convert,
So we'll only support the last extension for now.
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
meta/conf/distro/include/maintainers.inc | 1 +
.../python3-sphinxcontrib-svg2pdfconverter_2.0.0.bb | 20 ++++++++++++++++++++
2 files changed, 21 insertions(+)
diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc
index 9f4e5e2df8..f819a21cce 100644
--- a/meta/conf/distro/include/maintainers.inc
+++ b/meta/conf/distro/include/maintainers.inc
@@ -733,6 +733,7 @@ RECIPE_MAINTAINER:pn-python3-sphinxcontrib-jquery = "Tim Orling <tim.orling@kons
RECIPE_MAINTAINER:pn-python3-sphinxcontrib-jsmath = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-sphinxcontrib-qthelp = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-sphinxcontrib-serializinghtml = "Tim Orling <tim.orling@konsulko.com>"
+RECIPE_MAINTAINER:pn-python3-sphinxcontrib-svg2pdfconverter = "Antonin Godard <antonin.godard@bootlin.com>"
RECIPE_MAINTAINER:pn-python3-subunit = "Trevor Gamblin <tgamblin@baylibre.com>"
RECIPE_MAINTAINER:pn-python3-testtools = "Trevor Gamblin <tgamblin@baylibre.com>"
RECIPE_MAINTAINER:pn-python3-trove-classifiers = "Trevor Gamblin <tgamblin@baylibre.com>"
diff --git a/meta/recipes-devtools/python/python3-sphinxcontrib-svg2pdfconverter_2.0.0.bb b/meta/recipes-devtools/python/python3-sphinxcontrib-svg2pdfconverter_2.0.0.bb
new file mode 100644
index 0000000000..1bf3e55ebd
--- /dev/null
+++ b/meta/recipes-devtools/python/python3-sphinxcontrib-svg2pdfconverter_2.0.0.bb
@@ -0,0 +1,20 @@
+SUMMARY = "Sphinx SVG to PDF or PNG converter extension"
+HOMEPAGE = "https://github.com/missinglinkelectronics/sphinxcontrib-svg2pdfconverter"
+LICENSE = "BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=b11cf936853a71258d4b57bb1849a3f9"
+
+SRC_URI[sha256sum] = "ab9c8f1080391e231812d20abf2657a69ee35574563b1014414f953964a95fa3"
+
+inherit pypi python_setuptools_build_meta
+
+PYPI_PACKAGE = "sphinxcontrib_svg2pdfconverter"
+UPSTREAM_CHECK_PYPI_PACKAGE = "${PYPI_PACKAGE}"
+
+RDEPENDS:${PN} = "python3-sphinx"
+# Only support sphinxcontrib.rsvgconverter for now.
+# sphinxcontrib.cairosvgconverter depends on cairosvg module, no recipe yet
+# sphinxcontrib.inkscapeconverter depends on inkscape, recipe in meta-office,
+# 3rd-party layer not updated in years
+RDEPENDS:${PN} += "librsvg"
+
+BBCLASSEXTEND = "native nativesdk"
--
2.52.0
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH v3 2/2] buildtools-docs-tarball: add python3-sphinxcontrib-svg2pdfconverter to the SDK
2025-12-03 11:32 [PATCH v3 0/2] buildtools-docs-tarball: add new Sphinx extension svg2pdfconverter Quentin Schulz
2025-12-03 11:32 ` [PATCH v3 1/2] python3-sphinxcontrib-svg2pdfconverter: add new recipe Quentin Schulz
@ 2025-12-03 11:32 ` Quentin Schulz
1 sibling, 0 replies; 6+ messages in thread
From: Quentin Schulz @ 2025-12-03 11:32 UTC (permalink / raw)
To: openembedded-core; +Cc: Antonin Godard, Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
This will soon be required for building the Yocto docs so let's add it
to the SDK toolchain.
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
meta/recipes-core/meta/buildtools-docs-tarball.bb | 1 +
1 file changed, 1 insertion(+)
diff --git a/meta/recipes-core/meta/buildtools-docs-tarball.bb b/meta/recipes-core/meta/buildtools-docs-tarball.bb
index 98d47f7b71..3fc28fad93 100644
--- a/meta/recipes-core/meta/buildtools-docs-tarball.bb
+++ b/meta/recipes-core/meta/buildtools-docs-tarball.bb
@@ -10,6 +10,7 @@ TOOLCHAIN_HOST_TASK += "\
nativesdk-python3-sphinx-argparse \
nativesdk-python3-sphinx-copybutton \
nativesdk-python3-sphinx-rtd-theme \
+ nativesdk-python3-sphinxcontrib-svg2pdfconverter \
nativesdk-python3-pyyaml \
nativesdk-rsvg \
"
--
2.52.0
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [OE-core] [PATCH v3 1/2] python3-sphinxcontrib-svg2pdfconverter: add new recipe
2025-12-03 11:32 ` [PATCH v3 1/2] python3-sphinxcontrib-svg2pdfconverter: add new recipe Quentin Schulz
@ 2025-12-03 12:18 ` Mathieu Dubois-Briand
2025-12-03 12:41 ` Quentin Schulz
0 siblings, 1 reply; 6+ messages in thread
From: Mathieu Dubois-Briand @ 2025-12-03 12:18 UTC (permalink / raw)
To: Quentin Schulz, openembedded-core; +Cc: Antonin Godard, Quentin Schulz
On Wed Dec 3, 2025 at 12:32 PM CET, Quentin Schulz wrote:
> From: Quentin Schulz <quentin.schulz@cherry.de>
>
> This will be a dependency for building the Yocto docs soon, so let's add
> a recipe for it.
>
> This does SVG to PDF (or PNG) conversion for images used in Sphinx
> projects.
>
> It exposes three different Sphinx extensions, each using a different
> tool for the conversion:
> - cairosvg, a Python module with no available recipe,
> - inkscape, only available in seemingly unmaintained 3rd party layer,
> - rsvg-convert,
>
> So we'll only support the last extension for now.
>
> Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
> ---
Hi Quentin,
Thanks for your patch.
> meta/conf/distro/include/maintainers.inc | 1 +
> .../python3-sphinxcontrib-svg2pdfconverter_2.0.0.bb | 20 ++++++++++++++++++++
> 2 files changed, 21 insertions(+)
>
> diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc
> index 9f4e5e2df8..f819a21cce 100644
> --- a/meta/conf/distro/include/maintainers.inc
> +++ b/meta/conf/distro/include/maintainers.inc
> @@ -733,6 +733,7 @@ RECIPE_MAINTAINER:pn-python3-sphinxcontrib-jquery = "Tim Orling <tim.orling@kons
> RECIPE_MAINTAINER:pn-python3-sphinxcontrib-jsmath = "Tim Orling <tim.orling@konsulko.com>"
> RECIPE_MAINTAINER:pn-python3-sphinxcontrib-qthelp = "Tim Orling <tim.orling@konsulko.com>"
> RECIPE_MAINTAINER:pn-python3-sphinxcontrib-serializinghtml = "Tim Orling <tim.orling@konsulko.com>"
> +RECIPE_MAINTAINER:pn-python3-sphinxcontrib-svg2pdfconverter = "Antonin Godard <antonin.godard@bootlin.com>"
It looks like this is not enough to make QA happy:
2025-12-03 10:53:56,449 - oe-selftest - INFO - FAIL: distrodata.Distrodata.test_maintainers (subunit.RemotedTestCase)
2025-12-03 10:53:56,449 - oe-selftest - INFO - ----------------------------------------------------------------------
2025-12-03 10:53:56,449 - oe-selftest - INFO - testtools.testresult.real._StringException: Traceback (most recent call last):
File "/srv/pokybuild/yocto-worker/oe-selftest-debian/build/layers/openembedded-core/meta/lib/oeqa/selftest/cases/distrodata.py", line 105, in test_maintainers
self.fail("""
File "/usr/lib/python3.10/unittest/case.py", line 675, in fail
raise self.failureException(msg)
AssertionError:
The following recipes do not have a maintainer assigned to them. Please add an entry to meta/conf/distro/include/maintainers.inc file.
python3-sphinxcontrib-svg2pdfconverter (/srv/pokybuild/yocto-worker/oe-selftest-debian/build/layers/openembedded-core/meta/recipes-devtools/python/python3-sphinxcontrib-svg2pdfconverter_2.0.0.bb)
https://autobuilder.yoctoproject.org/valkyrie/#/builders/35/builds/2786
https://autobuilder.yoctoproject.org/valkyrie/#/builders/48/builds/2681
Can you have a look at this?
Thanks,
Mathieu
--
Mathieu Dubois-Briand, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [OE-core] [PATCH v3 1/2] python3-sphinxcontrib-svg2pdfconverter: add new recipe
2025-12-03 12:18 ` [OE-core] " Mathieu Dubois-Briand
@ 2025-12-03 12:41 ` Quentin Schulz
2025-12-03 15:24 ` Mathieu Dubois-Briand
0 siblings, 1 reply; 6+ messages in thread
From: Quentin Schulz @ 2025-12-03 12:41 UTC (permalink / raw)
To: Mathieu Dubois-Briand, Quentin Schulz, openembedded-core; +Cc: Antonin Godard
Hi Mathieu,
On 12/3/25 1:18 PM, Mathieu Dubois-Briand wrote:
> On Wed Dec 3, 2025 at 12:32 PM CET, Quentin Schulz wrote:
>> From: Quentin Schulz <quentin.schulz@cherry.de>
>>
>> This will be a dependency for building the Yocto docs soon, so let's add
>> a recipe for it.
>>
>> This does SVG to PDF (or PNG) conversion for images used in Sphinx
>> projects.
>>
>> It exposes three different Sphinx extensions, each using a different
>> tool for the conversion:
>> - cairosvg, a Python module with no available recipe,
>> - inkscape, only available in seemingly unmaintained 3rd party layer,
>> - rsvg-convert,
>>
>> So we'll only support the last extension for now.
>>
>> Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
>> ---
>
> Hi Quentin,
>
> Thanks for your patch.
>
>> meta/conf/distro/include/maintainers.inc | 1 +
>> .../python3-sphinxcontrib-svg2pdfconverter_2.0.0.bb | 20 ++++++++++++++++++++
>> 2 files changed, 21 insertions(+)
>>
>> diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc
>> index 9f4e5e2df8..f819a21cce 100644
>> --- a/meta/conf/distro/include/maintainers.inc
>> +++ b/meta/conf/distro/include/maintainers.inc
>> @@ -733,6 +733,7 @@ RECIPE_MAINTAINER:pn-python3-sphinxcontrib-jquery = "Tim Orling <tim.orling@kons
>> RECIPE_MAINTAINER:pn-python3-sphinxcontrib-jsmath = "Tim Orling <tim.orling@konsulko.com>"
>> RECIPE_MAINTAINER:pn-python3-sphinxcontrib-qthelp = "Tim Orling <tim.orling@konsulko.com>"
>> RECIPE_MAINTAINER:pn-python3-sphinxcontrib-serializinghtml = "Tim Orling <tim.orling@konsulko.com>"
>> +RECIPE_MAINTAINER:pn-python3-sphinxcontrib-svg2pdfconverter = "Antonin Godard <antonin.godard@bootlin.com>"
>
> It looks like this is not enough to make QA happy:
>
> 2025-12-03 10:53:56,449 - oe-selftest - INFO - FAIL: distrodata.Distrodata.test_maintainers (subunit.RemotedTestCase)
> 2025-12-03 10:53:56,449 - oe-selftest - INFO - ----------------------------------------------------------------------
> 2025-12-03 10:53:56,449 - oe-selftest - INFO - testtools.testresult.real._StringException: Traceback (most recent call last):
> File "/srv/pokybuild/yocto-worker/oe-selftest-debian/build/layers/openembedded-core/meta/lib/oeqa/selftest/cases/distrodata.py", line 105, in test_maintainers
> self.fail("""
> File "/usr/lib/python3.10/unittest/case.py", line 675, in fail
> raise self.failureException(msg)
> AssertionError:
> The following recipes do not have a maintainer assigned to them. Please add an entry to meta/conf/distro/include/maintainers.inc file.
> python3-sphinxcontrib-svg2pdfconverter (/srv/pokybuild/yocto-worker/oe-selftest-debian/build/layers/openembedded-core/meta/recipes-devtools/python/python3-sphinxcontrib-svg2pdfconverter_2.0.0.bb)
>
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/35/builds/2786
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/48/builds/2681
>
> Can you have a look at this?
>
It says "Finished two hours ago" at the top of the provided link but I
sent v3 more recently than that.
How do I know which patch(es) were applied from the logs? I went into
"Build properties" and it points at mathieu/master-next branch for
oe-core from openembedded-core-contrib repo at commit
687147e96e53a1ddb3842a3d190a683161e82167 but this isn't the proper HEAD
anymore, so I had to start from commit
687147e96e53a1ddb3842a3d190a683161e82167 from cgit and then go to its
parent recursively until I reached
https://git.openembedded.org/openembedded-core-contrib/commit/?h=mathieu/master-next&id=141b8fdfdc311053d69eab6adbec5c3b09e3acee
which is v2. Is there any chance we can have an easier way to figure
this out?
I also ran the test locally with
oe-selftest -r distrodata.Distrodata.test_maintainers
and it passed.
Cheers,
Quentin
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [OE-core] [PATCH v3 1/2] python3-sphinxcontrib-svg2pdfconverter: add new recipe
2025-12-03 12:41 ` Quentin Schulz
@ 2025-12-03 15:24 ` Mathieu Dubois-Briand
0 siblings, 0 replies; 6+ messages in thread
From: Mathieu Dubois-Briand @ 2025-12-03 15:24 UTC (permalink / raw)
To: Quentin Schulz, Quentin Schulz, openembedded-core; +Cc: Antonin Godard
On Wed Dec 3, 2025 at 1:41 PM CET, Quentin Schulz wrote:
> Hi Mathieu,
>
>
> It says "Finished two hours ago" at the top of the provided link but I
> sent v3 more recently than that.
>
> How do I know which patch(es) were applied from the logs? I went into
> "Build properties" and it points at mathieu/master-next branch for
> oe-core from openembedded-core-contrib repo at commit
> 687147e96e53a1ddb3842a3d190a683161e82167 but this isn't the proper HEAD
> anymore, so I had to start from commit
> 687147e96e53a1ddb3842a3d190a683161e82167 from cgit and then go to its
> parent recursively until I reached
> https://git.openembedded.org/openembedded-core-contrib/commit/?h=mathieu/master-next&id=141b8fdfdc311053d69eab6adbec5c3b09e3acee
> which is v2. Is there any chance we can have an easier way to figure
> this out?
>
> I also ran the test locally with
>
> oe-selftest -r distrodata.Distrodata.test_maintainers
>
> and it passed.
>
> Cheers,
> Quentin
My bad, this was indeed an earlier revision:
https://git.yoctoproject.org/poky-ci-archive/commit/?h=oecore/autobuilder.yoctoproject.org/valkyrie/a-full-2814&id=141b8fdfdc311053d69eab6adbec5c3b09e3acee
Sorry for the noise.
--
Mathieu Dubois-Briand, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2025-12-03 15:24 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-03 11:32 [PATCH v3 0/2] buildtools-docs-tarball: add new Sphinx extension svg2pdfconverter Quentin Schulz
2025-12-03 11:32 ` [PATCH v3 1/2] python3-sphinxcontrib-svg2pdfconverter: add new recipe Quentin Schulz
2025-12-03 12:18 ` [OE-core] " Mathieu Dubois-Briand
2025-12-03 12:41 ` Quentin Schulz
2025-12-03 15:24 ` Mathieu Dubois-Briand
2025-12-03 11:32 ` [PATCH v3 2/2] buildtools-docs-tarball: add python3-sphinxcontrib-svg2pdfconverter to the SDK Quentin Schulz
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox