aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-extended/libyang
AgeCommit message (Collapse)Author
2021-08-03Convert to new override syntaxMartin Jansa
This is the result of automated script (0.9.1) conversion: oe-core/scripts/contrib/convert-overrides.py . converting the metadata to use ":" as the override character instead of "_". Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2021-06-30libyang: create recipe for libyangTony Tascioglu
Add a new recipe, patches, and ptest coverage for libyang. The recipe follows from upstream, using the cmake build system. There were 2 small changes needed to get the package building: - Remove call to pcre2-config - Add missing import statement The recipe has a dependency on libpcre2, which satisfies the minimum requirements for libyang. In addition, for tests, cmocka is required during build and runtime, and valgrind is required in the runtime for some tests. Due to the way the library by default builds in a debug mode, release mode was specified. However, this disables building the built-in tests, so an EXTRA_OECMAKE was added based on whether or not ptests are enabled to specifiy the required extra flag. Binconfig-disabled is inherited since using pcre2-config directly is not suggested anymore. Cmocka as a dependency depends on whether ptests have been enabled. Since ptests are built with the main package, we need cmocka installed before the test are compiled if they are needed. Ptest coverage: The ptests come from the original tests included with the library. Ptests are in ctest format by default, so we compare the return code to print it in Yocto format. However, as each "test" target executable has multiple tests in it, the full stdout and stderr logs are saved for troubleshooting. Currently, several of the tests fail due to hardcoded paths in the executable binaries generated, this is an issue we will take upstream. For now, only the tests which work on a different target are enabled as the ptests. The list can be updated in the run-ptest script, which is portable shell compatible, without requiring bash. The recipe also has libyang-bin as a split package, which includes yanglint should it be needed. This recipe was tested using buildall-qemu as well as from within qemu in x86_64 and arm64. Signed-off-by: Tony Tascioglu <tony.tascioglu@windriver.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>