xref: /OK3568_Linux_fs/yocto/meta-openembedded/meta-oe/recipes-test/cmocka/cmocka_1.1.5.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1DESCRIPTION = "cmocka is an elegant unit testing framework for C with support for mock \
2objects. It only requires the standard C library, works on a range of computing \
3platforms (including embedded) and with different compilers."
4HOMEPAGE = "https://cmocka.org/"
5
6LICENSE = "Apache-2.0"
7LIC_FILES_CHKSUM = "file://COPYING;md5=3b83ef96387f14655fc854ddc3c6bd57"
8
9SRCREV = "a4fc3dd7705c277e3a57432895e9852ea105dac9"
10PV .= "+git${SRCPV}"
11SRC_URI = "git://git.cryptomilk.org/projects/cmocka.git;protocol=https;branch=master \
12           file://run-ptest \
13          "
14
15S = "${WORKDIR}/git"
16
17inherit cmake ptest
18
19EXTRA_OECMAKE += "${@bb.utils.contains('PTEST_ENABLED', '1', '-DCMAKE_BUILD_TYPE=Debug -DUNIT_TESTING=ON', '', d)}"
20# Use -Wl,wrap linker flag, which does not work with LTO
21LTO = ""
22
23do_install:append () {
24    install -d ${D}${datadir}/${BPN}/example
25    install -d ${D}${datadir}/${BPN}/example/mock/chef_wrap
26    install -d ${D}${datadir}/${BPN}/example/mock/uptime
27
28    install -m 0755 ${B}/example/*_test ${D}/${datadir}/${BPN}/example
29    install -m 0755 ${B}/example/mock/chef_wrap/waiter_test_wrap ${D}/${datadir}/${BPN}/example/mock/chef_wrap
30    install -m 0755 ${B}/example/mock/uptime/uptime ${D}/${datadir}/${BPN}/example/mock/uptime
31    install -m 0755 ${B}/example/mock/uptime/test_uptime ${D}/${datadir}/${BPN}/example/mock/uptime
32    install -m 0644 ${B}/example/mock/uptime/libproc_uptime.so ${D}/${datadir}/${BPN}/example/mock/libproc_uptime.so
33}
34
35do_install_ptest () {
36    install -d ${D}${PTEST_PATH}/tests
37    install -m 0755 ${B}/tests/test_* ${D}${PTEST_PATH}/tests
38}
39
40PACKAGE_BEFORE_PN += "${PN}-examples"
41
42FILES:${PN}-examples = "${datadir}/${BPN}/example"
43INSANE_SKIP:${PN}-examples = "libdir"
44