diff options
5 files changed, 335 insertions, 0 deletions
diff --git a/meta-networking/recipes-protocols/vsomeip/vsomeip/0001-Fix-pkgconfig-dir-for-multilib.patch b/meta-networking/recipes-protocols/vsomeip/vsomeip/0001-Fix-pkgconfig-dir-for-multilib.patch new file mode 100644 index 0000000000..1c7eb17b28 --- /dev/null +++ b/meta-networking/recipes-protocols/vsomeip/vsomeip/0001-Fix-pkgconfig-dir-for-multilib.patch | |||
| @@ -0,0 +1,28 @@ | |||
| 1 | From e8a1b7a176398c2a9b5969f1b48ae0e1aa30f4ec Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Yi Zhao <yi.zhao@windriver.com> | ||
| 3 | Date: Wed, 2 Mar 2022 14:51:13 +0800 | ||
| 4 | Subject: [PATCH] Fix pkgconfig dir for multilib | ||
| 5 | |||
| 6 | Upstream-Status: Pending | ||
| 7 | |||
| 8 | Signed-off-by: Yi Zhao <yi.zhao@windriver.com> | ||
| 9 | --- | ||
| 10 | CMakeLists.txt | 2 +- | ||
| 11 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 12 | |||
| 13 | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
| 14 | index add3edda..fea80b4a 100644 | ||
| 15 | --- a/CMakeLists.txt | ||
| 16 | +++ b/CMakeLists.txt | ||
| 17 | @@ -602,7 +602,7 @@ endif() | ||
| 18 | # create pkg-config file | ||
| 19 | if(NOT WIN32) | ||
| 20 | configure_file(${VSOMEIP_NAME}.pc.in ${PROJECT_BINARY_DIR}/${VSOMEIP_NAME}.pc @ONLY) | ||
| 21 | - install(FILES ${PROJECT_BINARY_DIR}/${VSOMEIP_NAME}.pc DESTINATION lib/pkgconfig) | ||
| 22 | + install(FILES ${PROJECT_BINARY_DIR}/${VSOMEIP_NAME}.pc DESTINATION ${INSTALL_LIB_DIR}/pkgconfig) | ||
| 23 | endif() | ||
| 24 | |||
| 25 | ############################################################################## | ||
| 26 | -- | ||
| 27 | 2.25.1 | ||
| 28 | |||
diff --git a/meta-networking/recipes-protocols/vsomeip/vsomeip/0002-Install-example-configuration-files-to-etc-vsomeip.patch b/meta-networking/recipes-protocols/vsomeip/vsomeip/0002-Install-example-configuration-files-to-etc-vsomeip.patch new file mode 100644 index 0000000000..c22ef697b2 --- /dev/null +++ b/meta-networking/recipes-protocols/vsomeip/vsomeip/0002-Install-example-configuration-files-to-etc-vsomeip.patch | |||
| @@ -0,0 +1,28 @@ | |||
| 1 | From aea4c06ee2a0661d0c7b4773e846276a4f10e2e8 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Yi Zhao <yi.zhao@windriver.com> | ||
| 3 | Date: Wed, 9 Mar 2022 11:48:44 +0800 | ||
| 4 | Subject: [PATCH] Install example configuration files to /etc/vsomeip | ||
| 5 | |||
| 6 | Upstream-Status: Inappropriate [configuration] | ||
| 7 | |||
| 8 | Signed-off-by: Yi Zhao <yi.zhao@windriver.com> | ||
| 9 | --- | ||
| 10 | CMakeLists.txt | 2 +- | ||
| 11 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 12 | |||
| 13 | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
| 14 | index fea80b4a..e7a92ec6 100644 | ||
| 15 | --- a/CMakeLists.txt | ||
| 16 | +++ b/CMakeLists.txt | ||
| 17 | @@ -501,7 +501,7 @@ install(FILES ${PROJECT_BINARY_DIR}/vsomeip.pc DESTINATION lib/pkgconfig) | ||
| 18 | endif () | ||
| 19 | |||
| 20 | install ( | ||
| 21 | - FILES ${EXAMPLE_CONFIG_FILES} DESTINATION etc/vsomeip COMPONENT config | ||
| 22 | + FILES ${EXAMPLE_CONFIG_FILES} DESTINATION ${DEFAULT_CONFIGURATION_FOLDER} COMPONENT config | ||
| 23 | ) | ||
| 24 | |||
| 25 | # Add all targets to the build-tree export set | ||
| 26 | -- | ||
| 27 | 2.25.1 | ||
| 28 | |||
diff --git a/meta-networking/recipes-protocols/vsomeip/vsomeip/0003-Do-not-build-external-gtest.patch b/meta-networking/recipes-protocols/vsomeip/vsomeip/0003-Do-not-build-external-gtest.patch new file mode 100644 index 0000000000..370d8a0fe0 --- /dev/null +++ b/meta-networking/recipes-protocols/vsomeip/vsomeip/0003-Do-not-build-external-gtest.patch | |||
| @@ -0,0 +1,160 @@ | |||
| 1 | From e012f91a73af7469ef6f660c3a6a752430a4d649 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Yi Zhao <yi.zhao@windriver.com> | ||
| 3 | Date: Tue, 11 Jul 2023 16:53:46 +0800 | ||
| 4 | Subject: [PATCH] Do not build external gtest | ||
| 5 | |||
| 6 | We don't need to build external gtest since we already depend on | ||
| 7 | googletest. | ||
| 8 | |||
| 9 | Upstream-Status: Inappropriate [embedded specific] | ||
| 10 | |||
| 11 | Signed-off-by: Yi Zhao <yi.zhao@windriver.com> | ||
| 12 | --- | ||
| 13 | CMakeLists.txt | 30 ++---------- | ||
| 14 | test/network_tests/CMakeLists.txt | 80 ------------------------------- | ||
| 15 | 2 files changed, 3 insertions(+), 107 deletions(-) | ||
| 16 | |||
| 17 | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
| 18 | index e7a92ec6..f6c680d4 100644 | ||
| 19 | --- a/CMakeLists.txt | ||
| 20 | +++ b/CMakeLists.txt | ||
| 21 | @@ -18,14 +18,6 @@ set (VSOMEIP_VERSION ${VSOMEIP_MAJOR_VERSION}.${VSOMEIP_MINOR_VERSION}.${VSOMEIP | ||
| 22 | set (PACKAGE_VERSION ${VSOMEIP_VERSION}) # Used in documentation/doxygen.in | ||
| 23 | set (CMAKE_VERBOSE_MAKEFILE off) | ||
| 24 | |||
| 25 | -if (NOT GTEST_ROOT) | ||
| 26 | - if (DEFINED ENV{GTEST_ROOT}) | ||
| 27 | - set(GTEST_ROOT $ENV{GTEST_ROOT}) | ||
| 28 | - else() | ||
| 29 | - set(GTEST_ROOT "n/a" CACHE STRING "Path to root folder of googletest. Must be set for building the tests.") | ||
| 30 | - endif() | ||
| 31 | -endif() | ||
| 32 | - | ||
| 33 | ################################################################################################### | ||
| 34 | # see http://www.cmake.org/Wiki/CMake/Tutorials/How_to_create_a_ProjectConfig.cmake_file | ||
| 35 | ################################################################################################### | ||
| 36 | @@ -630,27 +622,11 @@ find_package(benchmark) | ||
| 37 | ############################################################################## | ||
| 38 | # google test | ||
| 39 | |||
| 40 | -# check for set environment variable | ||
| 41 | -if(${GTEST_ROOT} STREQUAL "n/a") | ||
| 42 | - message(STATUS "GTEST_ROOT is not defined. For building the tests the variable | ||
| 43 | - GTEST_ROOT has to be defined. Tests can not be built.") | ||
| 44 | - # early exit | ||
| 45 | - return() # test can not be build -> make commands build_tests and check are not available | ||
| 46 | -else() | ||
| 47 | - message(STATUS "GTEST_ROOT is set. gtest root path set to ${GTEST_ROOT}") | ||
| 48 | +find_package(GTest) | ||
| 49 | +if (NOT GTest_FOUND) | ||
| 50 | + message(WARNING "GTest is not found. Tests can not be built.") | ||
| 51 | endif() | ||
| 52 | |||
| 53 | -# build google test as static library (always) -> therefore deactivate BUILD_SHARED_LIBS in case it is active | ||
| 54 | -set(BUILD_SHARED_LIBS_AUTOMATIC_OFF 0) | ||
| 55 | -if ("${BUILD_SHARED_LIBS}" STREQUAL "ON") | ||
| 56 | - set(BUILD_SHARED_LIBS OFF) | ||
| 57 | - set(BUILD_SHARED_LIBS_AUTOMATIC_OFF 1) | ||
| 58 | -endif() | ||
| 59 | -add_subdirectory(${GTEST_ROOT} ${CMAKE_CURRENT_BINARY_DIR}/gtest EXCLUDE_FROM_ALL) | ||
| 60 | -if ("${BUILD_SHARED_LIBS_AUTOMATIC_OFF}" STREQUAL "1") | ||
| 61 | - set(BUILD_SHARED_LIBS ON) | ||
| 62 | - set(BUILD_SHARED_LIBS_AUTOMATIC_OFF 0) | ||
| 63 | -endif() | ||
| 64 | |||
| 65 | |||
| 66 | |||
| 67 | diff --git a/test/network_tests/CMakeLists.txt b/test/network_tests/CMakeLists.txt | ||
| 68 | index 6a148604..a501b6a7 100644 | ||
| 69 | --- a/test/network_tests/CMakeLists.txt | ||
| 70 | +++ b/test/network_tests/CMakeLists.txt | ||
| 71 | @@ -3633,86 +3633,6 @@ if(NOT ${TESTS_BAT}) | ||
| 72 | |||
| 73 | endif() | ||
| 74 | |||
| 75 | -############################################################################## | ||
| 76 | -# Add for every test a dependency to gtest | ||
| 77 | -############################################################################## | ||
| 78 | - | ||
| 79 | -if(NOT ${TESTS_BAT}) | ||
| 80 | - add_dependencies(${TEST_CONFIGURATION} gtest) | ||
| 81 | - add_dependencies(${TEST_APPLICATION} gtest) | ||
| 82 | - add_dependencies(${TEST_APPLICATION_SINGLE_PROCESS_NAME} gtest) | ||
| 83 | - add_dependencies(${TEST_APPLICATION_AVAILABILITY_NAME} gtest) | ||
| 84 | - add_dependencies(${TEST_MAGIC_COOKIES_CLIENT} gtest) | ||
| 85 | - add_dependencies(${TEST_MAGIC_COOKIES_SERVICE} gtest) | ||
| 86 | - add_dependencies(${TEST_HEADER_FACTORY} gtest) | ||
| 87 | - add_dependencies(${TEST_HEADER_FACTORY_CLIENT} gtest) | ||
| 88 | - add_dependencies(${TEST_HEADER_FACTORY_SERVICE} gtest) | ||
| 89 | - add_dependencies(${TEST_LOCAL_ROUTING_SERVICE} gtest) | ||
| 90 | - add_dependencies(${TEST_LOCAL_ROUTING_CLIENT} gtest) | ||
| 91 | - add_dependencies(${TEST_EXTERNAL_LOCAL_ROUTING_SERVICE} gtest) | ||
| 92 | - add_dependencies(${TEST_PAYLOAD_SERVICE} gtest) | ||
| 93 | - add_dependencies(${TEST_PAYLOAD_CLIENT} gtest) | ||
| 94 | - add_dependencies(${TEST_BIG_PAYLOAD_SERVICE} gtest) | ||
| 95 | - add_dependencies(${TEST_BIG_PAYLOAD_CLIENT} gtest) | ||
| 96 | - add_dependencies(${TEST_CLIENT_ID_SERVICE} gtest) | ||
| 97 | - add_dependencies(${TEST_CLIENT_ID_UTILITY} gtest) | ||
| 98 | - add_dependencies(${TEST_DEBOUNCE_CLIENT} gtest) | ||
| 99 | - add_dependencies(${TEST_DEBOUNCE_SERVICE} gtest) | ||
| 100 | - add_dependencies(${TEST_SUBSCRIBE_NOTIFY_SERVICE} gtest) | ||
| 101 | - add_dependencies(${TEST_SUBSCRIBE_NOTIFY_ONE_EVENT_TWO_EVENTGROUPS_SERVICE} gtest) | ||
| 102 | - add_dependencies(${TEST_SUBSCRIBE_NOTIFY_ONE_EVENT_TWO_EVENTGROUPS_CLIENT} gtest) | ||
| 103 | - add_dependencies(${TEST_SUBSCRIBE_NOTIFY_ONE_SERVICE} gtest) | ||
| 104 | - add_dependencies(${TEST_CPU_LOAD_SERVICE} gtest) | ||
| 105 | - add_dependencies(${TEST_CPU_LOAD_CLIENT} gtest) | ||
| 106 | - add_dependencies(${TEST_INITIAL_EVENT_SERVICE} gtest) | ||
| 107 | - add_dependencies(${TEST_INITIAL_EVENT_CLIENT} gtest) | ||
| 108 | - add_dependencies(${TEST_INITIAL_EVENT_AVAILABILITY_CHECKER} gtest) | ||
| 109 | - add_dependencies(${TEST_INITIAL_EVENT_STOP_SERVICE} gtest) | ||
| 110 | - add_dependencies(${TEST_OFFER_SERVICE} gtest) | ||
| 111 | - add_dependencies(${TEST_OFFER_CLIENT} gtest) | ||
| 112 | - add_dependencies(${TEST_OFFER_SERVICE_EXTERNAL} gtest) | ||
| 113 | - add_dependencies(${TEST_OFFER_EXTERNAL_SD_MESSAGE_SENDER} gtest) | ||
| 114 | - add_dependencies(${TEST_OFFERED_SERVICES_INFO_CLIENT} gtest) | ||
| 115 | - add_dependencies(${TEST_OFFERED_SERVICES_INFO_SERVICE} gtest) | ||
| 116 | - add_dependencies(${TEST_PENDING_SUBSCRIPTION_SERVICE} gtest) | ||
| 117 | - add_dependencies(${TEST_PENDING_SUBSCRIPTION_CLIENT} gtest) | ||
| 118 | - add_dependencies(${TEST_MALICIOUS_DATA_SERVICE} gtest) | ||
| 119 | - add_dependencies(${TEST_MALICIOUS_DATA_CLIENT} gtest) | ||
| 120 | - if (${TEST_SECURITY}) | ||
| 121 | - add_dependencies(${TEST_SECURITY_SERVICE} gtest) | ||
| 122 | - add_dependencies(${TEST_SECURITY_CLIENT} gtest) | ||
| 123 | - endif() | ||
| 124 | - add_dependencies(${TEST_E2E_SERVICE} gtest) | ||
| 125 | - add_dependencies(${TEST_E2E_CLIENT} gtest) | ||
| 126 | - if (${TEST_E2E_PROFILE_04}) | ||
| 127 | - add_dependencies(${TEST_E2E_PROFILE_04_SERVICE} gtest) | ||
| 128 | - add_dependencies(${TEST_E2E_PROFILE_04_CLIENT} gtest) | ||
| 129 | - endif() | ||
| 130 | - add_dependencies(${TEST_EVENT_SERVICE} gtest) | ||
| 131 | - add_dependencies(${TEST_EVENT_CLIENT} gtest) | ||
| 132 | - add_dependencies(${TEST_NPDU_SERVICE_ONE} gtest) | ||
| 133 | - add_dependencies(${TEST_NPDU_SERVICE_TWO} gtest) | ||
| 134 | - add_dependencies(${TEST_NPDU_SERVICE_THREE} gtest) | ||
| 135 | - add_dependencies(${TEST_NPDU_SERVICE_FOUR} gtest) | ||
| 136 | - add_dependencies(${TEST_NPDU_CLIENT_ONE} gtest) | ||
| 137 | - add_dependencies(${TEST_NPDU_CLIENT_TWO} gtest) | ||
| 138 | - add_dependencies(${TEST_NPDU_CLIENT_THREE} gtest) | ||
| 139 | - add_dependencies(${TEST_NPDU_CLIENT_FOUR} gtest) | ||
| 140 | - add_dependencies(${TEST_NPDU_DAEMON_CLIENT} gtest) | ||
| 141 | - add_dependencies(${TEST_NPDU_DAEMON_SERVICE} gtest) | ||
| 142 | - add_dependencies(${TEST_SOMEIPTP_CLIENT} gtest) | ||
| 143 | - add_dependencies(${TEST_SOMEIPTP_SERVICE} gtest) | ||
| 144 | - if(${TEST_SECOND_ADDRESS}) | ||
| 145 | - add_dependencies(${TEST_SECOND_ADDRESS_CLIENT} gtest) | ||
| 146 | - add_dependencies(${TEST_SECOND_ADDRESS_SERVICE} gtest) | ||
| 147 | - endif() | ||
| 148 | - add_dependencies(${TEST_SUSPEND_RESUME_CLIENT} gtest) | ||
| 149 | - add_dependencies(${TEST_SUSPEND_RESUME_SERVICE} gtest) | ||
| 150 | -else() | ||
| 151 | - add_dependencies(${TEST_LOCAL_ROUTING_SERVICE} gtest) | ||
| 152 | - add_dependencies(${TEST_LOCAL_ROUTING_CLIENT} gtest) | ||
| 153 | -endif() | ||
| 154 | - | ||
| 155 | ############################################################################## | ||
| 156 | # Add tests to the target build_network_tests | ||
| 157 | ############################################################################## | ||
| 158 | -- | ||
| 159 | 2.25.1 | ||
| 160 | |||
diff --git a/meta-networking/recipes-protocols/vsomeip/vsomeip/0004-Do-not-specify-PIE-flag-explicitly.patch b/meta-networking/recipes-protocols/vsomeip/vsomeip/0004-Do-not-specify-PIE-flag-explicitly.patch new file mode 100644 index 0000000000..970a37e50f --- /dev/null +++ b/meta-networking/recipes-protocols/vsomeip/vsomeip/0004-Do-not-specify-PIE-flag-explicitly.patch | |||
| @@ -0,0 +1,47 @@ | |||
| 1 | From 69805f9c8973a7a4d29297f8d50c29c88f981bee Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Yi Zhao <yi.zhao@windriver.com> | ||
| 3 | Date: Mon, 17 Jul 2023 14:33:32 +0800 | ||
| 4 | Subject: [PATCH] Do not specify PIE flag explicitly | ||
| 5 | |||
| 6 | For nodistro distro, packages are built without PIE because | ||
| 7 | security_flags.inc is not included by default. But in vsomeip, the PIE | ||
| 8 | flag is explicitly specified in CMAKE_CXX_FLAGS, which will cause | ||
| 9 | building with PIE even in nodistro, causing an error when linking the | ||
| 10 | googletest static library: | ||
| 11 | |||
| 12 | TOPDIR/tmp-glibc/work/cortexa53-oe-linux/vsomeip/3.1.20.3-r0/recipe-sysroot-native/usr/bin/aarch64-oe-linux/../../libexec/aarch64-oe-linux/gcc/aarch64-oe-linux/12.2.0/ld: | ||
| 13 | TOPDIR/tmp-glibc/work/cortexa53-oe-linux/vsomeip/3.1.20.3-r0/recipe-sysroot/usr/lib/libgtest.a(gtest-all.cc.o)(.text+0x4a90): | ||
| 14 | unresolvable R_AARCH64_ADR_PREL_PG_HI21 relocation against symbol `_ZSt4cerr@@GLIBCXX_3.4' | ||
| 15 | |||
| 16 | Remove PIE flag from CMAKE_CXX_FLAGS and only enable PIE flag by | ||
| 17 | including security_flags.inc. | ||
| 18 | |||
| 19 | Upstream-Status: Inappropriate [embedded specific] | ||
| 20 | |||
| 21 | Signed-off-by: Yi Zhao <yi.zhao@windriver.com> | ||
| 22 | --- | ||
| 23 | CMakeLists.txt | 4 ++-- | ||
| 24 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
| 25 | |||
| 26 | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
| 27 | index f6c680d4..dce1e701 100644 | ||
| 28 | --- a/CMakeLists.txt | ||
| 29 | +++ b/CMakeLists.txt | ||
| 30 | @@ -60,12 +60,12 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Linux") | ||
| 31 | if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") | ||
| 32 | # This is only relevant for GCC and causes warnings on Clang | ||
| 33 | set(EXPORTSYMBOLS "-Wl,-export-dynamic -Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/exportmap.gcc") | ||
| 34 | - set(OS_CXX_FLAGS "${OS_CXX_FLAGS} -pie -Wl,-z,relro,-z,now") | ||
| 35 | + set(OS_CXX_FLAGS "${OS_CXX_FLAGS} -Wl,-z,relro,-z,now") | ||
| 36 | endif() | ||
| 37 | |||
| 38 | set(NO_DEPRECATED "") | ||
| 39 | set(OPTIMIZE "") | ||
| 40 | - set(OS_CXX_FLAGS "${OS_CXX_FLAGS} -D_GLIBCXX_USE_NANOSLEEP -pthread -O -Wall -Wextra -Wformat -Wformat-security -Wconversion -fexceptions -fstrict-aliasing -fstack-protector-strong -fasynchronous-unwind-tables -fno-omit-frame-pointer -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Wpedantic -Werror -fPIE") | ||
| 41 | + set(OS_CXX_FLAGS "${OS_CXX_FLAGS} -D_GLIBCXX_USE_NANOSLEEP -pthread -O -Wall -Wextra -Wformat -Wformat-security -Wconversion -fexceptions -fstrict-aliasing -fstack-protector-strong -fasynchronous-unwind-tables -fno-omit-frame-pointer -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Wpedantic") | ||
| 42 | |||
| 43 | # force all use of std::mutex and std::recursive_mutex to use runtime init | ||
| 44 | # instead of static initialization so mutexes can be hooked to enable PI as needed | ||
| 45 | -- | ||
| 46 | 2.25.1 | ||
| 47 | |||
diff --git a/meta-networking/recipes-protocols/vsomeip/vsomeip_3.3.8.bb b/meta-networking/recipes-protocols/vsomeip/vsomeip_3.3.8.bb new file mode 100644 index 0000000000..b45bd2d63e --- /dev/null +++ b/meta-networking/recipes-protocols/vsomeip/vsomeip_3.3.8.bb | |||
| @@ -0,0 +1,72 @@ | |||
| 1 | SUMMARY = "The implementation of SOME/IP" | ||
| 2 | DESCRIPTION = "The vsomeip stack implements the http://some-ip.com/ \ | ||
| 3 | (Scalable service-Oriented MiddlewarE over IP (SOME/IP)) protocol." | ||
| 4 | HOMEPAGE = "https://github.com/COVESA/vsomeip" | ||
| 5 | SECTION = "net" | ||
| 6 | |||
| 7 | LICENSE = "MPL-2.0" | ||
| 8 | LIC_FILES_CHKSUM = "file://LICENSE;md5=9741c346eef56131163e13b9db1241b3" | ||
| 9 | |||
| 10 | SRC_URI = "git://github.com/GENIVI/${BPN}.git;branch=master;protocol=https;name=vsomeip \ | ||
| 11 | file://0001-Fix-pkgconfig-dir-for-multilib.patch \ | ||
| 12 | file://0002-Install-example-configuration-files-to-etc-vsomeip.patch \ | ||
| 13 | file://0003-Do-not-build-external-gtest.patch \ | ||
| 14 | file://0004-Do-not-specify-PIE-flag-explicitly.patch \ | ||
| 15 | " | ||
| 16 | |||
| 17 | SRCREV = "07464840f503670bc75997b8e926b54734ffa410" | ||
| 18 | |||
| 19 | COMPATIBLE_HOST:mips = "null" | ||
| 20 | COMPATIBLE_HOST:mips64 = "null" | ||
| 21 | COMPATIBLE_HOST:powerpc = "null" | ||
| 22 | COMPATIBLE_HOST:libc-musl = 'null' | ||
| 23 | |||
| 24 | DEPENDS = "boost dlt-daemon googletest" | ||
| 25 | |||
| 26 | S = "${WORKDIR}/git" | ||
| 27 | |||
| 28 | inherit cmake pkgconfig | ||
| 29 | |||
| 30 | EXTRA_OECMAKE = "-DINSTALL_LIB_DIR:PATH=${baselib} \ | ||
| 31 | -DINSTALL_CMAKE_DIR:PATH=${baselib}/cmake/vsomeip3 \ | ||
| 32 | " | ||
| 33 | |||
| 34 | # For vsomeip-test | ||
| 35 | EXTRA_OECMAKE += "-DTEST_IP_MASTER=10.0.3.1 \ | ||
| 36 | -DTEST_IP_SLAVE=10.0.3.2 \ | ||
| 37 | -DTEST_IP_SLAVE_SECOND=10.0.3.3 \ | ||
| 38 | -DTEST_UID=1000 -DTEST_GID=1000 \ | ||
| 39 | " | ||
| 40 | |||
| 41 | RDEPENDS:${PN}-test = "bash lsof" | ||
| 42 | |||
| 43 | do_compile:append() { | ||
| 44 | cmake_runcmake_build --target examples | ||
| 45 | cmake_runcmake_build --target build_tests | ||
| 46 | } | ||
| 47 | |||
| 48 | do_install:append() { | ||
| 49 | install -d ${D}/opt/${PN}-test/examples | ||
| 50 | install -m 0755 ${B}/examples/*-sample ${D}/opt/${PN}-test/examples | ||
| 51 | install -d ${D}/opt/${PN}-test/examples/routingmanagerd | ||
| 52 | install -m 0755 ${B}/examples/routingmanagerd/routingmanagerd \ | ||
| 53 | ${D}/opt/${PN}-test/examples/routingmanagerd | ||
| 54 | |||
| 55 | install -d ${D}/opt/${PN}-test/test/test/common | ||
| 56 | cp -rf ${S}/test/common/examples_policies \ | ||
| 57 | ${D}/opt/${PN}-test/test/test/common/ | ||
| 58 | |||
| 59 | for d in unit_tests network_tests; do | ||
| 60 | install -d ${D}/opt/${PN}-test/test/$d | ||
| 61 | cp -f ${B}/test/$d/*test* ${D}/opt/${PN}-test/test/$d | ||
| 62 | done | ||
| 63 | } | ||
| 64 | |||
| 65 | PACKAGES += "${PN}-test" | ||
| 66 | |||
| 67 | FILES:${PN}-dbg += " \ | ||
| 68 | /opt/${PN}-test/.debug/* \ | ||
| 69 | " | ||
| 70 | FILES:${PN}-test = " \ | ||
| 71 | /opt/${PN}-test \ | ||
| 72 | " | ||
