Message ID | 20230802132352.95244-1-frederic.martinsons@gmail.com |
---|---|
State | New |
Headers | show |
Series | ref-manual: classes.rst: suppress rust-hello-world reference and ptest-cargo class | expand |
Hi Frederic, On 02.08.23 at 15:23, Frederic Martinsons wrote: > From: Frederic Martinsons <frederic.martinsons@gmail.com> > > Signed-off-by: Frederic Martinsons <frederic.martinsons@gmail.com> > --- > documentation/ref-manual/classes.rst | 20 ++++++++++++++++---- > 1 file changed, 16 insertions(+), 4 deletions(-) > > diff --git a/documentation/ref-manual/classes.rst b/documentation/ref-manual/classes.rst > index e555a80b5..950231f40 100644 > --- a/documentation/ref-manual/classes.rst > +++ b/documentation/ref-manual/classes.rst > @@ -266,12 +266,15 @@ manager, allowing to fetch package dependencies and build your program. > Using this class makes it very easy to build Rust programs. All you need > is to use the :term:`SRC_URI` variable to point to a source repository > which can be built by Cargo, typically one that was created by the > -``cargo new`` command, containing a ``Cargo.toml`` file and a ``src`` > +``cargo new`` command, containing a ``Cargo.toml`` file, a ``Cargo.lock`` file and a ``src`` > subdirectory. > > -You will find a simple example in the > -:oe_git:`rust-hello-world_git.bb </openembedded-core/tree/meta/recipes-extended/rust-example/rust-hello-world_git.bb>` > -recipe. A more complex example, with package dependencies, is the > +If you want to build and package tests of the program, replace :ref:`ref-classes-cargo` > +inheritance by :ref:`ref-classes-ptest-cargo` one. > + > +You will find an example (that show also how to handle possible git source dependencies) in the > +:oe_git:`zvariant_3.12.0.bb </openembedded-core/tree/meta-selftest/recipes-extended/zvariant/zvariant_3.12.0.bb>` > +recipe. Another example, with only crates dependencies, is the > :oe_git:`uutils-coreutils </meta-openembedded/tree/meta-oe/recipes-core/uutils-coreutils>` > recipe, which was generated by the `cargo-bitbake <https://crates.io/crates/cargo-bitbake>`__ > tool. > @@ -290,6 +293,15 @@ An exception is the "rust" recipe, to build the Rust compiler and runtime > library, which is built by Cargo but cannot use the :ref:`ref-classes-cargo` > class. This is why this class was introduced. > > +.. _ref-classes-ptest-cargo: > + > +``ptest_cargo`` > +=============== > + > +The :ref:`ref-classes-ptest-cargo` class is a class which extend :ref:`ref-classes-cargo` > +and add a compile_ptest_cargo/install_ptest_cargo steps to respectively build and install > +test suites defined in ``Cargo.toml`` file in a dedicate -ptest package. Many thanks for the patch. I'd just add a few style and grammar fixes, but I'll take care of those by myself. If there are no other comments by tomorrow, I'll merge it into master-next for docs. Could you just confirm that this patch doesn't depend on the 3 OE-core patches you've just sent? Thanks again Cheers Michael.
On Wed, 2 Aug 2023 at 16:45, Michael Opdenacker < michael.opdenacker@bootlin.com> wrote: > Hi Frederic, > > On 02.08.23 at 15:23, Frederic Martinsons wrote: > > From: Frederic Martinsons <frederic.martinsons@gmail.com> > > > > Signed-off-by: Frederic Martinsons <frederic.martinsons@gmail.com> > > --- > > documentation/ref-manual/classes.rst | 20 ++++++++++++++++---- > > 1 file changed, 16 insertions(+), 4 deletions(-) > > > > diff --git a/documentation/ref-manual/classes.rst > b/documentation/ref-manual/classes.rst > > index e555a80b5..950231f40 100644 > > --- a/documentation/ref-manual/classes.rst > > +++ b/documentation/ref-manual/classes.rst > > @@ -266,12 +266,15 @@ manager, allowing to fetch package dependencies > and build your program. > > Using this class makes it very easy to build Rust programs. All you > need > > is to use the :term:`SRC_URI` variable to point to a source repository > > which can be built by Cargo, typically one that was created by the > > -``cargo new`` command, containing a ``Cargo.toml`` file and a ``src`` > > +``cargo new`` command, containing a ``Cargo.toml`` file, a > ``Cargo.lock`` file and a ``src`` > > subdirectory. > > > > -You will find a simple example in the > > -:oe_git:`rust-hello-world_git.bb > </openembedded-core/tree/meta/recipes-extended/rust-example/ > rust-hello-world_git.bb>` > > -recipe. A more complex example, with package dependencies, is the > > +If you want to build and package tests of the program, replace > :ref:`ref-classes-cargo` > > +inheritance by :ref:`ref-classes-ptest-cargo` one. > > + > > +You will find an example (that show also how to handle possible git > source dependencies) in the > > +:oe_git:`zvariant_3.12.0.bb > </openembedded-core/tree/meta-selftest/recipes-extended/zvariant/ > zvariant_3.12.0.bb>` > > +recipe. Another example, with only crates dependencies, is the > > :oe_git:`uutils-coreutils > </meta-openembedded/tree/meta-oe/recipes-core/uutils-coreutils>` > > recipe, which was generated by the `cargo-bitbake < > https://crates.io/crates/cargo-bitbake>`__ > > tool. > > @@ -290,6 +293,15 @@ An exception is the "rust" recipe, to build the > Rust compiler and runtime > > library, which is built by Cargo but cannot use the > :ref:`ref-classes-cargo` > > class. This is why this class was introduced. > > > > +.. _ref-classes-ptest-cargo: > > + > > +``ptest_cargo`` > > +=============== > > + > > +The :ref:`ref-classes-ptest-cargo` class is a class which extend > :ref:`ref-classes-cargo` > > +and add a compile_ptest_cargo/install_ptest_cargo steps to respectively > build and install > > +test suites defined in ``Cargo.toml`` file in a dedicate -ptest package. > > > Many thanks for the patch. I'd just add a few style and grammar fixes, > but I'll take care of those by myself. > Many thanks! > If there are no other comments by tomorrow, I'll merge it into > master-next for docs. > > Could you just confirm that this patch doesn't depend on the 3 OE-core > patches you've just sent? > Glad you asked, the part concerning ptest-cargo class doesn't depend on them, but the removal of rust-hello-world does (third patch on the series you mentioned). Sorry, I should have made two patches for the docs. Please tell me if it is too annoying for you and I'll send a rework here with two patches instead of a single one (one for ptest-cargo doc and one for removal of rust-hello-world). > Thanks again > Cheers > Michael. > > -- > Michael Opdenacker, Bootlin > Embedded Linux and Kernel engineering > https://bootlin.com > >
On 02.08.23 at 16:51, Frédéric Martinsons wrote: > > > Could you just confirm that this patch doesn't depend on the 3 > OE-core > patches you've just sent? > > > Glad you asked, the part concerning ptest-cargo class doesn't depend > on them, but the removal > of rust-hello-world does (third patch on the series you mentioned). > Sorry, I should have made two patches for the docs. Please tell me > if it is too annoying for you and I'll send a rework here with two > patches instead of a single one (one for ptest-cargo > doc and one for removal of rust-hello-world). Well, it doesn't hurt to stop mentioning example code that will be removed later. It's not like mentioning some code that hasn't been merged yet. So, I believe your single commit is fine. Thanks Michael.
diff --git a/documentation/ref-manual/classes.rst b/documentation/ref-manual/classes.rst index e555a80b5..950231f40 100644 --- a/documentation/ref-manual/classes.rst +++ b/documentation/ref-manual/classes.rst @@ -266,12 +266,15 @@ manager, allowing to fetch package dependencies and build your program. Using this class makes it very easy to build Rust programs. All you need is to use the :term:`SRC_URI` variable to point to a source repository which can be built by Cargo, typically one that was created by the -``cargo new`` command, containing a ``Cargo.toml`` file and a ``src`` +``cargo new`` command, containing a ``Cargo.toml`` file, a ``Cargo.lock`` file and a ``src`` subdirectory. -You will find a simple example in the -:oe_git:`rust-hello-world_git.bb </openembedded-core/tree/meta/recipes-extended/rust-example/rust-hello-world_git.bb>` -recipe. A more complex example, with package dependencies, is the +If you want to build and package tests of the program, replace :ref:`ref-classes-cargo` +inheritance by :ref:`ref-classes-ptest-cargo` one. + +You will find an example (that show also how to handle possible git source dependencies) in the +:oe_git:`zvariant_3.12.0.bb </openembedded-core/tree/meta-selftest/recipes-extended/zvariant/zvariant_3.12.0.bb>` +recipe. Another example, with only crates dependencies, is the :oe_git:`uutils-coreutils </meta-openembedded/tree/meta-oe/recipes-core/uutils-coreutils>` recipe, which was generated by the `cargo-bitbake <https://crates.io/crates/cargo-bitbake>`__ tool. @@ -290,6 +293,15 @@ An exception is the "rust" recipe, to build the Rust compiler and runtime library, which is built by Cargo but cannot use the :ref:`ref-classes-cargo` class. This is why this class was introduced. +.. _ref-classes-ptest-cargo: + +``ptest_cargo`` +=============== + +The :ref:`ref-classes-ptest-cargo` class is a class which extend :ref:`ref-classes-cargo` +and add a compile_ptest_cargo/install_ptest_cargo steps to respectively build and install +test suites defined in ``Cargo.toml`` file in a dedicate -ptest package. + .. _ref-classes-ccache: .. _ref-classes-cargo-update-recipe-crates: