Re: [OE-core] [PATCH] docbook-xml: Switch from debian packages to upstream docbook sources
The process in the last few days has very helpful because it forces me to organize practices better on my end. Thank you. On 2/21/23 05:33, Alexander Kanavin wrote: > Thanks, I do not have any further comments. The next step is taking > this through the automated test matrix. > > Alex > > On Tue, 21 Feb 2023 at 11:29, Richard Elberger wrote: >> This patch changes the docbook-xml distribution package source from >> debian to docbook which aligns the recipe with the source >> originator. Other changes made to the recipe include: >> >> This patch resolves [YOCTO #13270]. >> >> - removal of version 4.0 given docbook no longer distributes version >>4.0 >> - simplification of the header description. >> - inline comments to communicate the rationale behind gathering >>multiple versions and LICENSE file handling. >> - minor ordering changes to align with styling conventions and better >>context to better communicate use - i.e. the inherit statements and >>related operations. >> >> Signed-off-by: Richard Elberger >> --- >> .../docbook-xml/docbook-xml-dtd4_4.5.bb | 60 --- >> 1 file changed, 39 insertions(+), 21 deletions(-) >> >> diff --git a/meta/recipes-devtools/docbook-xml/docbook-xml-dtd4_4.5.bb >> b/meta/recipes-devtools/docbook-xml/docbook-xml-dtd4_4.5.bb >> index 2bec1442af..dd6159b2f3 100644 >> --- a/meta/recipes-devtools/docbook-xml/docbook-xml-dtd4_4.5.bb >> +++ b/meta/recipes-devtools/docbook-xml/docbook-xml-dtd4_4.5.bb >> @@ -1,28 +1,46 @@ >> SUMMARY = "Document type definitions for verification of XML data files" >> DESCRIPTION = "Document type definitions for verification of XML data \ >> -files against the DocBook rule set, it ships with the latest DocBook 4.5 \ >> -XML DTD, as well as a selected set of legacy DTDs for use with older \ >> -documents, including 4.0, 4.1.2, 4.2, 4.3 and 4.4" >> -HOMEPAGE = "http://www.docbook.org/xml/; >> +files against the DocBook rule set." >> +HOMEPAGE = "https://docbook.org; >> + >> +# The upstream sources are not distributed with a license file. >> +# LICENSE-OASIS is included as a "patch" to workaround this. When >> +# upgrading this recipe, please verify whether this is still needed. >> >> LICENSE = "OASIS" >> LIC_FILES_CHKSUM = >> "file://${WORKDIR}/LICENSE-OASIS;md5=c608985dd5f7f215e669e7639a0b1d2e" >> >> -# Note: the upstream sources are not distributed with a license file. >> -# LICENSE-OASIS is included as a "patch" to workaround this. When >> -# upgrading this recipe, please verify whether this is still needed. >> -SRC_URI = >> "http://snapshot.debian.org/archive/debian/20160728T043443Z/pool/main/d/docbook-xml/docbook-xml_${PV}.orig.tar.gz >> \ >> - file://LICENSE-OASIS \ >> - file://docbook-xml-update-catalog.xml.patch \ >> -" >> +# To support apps with xml schema backward compatibility, we must >> +# install a set of schemas. Install the latest based on PV and then >> +# name any specific versions as required. TODO: Figure out a mechanism >> +# to filter exactly which versions are necessary, if that's even >> +# possible. >> +# >> +# DocBook.org lists available release packages at https://docbook.org/xml/. >> +# >> +# The release packages relate docbook source at >> +# https://github.com/docbook/docbook but building them requires the >> +# Gradle build system. In future, it might be safer to use the source >> +# tree which would also enable proper SBOM generation through the >> +# bitbake build system. >> +# >> >> -SRC_URI[md5sum] = "487b4d44e15cffb1f4048af23f98208e" >> -SRC_URI[sha256sum] = >> "b0f8edcf697f5318e63dd98c9a931f3fee167af0805ba441db372e0f17b2a44f" >> +SRC_URI = >> "https://docbook.org/xml/4.1.2/docbkx412.zip;name=payload412;subdir=docbook-xml-4.1.2 >> \ >> + >> https://docbook.org/xml/4.2/docbook-xml-4.2.zip;name=payload42;subdir=docbook-xml-4.2 >> \ >> + >> https://docbook.org/xml/4.3/docbook-xml-4.3.zip;name=payload43;subdir=docbook-xml-4.3 >> \ >> + >> https://docbook.org/xml/4.4/docbook-xml-4.4.zip;name=payload44;subdir=docbook-xml-4.4 >> \ >> + >> https://docbook.org/xml/${PV}/docbook-xml-${PV}.zip;name=payloadPV;subdir=docbook-xml-${PV} >> \ >> + file://LICENSE-OASIS" >> >> -UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/d/docbook-xml/" >> +SRC_URI[payload412.sha256sum] = >> "30f0644064e0ea71751438251940b1431f46acada814a062870f486c772e7772" >> +SRC_URI[payload42.sha256sum] = >> "acc4601e4f97a196076b7e64b368d9248b07c7abf26b34a02cca40eeebe60fa2" >> +SRC_URI[payload43.sha256sum] = >> "23068a94ea6fd484b004c5a73ec36a66aa47ea8f0d6b62cc1695931f5c143464" >> +SRC_URI[payload44.sha256sum] = >> "02f159eb88c4254d95e831c51c144b1863b216d909b5ff45743a1ce6f5273090" >> +SRC_URI[payloadPV.sha256sum] = >> "4e4e037a2b83c98c6c94818390d4bdd3f6e10f6ec62dd79188594e26190dc7b4" >> >> -S = "${WORKDIR}/docbook-xml-4.5.c31424" >> +UPSTREAM_CHECK_REGEX = "docbook-xml-(?P4(\.\d+)).zip" >> >> +S = "${WORKDIR}" >> inherit
Re: [OE-core] [PATCH] docbook-xml: Switch from debian packages to upstream docbook sources
Thanks, I do not have any further comments. The next step is taking this through the automated test matrix. Alex On Tue, 21 Feb 2023 at 11:29, Richard Elberger wrote: > > This patch changes the docbook-xml distribution package source from > debian to docbook which aligns the recipe with the source > originator. Other changes made to the recipe include: > > This patch resolves [YOCTO #13270]. > > - removal of version 4.0 given docbook no longer distributes version > 4.0 > - simplification of the header description. > - inline comments to communicate the rationale behind gathering > multiple versions and LICENSE file handling. > - minor ordering changes to align with styling conventions and better > context to better communicate use - i.e. the inherit statements and > related operations. > > Signed-off-by: Richard Elberger > --- > .../docbook-xml/docbook-xml-dtd4_4.5.bb | 60 --- > 1 file changed, 39 insertions(+), 21 deletions(-) > > diff --git a/meta/recipes-devtools/docbook-xml/docbook-xml-dtd4_4.5.bb > b/meta/recipes-devtools/docbook-xml/docbook-xml-dtd4_4.5.bb > index 2bec1442af..dd6159b2f3 100644 > --- a/meta/recipes-devtools/docbook-xml/docbook-xml-dtd4_4.5.bb > +++ b/meta/recipes-devtools/docbook-xml/docbook-xml-dtd4_4.5.bb > @@ -1,28 +1,46 @@ > SUMMARY = "Document type definitions for verification of XML data files" > DESCRIPTION = "Document type definitions for verification of XML data \ > -files against the DocBook rule set, it ships with the latest DocBook 4.5 \ > -XML DTD, as well as a selected set of legacy DTDs for use with older \ > -documents, including 4.0, 4.1.2, 4.2, 4.3 and 4.4" > -HOMEPAGE = "http://www.docbook.org/xml/; > +files against the DocBook rule set." > +HOMEPAGE = "https://docbook.org; > + > +# The upstream sources are not distributed with a license file. > +# LICENSE-OASIS is included as a "patch" to workaround this. When > +# upgrading this recipe, please verify whether this is still needed. > > LICENSE = "OASIS" > LIC_FILES_CHKSUM = > "file://${WORKDIR}/LICENSE-OASIS;md5=c608985dd5f7f215e669e7639a0b1d2e" > > -# Note: the upstream sources are not distributed with a license file. > -# LICENSE-OASIS is included as a "patch" to workaround this. When > -# upgrading this recipe, please verify whether this is still needed. > -SRC_URI = > "http://snapshot.debian.org/archive/debian/20160728T043443Z/pool/main/d/docbook-xml/docbook-xml_${PV}.orig.tar.gz > \ > - file://LICENSE-OASIS \ > - file://docbook-xml-update-catalog.xml.patch \ > -" > +# To support apps with xml schema backward compatibility, we must > +# install a set of schemas. Install the latest based on PV and then > +# name any specific versions as required. TODO: Figure out a mechanism > +# to filter exactly which versions are necessary, if that's even > +# possible. > +# > +# DocBook.org lists available release packages at https://docbook.org/xml/. > +# > +# The release packages relate docbook source at > +# https://github.com/docbook/docbook but building them requires the > +# Gradle build system. In future, it might be safer to use the source > +# tree which would also enable proper SBOM generation through the > +# bitbake build system. > +# > > -SRC_URI[md5sum] = "487b4d44e15cffb1f4048af23f98208e" > -SRC_URI[sha256sum] = > "b0f8edcf697f5318e63dd98c9a931f3fee167af0805ba441db372e0f17b2a44f" > +SRC_URI = > "https://docbook.org/xml/4.1.2/docbkx412.zip;name=payload412;subdir=docbook-xml-4.1.2 > \ > + > https://docbook.org/xml/4.2/docbook-xml-4.2.zip;name=payload42;subdir=docbook-xml-4.2 > \ > + > https://docbook.org/xml/4.3/docbook-xml-4.3.zip;name=payload43;subdir=docbook-xml-4.3 > \ > + > https://docbook.org/xml/4.4/docbook-xml-4.4.zip;name=payload44;subdir=docbook-xml-4.4 > \ > + > https://docbook.org/xml/${PV}/docbook-xml-${PV}.zip;name=payloadPV;subdir=docbook-xml-${PV} > \ > + file://LICENSE-OASIS" > > -UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/d/docbook-xml/" > +SRC_URI[payload412.sha256sum] = > "30f0644064e0ea71751438251940b1431f46acada814a062870f486c772e7772" > +SRC_URI[payload42.sha256sum] = > "acc4601e4f97a196076b7e64b368d9248b07c7abf26b34a02cca40eeebe60fa2" > +SRC_URI[payload43.sha256sum] = > "23068a94ea6fd484b004c5a73ec36a66aa47ea8f0d6b62cc1695931f5c143464" > +SRC_URI[payload44.sha256sum] = > "02f159eb88c4254d95e831c51c144b1863b216d909b5ff45743a1ce6f5273090" > +SRC_URI[payloadPV.sha256sum] = > "4e4e037a2b83c98c6c94818390d4bdd3f6e10f6ec62dd79188594e26190dc7b4" > > -S = "${WORKDIR}/docbook-xml-4.5.c31424" > +UPSTREAM_CHECK_REGEX = "docbook-xml-(?P4(\.\d+)).zip" > > +S = "${WORKDIR}" > inherit allarch > BBCLASSEXTEND = "native" > > @@ -34,19 +52,19 @@ do_compile (){ > : > } > > +inherit xmlcatalog > + > do_install () { > install -d ${D}${sysconfdir}/xml/ > xmlcatalog --create --noout ${D}${sysconfdir}/xml/docbook-xml.xml > > -for DTDVERSION in 4.0 4.1.2 4.2 4.3