mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-07-15 16:07:26 +00:00
aa5e8edabb
* Backport 2 patches [1] [2] to fix the build failure under tests dir.
* Fetch the test data during do_fetch phase to avoid internet access
during test as some tests need test data.
# ./run-ptest
PASS: test-algorithms_cpp11
PASS: test-allocator_cpp11
PASS: test-alt-string_cpp11
PASS: test-assert_macro_cpp11
PASS: test-binary_formats_cpp11
[snip]
PASS: test-unicode5_cpp11
PASS: test-user_defined_input_cpp11
PASS: test-windows_h_cpp11
PASS: test-wstring_cpp11
[1] https://github.com/nlohmann/json/commit/6cec5aefc97ad219b6fd5a4132f88f7c8f6800ee
[2] https://github.com/nlohmann/json/commit/660d0b58565073975d6f5d94365d6cbf150a4cf8
Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
(cherry picked from commit 013b4d5043)
Signed-off-by: Armin Kuster <akuster808@gmail.com>
47 lines
1.5 KiB
BlitzBasic
47 lines
1.5 KiB
BlitzBasic
SUMMARY = "JSON for modern C++"
|
|
HOMEPAGE = "https://nlohmann.github.io/json/"
|
|
SECTION = "libs"
|
|
LICENSE = "MIT"
|
|
LIC_FILES_CHKSUM = "file://LICENSE.MIT;md5=f969127d7b7ed0a8a63c2bbeae002588"
|
|
|
|
CVE_PRODUCT = "json-for-modern-cpp"
|
|
|
|
SRC_URI = "git://github.com/nlohmann/json.git;branch=develop;protocol=https \
|
|
git://github.com/nlohmann/json_test_data.git;destsuffix=git/json_test_data;name=json-test-data;branch=master;protocol=https \
|
|
file://0001-custom-allocators-define-missing-rebind-type-3895.patch \
|
|
file://0001-tests-unit-iterators2-use-std-ranges-equals-for-rang.patch \
|
|
file://run-ptest \
|
|
"
|
|
|
|
SRCREV = "bc889afb4c5bf1c0d8ee29ef35eaaf4c8bef8a5d"
|
|
SRCREV_json-test-data = "a1375cea09d27cc1c4cadb8d00470375b421ac37"
|
|
|
|
SRCREV_FORMAT = "json-test-data"
|
|
|
|
S = "${WORKDIR}/git"
|
|
|
|
inherit cmake ptest
|
|
|
|
EXTRA_OECMAKE += "${@bb.utils.contains('PTEST_ENABLED', '1', '-DJSON_BuildTests=ON -DJSON_TestDataDirectory=${PTEST_PATH}/json_test_data', '-DJSON_BuildTests=OFF', d)}"
|
|
|
|
# nlohmann-json is a header only C++ library, so the main package will be empty.
|
|
ALLOW_EMPTY:${PN} = "1"
|
|
RDEPENDS:${PN}-dev = ""
|
|
RDEPENDS:${PN}-ptest = "perl"
|
|
|
|
BBCLASSEXTEND = "native nativesdk"
|
|
|
|
|
|
do_install_ptest () {
|
|
install -d ${D}${PTEST_PATH}/tests
|
|
cp -r ${S}/json_test_data/ ${D}${PTEST_PATH}/
|
|
cp -r ${B}/tests/test-* ${D}${PTEST_PATH}/tests
|
|
}
|
|
|
|
|
|
# other packages commonly reference the file directly as "json.hpp"
|
|
# create symlink to allow this usage
|
|
do_install:append() {
|
|
ln -s nlohmann/json.hpp ${D}${includedir}/json.hpp
|
|
}
|