Message ID | 20241012075347.1549781-1-mingli.yu@windriver.com |
---|---|
State | New |
Headers | show |
Series | [meta-oe,1/2] libtoml11: Add new recipe | expand |
On Sat, Oct 12, 2024 at 12:53 AM Yu, Mingli via lists.openembedded.org <mingli.yu=eng.windriver.com@lists.openembedded.org> wrote: > > From: Mingli Yu <mingli.yu@windriver.com> > > toml11 is a feature-rich TOML language library for C++11/14/17/20 [1]. > > # ./run-ptest > PASS: test_comments > PASS: test_datetime > PASS: test_error_message > PASS: test_find > PASS: test_find_or > PASS: test_format_floating > PASS: test_format_integer > PASS: test_format_table > PASS: test_get > PASS: test_get_or > PASS: test_literal > PASS: test_location > PASS: test_parse_array > PASS: test_parse_boolean > PASS: test_parse_datetime > [snip] > > [1] https://github.com/ToruNiina/toml11 > > Signed-off-by: Mingli Yu <mingli.yu@windriver.com> > --- > ...issing-zero-initialization-to-region.patch | 34 ++++++++++++++++ > .../libtoml11/files/run-ptest | 12 ++++++ > .../libtoml11/libtoml11_4.2.0.bb | 39 +++++++++++++++++++ > 3 files changed, 85 insertions(+) > create mode 100644 meta-oe/recipes-devtools/libtoml11/files/0001-fix-add-missing-zero-initialization-to-region.patch > create mode 100755 meta-oe/recipes-devtools/libtoml11/files/run-ptest > create mode 100644 meta-oe/recipes-devtools/libtoml11/libtoml11_4.2.0.bb > > diff --git a/meta-oe/recipes-devtools/libtoml11/files/0001-fix-add-missing-zero-initialization-to-region.patch b/meta-oe/recipes-devtools/libtoml11/files/0001-fix-add-missing-zero-initialization-to-region.patch > new file mode 100644 > index 000000000..b779d493a > --- /dev/null > +++ b/meta-oe/recipes-devtools/libtoml11/files/0001-fix-add-missing-zero-initialization-to-region.patch > @@ -0,0 +1,34 @@ > +From 9c7cef94a551cfdbbe2cce262c29221e22643d84 Mon Sep 17 00:00:00 2001 > +From: =?UTF-8?q?Ale=C5=A1=20Mat=C4=9Bj?= <amatej@redhat.com> > +Date: Mon, 19 Aug 2024 06:35:03 +0200 > +Subject: [PATCH] fix: add missing zero initialization to region > + > +Fixes below error: > + > +/build/tmp-glibc/work/core2-64-wrs-linux/libtoml11/1_4.2.0-r0/git/include/toml11/fwd/../fwd/../fwd/region_fwd.hpp:49:5: error: '<unnamed>.toml::detail::region::first_' is used uninitialized [-Werror=uninitialized] > + 49 | region(region&&) = default; > + | ^~~~~~ > + > +Upstream-Status: Backport [https://github.com/ToruNiina/toml11/commit/9c7cef94a551cfdbbe2cce262c29221e22643d84] > + > +--- > + include/toml11/fwd/region_fwd.hpp | 3 ++- > + 1 file changed, 2 insertions(+), 1 deletion(-) > + > +diff --git a/include/toml11/fwd/region_fwd.hpp b/include/toml11/fwd/region_fwd.hpp > +index b40317d..26f1a9b 100644 > +--- a/include/toml11/fwd/region_fwd.hpp > ++++ b/include/toml11/fwd/region_fwd.hpp > +@@ -34,7 +34,8 @@ class region > + // a value that is constructed manually does not have input stream info > + region() > + : source_(nullptr), source_name_(""), length_(0), > +- first_line_(0), first_column_(0), last_line_(0), last_column_(0) > ++ first_(0), first_line_(0), first_column_(0), last_(0), last_line_(0), > ++ last_column_(0) > + {} > + > + // a value defined in [first, last). > +-- > +2.34.1 > + > diff --git a/meta-oe/recipes-devtools/libtoml11/files/run-ptest b/meta-oe/recipes-devtools/libtoml11/files/run-ptest > new file mode 100755 > index 000000000..9bc480aa7 > --- /dev/null > +++ b/meta-oe/recipes-devtools/libtoml11/files/run-ptest > @@ -0,0 +1,12 @@ > +#!/bin/sh > + > +cd tests > +for atest in test_* ; do > + rm -rf tests.log > + ./${atest} > tests.log 2>&1 > + if [ $? = 0 ] ; then > + echo "PASS: ${atest}" > + else > + echo "FAIL: ${atest}" > + fi > +done > diff --git a/meta-oe/recipes-devtools/libtoml11/libtoml11_4.2.0.bb b/meta-oe/recipes-devtools/libtoml11/libtoml11_4.2.0.bb > new file mode 100644 > index 000000000..758e258a5 > --- /dev/null > +++ b/meta-oe/recipes-devtools/libtoml11/libtoml11_4.2.0.bb > @@ -0,0 +1,39 @@ > +SUMMARY = "TOML for Modern C++" > +DESCRIPTION = "toml11 is a feature-rich TOML language library for \ > + C++11/14/17/20." > + > +HOMEPAGE = "https://github.com/ToruNiina/toml11" > + > +SECTION = "libs" > + > +LICENSE = "MIT" > +LIC_FILES_CHKSUM = "file://LICENSE;md5=44d1fcf70c7aa6991533c38daf7befa3" > + > +PE = "1" Why do we need PE in a newly added recipe ? > + > +SRCREV = "cc0bee4fd46ea1f5db147d63ea545208cc9e8405" > +SRCREV_json = "9cca280a4d0ccf0c08f47a99aa71d1b0e52f8d03" > +SRCREV_doctest = "ae7a13539fb71f270b87eb2e874fbac80bc8dda2" > + > +SRC_URI = "git://github.com/ToruNiina/toml11;branch=main;protocol=https \ > + git://github.com/nlohmann/json;destsuffix=git/tests/extlib/json;name=json;branch=develop;protocol=https \ > + git://github.com/doctest/doctest;destsuffix=git/tests/extlib/doctest;name=doctest;branch=master;protocol=https \ > + file://0001-fix-add-missing-zero-initialization-to-region.patch \ > + file://run-ptest \ > +" > +SRCREV_FORMAT = "json_doctest" Perhaps it will be good to define name= for the first entry in SRC_URI as well. > + > +S = "${WORKDIR}/git" > + > +inherit cmake ptest > + > +EXTRA_OECMAKE += "-DTOML11_PRECOMPILE=ON \ > + -DTOML11_BUILD_TESTS=${@bb.utils.contains("DISTRO_FEATURES", "ptest", "ON", "OFF", d)} \ > +" > + > +ALLOW_EMPTY:${PN} = "1" > + > +do_install_ptest () { > + install -d ${D}${PTEST_PATH}/tests > + cp -r ${B}/tests/test_* ${D}${PTEST_PATH}/tests > +} > -- > 2.34.1 > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#112822): https://lists.openembedded.org/g/openembedded-devel/message/112822 > Mute This Topic: https://lists.openembedded.org/mt/108963713/1997914 > Group Owner: openembedded-devel+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- >
diff --git a/meta-oe/recipes-devtools/libtoml11/files/0001-fix-add-missing-zero-initialization-to-region.patch b/meta-oe/recipes-devtools/libtoml11/files/0001-fix-add-missing-zero-initialization-to-region.patch new file mode 100644 index 000000000..b779d493a --- /dev/null +++ b/meta-oe/recipes-devtools/libtoml11/files/0001-fix-add-missing-zero-initialization-to-region.patch @@ -0,0 +1,34 @@ +From 9c7cef94a551cfdbbe2cce262c29221e22643d84 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ale=C5=A1=20Mat=C4=9Bj?= <amatej@redhat.com> +Date: Mon, 19 Aug 2024 06:35:03 +0200 +Subject: [PATCH] fix: add missing zero initialization to region + +Fixes below error: + +/build/tmp-glibc/work/core2-64-wrs-linux/libtoml11/1_4.2.0-r0/git/include/toml11/fwd/../fwd/../fwd/region_fwd.hpp:49:5: error: '<unnamed>.toml::detail::region::first_' is used uninitialized [-Werror=uninitialized] + 49 | region(region&&) = default; + | ^~~~~~ + +Upstream-Status: Backport [https://github.com/ToruNiina/toml11/commit/9c7cef94a551cfdbbe2cce262c29221e22643d84] + +--- + include/toml11/fwd/region_fwd.hpp | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/include/toml11/fwd/region_fwd.hpp b/include/toml11/fwd/region_fwd.hpp +index b40317d..26f1a9b 100644 +--- a/include/toml11/fwd/region_fwd.hpp ++++ b/include/toml11/fwd/region_fwd.hpp +@@ -34,7 +34,8 @@ class region + // a value that is constructed manually does not have input stream info + region() + : source_(nullptr), source_name_(""), length_(0), +- first_line_(0), first_column_(0), last_line_(0), last_column_(0) ++ first_(0), first_line_(0), first_column_(0), last_(0), last_line_(0), ++ last_column_(0) + {} + + // a value defined in [first, last). +-- +2.34.1 + diff --git a/meta-oe/recipes-devtools/libtoml11/files/run-ptest b/meta-oe/recipes-devtools/libtoml11/files/run-ptest new file mode 100755 index 000000000..9bc480aa7 --- /dev/null +++ b/meta-oe/recipes-devtools/libtoml11/files/run-ptest @@ -0,0 +1,12 @@ +#!/bin/sh + +cd tests +for atest in test_* ; do + rm -rf tests.log + ./${atest} > tests.log 2>&1 + if [ $? = 0 ] ; then + echo "PASS: ${atest}" + else + echo "FAIL: ${atest}" + fi +done diff --git a/meta-oe/recipes-devtools/libtoml11/libtoml11_4.2.0.bb b/meta-oe/recipes-devtools/libtoml11/libtoml11_4.2.0.bb new file mode 100644 index 000000000..758e258a5 --- /dev/null +++ b/meta-oe/recipes-devtools/libtoml11/libtoml11_4.2.0.bb @@ -0,0 +1,39 @@ +SUMMARY = "TOML for Modern C++" +DESCRIPTION = "toml11 is a feature-rich TOML language library for \ + C++11/14/17/20." + +HOMEPAGE = "https://github.com/ToruNiina/toml11" + +SECTION = "libs" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=44d1fcf70c7aa6991533c38daf7befa3" + +PE = "1" + +SRCREV = "cc0bee4fd46ea1f5db147d63ea545208cc9e8405" +SRCREV_json = "9cca280a4d0ccf0c08f47a99aa71d1b0e52f8d03" +SRCREV_doctest = "ae7a13539fb71f270b87eb2e874fbac80bc8dda2" + +SRC_URI = "git://github.com/ToruNiina/toml11;branch=main;protocol=https \ + git://github.com/nlohmann/json;destsuffix=git/tests/extlib/json;name=json;branch=develop;protocol=https \ + git://github.com/doctest/doctest;destsuffix=git/tests/extlib/doctest;name=doctest;branch=master;protocol=https \ + file://0001-fix-add-missing-zero-initialization-to-region.patch \ + file://run-ptest \ +" +SRCREV_FORMAT = "json_doctest" + +S = "${WORKDIR}/git" + +inherit cmake ptest + +EXTRA_OECMAKE += "-DTOML11_PRECOMPILE=ON \ + -DTOML11_BUILD_TESTS=${@bb.utils.contains("DISTRO_FEATURES", "ptest", "ON", "OFF", d)} \ +" + +ALLOW_EMPTY:${PN} = "1" + +do_install_ptest () { + install -d ${D}${PTEST_PATH}/tests + cp -r ${B}/tests/test_* ${D}${PTEST_PATH}/tests +}