From e1c4be9bd47cb77c70b8ffe8f3b2abdb1e911318 Mon Sep 17 00:00:00 2001 From: Yi Zhao Date: Mon, 1 Jan 2024 17:32:25 +0800 Subject: vsomeip: upgrade 3.3.8 -> 3.4.10 ChangeLog: https://github.com/COVESA/vsomeip/releases/tag/3.4.10 * Refresh patches * Fix build for lld Signed-off-by: Yi Zhao Signed-off-by: Khem Raj --- .../0001-Fix-pkgconfig-dir-for-multilib.patch | 6 +- ...xample-configuration-files-to-etc-vsomeip.patch | 6 +- .../vsomeip/0003-Do-not-build-external-gtest.patch | 59 ++++++++++++----- .../0004-Do-not-specify-PIE-flag-explicitly.patch | 8 +-- ...-CMakeLists.txt-add-missing-link-with-dlt.patch | 41 ++++++++++++ .../recipes-protocols/vsomeip/vsomeip_3.3.8.bb | 72 --------------------- .../recipes-protocols/vsomeip/vsomeip_3.4.10.bb | 75 ++++++++++++++++++++++ 7 files changed, 169 insertions(+), 98 deletions(-) create mode 100644 meta-networking/recipes-protocols/vsomeip/vsomeip/0005-test-common-CMakeLists.txt-add-missing-link-with-dlt.patch delete mode 100644 meta-networking/recipes-protocols/vsomeip/vsomeip_3.3.8.bb create mode 100644 meta-networking/recipes-protocols/vsomeip/vsomeip_3.4.10.bb (limited to 'meta-networking') 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 index 1c7eb17b28..0ddcb642bc 100644 --- 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 @@ -1,4 +1,4 @@ -From e8a1b7a176398c2a9b5969f1b48ae0e1aa30f4ec Mon Sep 17 00:00:00 2001 +From 2f931baf290477b586309189445bf87e3bc5d5ba Mon Sep 17 00:00:00 2001 From: Yi Zhao Date: Wed, 2 Mar 2022 14:51:13 +0800 Subject: [PATCH] Fix pkgconfig dir for multilib @@ -11,10 +11,10 @@ Signed-off-by: Yi Zhao 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index add3edda..fea80b4a 100644 +index ab399a69..beae6eaf 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -602,7 +602,7 @@ endif() +@@ -637,7 +637,7 @@ endif() # create pkg-config file if(NOT WIN32) configure_file(${VSOMEIP_NAME}.pc.in ${PROJECT_BINARY_DIR}/${VSOMEIP_NAME}.pc @ONLY) 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 index c22ef697b2..bdaf343606 100644 --- 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 @@ -1,4 +1,4 @@ -From aea4c06ee2a0661d0c7b4773e846276a4f10e2e8 Mon Sep 17 00:00:00 2001 +From ebaa3206ee125741314272cddafa04fa71bd2d1e Mon Sep 17 00:00:00 2001 From: Yi Zhao Date: Wed, 9 Mar 2022 11:48:44 +0800 Subject: [PATCH] Install example configuration files to /etc/vsomeip @@ -11,10 +11,10 @@ Signed-off-by: Yi Zhao 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index fea80b4a..e7a92ec6 100644 +index beae6eaf..d791c12e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -501,7 +501,7 @@ install(FILES ${PROJECT_BINARY_DIR}/vsomeip.pc DESTINATION lib/pkgconfig) +@@ -536,7 +536,7 @@ install(FILES ${PROJECT_BINARY_DIR}/vsomeip.pc DESTINATION lib/pkgconfig) endif () install ( 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 index 370d8a0fe0..09dab9a8b0 100644 --- 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 @@ -1,4 +1,4 @@ -From e012f91a73af7469ef6f660c3a6a752430a4d649 Mon Sep 17 00:00:00 2001 +From b1bf398015bc090020459954e5cd1ec3b51b8ac3 Mon Sep 17 00:00:00 2001 From: Yi Zhao Date: Tue, 11 Jul 2023 16:53:46 +0800 Subject: [PATCH] Do not build external gtest @@ -10,15 +10,16 @@ Upstream-Status: Inappropriate [embedded specific] Signed-off-by: Yi Zhao --- - CMakeLists.txt | 30 ++---------- - test/network_tests/CMakeLists.txt | 80 ------------------------------- - 2 files changed, 3 insertions(+), 107 deletions(-) + CMakeLists.txt | 11 ---- + test/CMakeLists.txt | 22 +------ + test/network_tests/CMakeLists.txt | 99 ------------------------------- + 3 files changed, 3 insertions(+), 129 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index e7a92ec6..f6c680d4 100644 +index d791c12e..f1bcba27 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -18,14 +18,6 @@ set (VSOMEIP_VERSION ${VSOMEIP_MAJOR_VERSION}.${VSOMEIP_MINOR_VERSION}.${VSOMEIP +@@ -18,17 +18,6 @@ set (VSOMEIP_VERSION ${VSOMEIP_MAJOR_VERSION}.${VSOMEIP_MINOR_VERSION}.${VSOMEIP set (PACKAGE_VERSION ${VSOMEIP_VERSION}) # Used in documentation/doxygen.in set (CMAKE_VERBOSE_MAKEFILE off) @@ -26,16 +27,23 @@ index e7a92ec6..f6c680d4 100644 - if (DEFINED ENV{GTEST_ROOT}) - set(GTEST_ROOT $ENV{GTEST_ROOT}) - else() -- set(GTEST_ROOT "n/a" CACHE STRING "Path to root folder of googletest. Must be set for building the tests.") +- include(FetchContent) +- FetchContent_Declare(googletest GIT_REPOSITORY https://github.com/google/googletest.git GIT_TAG v1.14.0) +- FetchContent_Populate(googletest) +- set(GTEST_ROOT ${googletest_SOURCE_DIR}) - endif() -endif() - ################################################################################################### # see http://www.cmake.org/Wiki/CMake/Tutorials/How_to_create_a_ProjectConfig.cmake_file ################################################################################################### -@@ -630,27 +622,11 @@ find_package(benchmark) - ############################################################################## - # google test +diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt +index f66ac5d3..6f09bf40 100644 +--- a/test/CMakeLists.txt ++++ b/test/CMakeLists.txt +@@ -17,27 +17,11 @@ find_package(benchmark) + # remove export symbols from the cxx flags + string(REPLACE "${EXPORTSYMBOLS}" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") -# check for set environment variable -if(${GTEST_ROOT} STREQUAL "n/a") @@ -62,13 +70,13 @@ index e7a92ec6..f6c680d4 100644 - set(BUILD_SHARED_LIBS_AUTOMATIC_OFF 0) -endif() - - + ############################################################################## + # build tests diff --git a/test/network_tests/CMakeLists.txt b/test/network_tests/CMakeLists.txt -index 6a148604..a501b6a7 100644 +index 883cc5cf..9a2a4f5e 100644 --- a/test/network_tests/CMakeLists.txt +++ b/test/network_tests/CMakeLists.txt -@@ -3633,86 +3633,6 @@ if(NOT ${TESTS_BAT}) +@@ -4116,105 +4116,6 @@ if(NOT ${TESTS_BAT}) endif() @@ -97,6 +105,12 @@ index 6a148604..a501b6a7 100644 - add_dependencies(${TEST_CLIENT_ID_UTILITY} gtest) - add_dependencies(${TEST_DEBOUNCE_CLIENT} gtest) - add_dependencies(${TEST_DEBOUNCE_SERVICE} gtest) +- add_dependencies(${TEST_DEBOUNCE_FILTER_CLIENT} gtest) +- add_dependencies(${TEST_DEBOUNCE_FILTER_SERVICE} gtest) +- add_dependencies(${TEST_DEBOUNCE_CALLBACK_CLIENT} gtest) +- add_dependencies(${TEST_DEBOUNCE_CALLBACK_SERVICE} gtest) +- add_dependencies(${TEST_DEBOUNCE_FREQUENCY_CLIENT} gtest) +- add_dependencies(${TEST_DEBOUNCE_FREQUENCY_SERVICE} gtest) - add_dependencies(${TEST_SUBSCRIBE_NOTIFY_SERVICE} gtest) - add_dependencies(${TEST_SUBSCRIBE_NOTIFY_ONE_EVENT_TWO_EVENTGROUPS_SERVICE} gtest) - add_dependencies(${TEST_SUBSCRIBE_NOTIFY_ONE_EVENT_TWO_EVENTGROUPS_CLIENT} gtest) @@ -127,8 +141,13 @@ index 6a148604..a501b6a7 100644 - add_dependencies(${TEST_E2E_PROFILE_04_SERVICE} gtest) - add_dependencies(${TEST_E2E_PROFILE_04_CLIENT} gtest) - endif() +- if (${TEST_E2E_PROFILE_07}) +- add_dependencies(${TEST_E2E_PROFILE_07_SERVICE} gtest) +- add_dependencies(${TEST_E2E_PROFILE_07_CLIENT} gtest) +- endif() - add_dependencies(${TEST_EVENT_SERVICE} gtest) - add_dependencies(${TEST_EVENT_CLIENT} gtest) +- if (NOT ${CMAKE_SYSTEM_NAME} MATCHES "QNX") - add_dependencies(${TEST_NPDU_SERVICE_ONE} gtest) - add_dependencies(${TEST_NPDU_SERVICE_TWO} gtest) - add_dependencies(${TEST_NPDU_SERVICE_THREE} gtest) @@ -139,6 +158,7 @@ index 6a148604..a501b6a7 100644 - add_dependencies(${TEST_NPDU_CLIENT_FOUR} gtest) - add_dependencies(${TEST_NPDU_DAEMON_CLIENT} gtest) - add_dependencies(${TEST_NPDU_DAEMON_SERVICE} gtest) +- endif() - add_dependencies(${TEST_SOMEIPTP_CLIENT} gtest) - add_dependencies(${TEST_SOMEIPTP_SERVICE} gtest) - if(${TEST_SECOND_ADDRESS}) @@ -148,13 +168,20 @@ index 6a148604..a501b6a7 100644 - add_dependencies(${TEST_SUSPEND_RESUME_CLIENT} gtest) - add_dependencies(${TEST_SUSPEND_RESUME_SERVICE} gtest) -else() +- add_dependencies(${TEST_APPLICATION} gtest) +- add_dependencies(${TEST_HEADER_FACTORY} gtest) +- add_dependencies(${TEST_HEADER_FACTORY_CLIENT} gtest) +- add_dependencies(${TEST_HEADER_FACTORY_SERVICE} gtest) +- add_dependencies(${TEST_PAYLOAD_SERVICE} gtest) +- add_dependencies(${TEST_PAYLOAD_CLIENT} gtest) +- add_dependencies(${TEST_BIG_PAYLOAD_SERVICE} gtest) +- add_dependencies(${TEST_BIG_PAYLOAD_CLIENT} gtest) - add_dependencies(${TEST_LOCAL_ROUTING_SERVICE} gtest) - add_dependencies(${TEST_LOCAL_ROUTING_CLIENT} gtest) -endif() -- + ############################################################################## # Add tests to the target build_network_tests - ############################################################################## -- 2.25.1 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 index 970a37e50f..4bb2318555 100644 --- 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 @@ -1,4 +1,4 @@ -From 69805f9c8973a7a4d29297f8d50c29c88f981bee Mon Sep 17 00:00:00 2001 +From ec2d36466c9050ee282ea1c3bb1b5f1f61c96ecb Mon Sep 17 00:00:00 2001 From: Yi Zhao Date: Mon, 17 Jul 2023 14:33:32 +0800 Subject: [PATCH] Do not specify PIE flag explicitly @@ -24,15 +24,15 @@ Signed-off-by: Yi Zhao 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index f6c680d4..dce1e701 100644 +index f1bcba27..2653a4df 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -60,12 +60,12 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Linux") if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") # This is only relevant for GCC and causes warnings on Clang set(EXPORTSYMBOLS "-Wl,-export-dynamic -Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/exportmap.gcc") -- set(OS_CXX_FLAGS "${OS_CXX_FLAGS} -pie -Wl,-z,relro,-z,now") -+ set(OS_CXX_FLAGS "${OS_CXX_FLAGS} -Wl,-z,relro,-z,now") +- set(OS_CXX_FLAGS "${OS_CXX_FLAGS} -pie -Wno-tsan -Wl,-z,relro,-z,now") ++ set(OS_CXX_FLAGS "${OS_CXX_FLAGS} -Wno-tsan -Wl,-z,relro,-z,now") endif() set(NO_DEPRECATED "") diff --git a/meta-networking/recipes-protocols/vsomeip/vsomeip/0005-test-common-CMakeLists.txt-add-missing-link-with-dlt.patch b/meta-networking/recipes-protocols/vsomeip/vsomeip/0005-test-common-CMakeLists.txt-add-missing-link-with-dlt.patch new file mode 100644 index 0000000000..25d66514f8 --- /dev/null +++ b/meta-networking/recipes-protocols/vsomeip/vsomeip/0005-test-common-CMakeLists.txt-add-missing-link-with-dlt.patch @@ -0,0 +1,41 @@ +From 8676ef287bb25b49668be4336387bdf83a0cae5c Mon Sep 17 00:00:00 2001 +From: Yi Zhao +Date: Mon, 1 Jan 2024 17:02:41 +0800 +Subject: [PATCH] test/common/CMakeLists.txt: add missing link with dlt + +The libvsomeip_utilities library uses functions e.g. +dlt_check_library_version/dlt_register_app/dlt_unregister_app which are +provided by dlt therefore add it to linker flags. + +Fixes: +x86_64-poky-linux-ld.lld: error: undefined reference due to --no-allow-shlib-undefined: dlt_check_library_version +>>> referenced by test/common/libvsomeip_utilities.so + +x86_64-poky-linux-ld.lld: error: undefined reference due to --no-allow-shlib-undefined: dlt_register_app +>>> referenced by test/common/libvsomeip_utilities.so + +x86_64-poky-linux-ld.lld: error: undefined reference due to --no-allow-shlib-undefined: dlt_unregister_app +>>> referenced by test/common/libvsomeip_utilities.so + +Upstream-Status: Submitted [https://github.com/COVESA/vsomeip/pull/602] + +Signed-off-by: Yi Zhao +--- + test/common/CMakeLists.txt | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/test/common/CMakeLists.txt b/test/common/CMakeLists.txt +index d4d14534..afc8c2d6 100644 +--- a/test/common/CMakeLists.txt ++++ b/test/common/CMakeLists.txt +@@ -27,6 +27,7 @@ TARGET_LINK_LIBRARIES ( + ${Boost_LIBRARIES} + ${DL_LIBRARY} + ${TEST_LINK_LIBRARIES} ++ ${DLT_LIBRARIES} + ) + + # ---------------------------------------------------------------------------- +-- +2.25.1 + diff --git a/meta-networking/recipes-protocols/vsomeip/vsomeip_3.3.8.bb b/meta-networking/recipes-protocols/vsomeip/vsomeip_3.3.8.bb deleted file mode 100644 index b45bd2d63e..0000000000 --- a/meta-networking/recipes-protocols/vsomeip/vsomeip_3.3.8.bb +++ /dev/null @@ -1,72 +0,0 @@ -SUMMARY = "The implementation of SOME/IP" -DESCRIPTION = "The vsomeip stack implements the http://some-ip.com/ \ -(Scalable service-Oriented MiddlewarE over IP (SOME/IP)) protocol." -HOMEPAGE = "https://github.com/COVESA/vsomeip" -SECTION = "net" - -LICENSE = "MPL-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=9741c346eef56131163e13b9db1241b3" - -SRC_URI = "git://github.com/GENIVI/${BPN}.git;branch=master;protocol=https;name=vsomeip \ - file://0001-Fix-pkgconfig-dir-for-multilib.patch \ - file://0002-Install-example-configuration-files-to-etc-vsomeip.patch \ - file://0003-Do-not-build-external-gtest.patch \ - file://0004-Do-not-specify-PIE-flag-explicitly.patch \ - " - -SRCREV = "07464840f503670bc75997b8e926b54734ffa410" - -COMPATIBLE_HOST:mips = "null" -COMPATIBLE_HOST:mips64 = "null" -COMPATIBLE_HOST:powerpc = "null" -COMPATIBLE_HOST:libc-musl = 'null' - -DEPENDS = "boost dlt-daemon googletest" - -S = "${WORKDIR}/git" - -inherit cmake pkgconfig - -EXTRA_OECMAKE = "-DINSTALL_LIB_DIR:PATH=${baselib} \ - -DINSTALL_CMAKE_DIR:PATH=${baselib}/cmake/vsomeip3 \ - " - -# For vsomeip-test -EXTRA_OECMAKE += "-DTEST_IP_MASTER=10.0.3.1 \ - -DTEST_IP_SLAVE=10.0.3.2 \ - -DTEST_IP_SLAVE_SECOND=10.0.3.3 \ - -DTEST_UID=1000 -DTEST_GID=1000 \ - " - -RDEPENDS:${PN}-test = "bash lsof" - -do_compile:append() { - cmake_runcmake_build --target examples - cmake_runcmake_build --target build_tests -} - -do_install:append() { - install -d ${D}/opt/${PN}-test/examples - install -m 0755 ${B}/examples/*-sample ${D}/opt/${PN}-test/examples - install -d ${D}/opt/${PN}-test/examples/routingmanagerd - install -m 0755 ${B}/examples/routingmanagerd/routingmanagerd \ - ${D}/opt/${PN}-test/examples/routingmanagerd - - install -d ${D}/opt/${PN}-test/test/test/common - cp -rf ${S}/test/common/examples_policies \ - ${D}/opt/${PN}-test/test/test/common/ - - for d in unit_tests network_tests; do - install -d ${D}/opt/${PN}-test/test/$d - cp -f ${B}/test/$d/*test* ${D}/opt/${PN}-test/test/$d - done -} - -PACKAGES += "${PN}-test" - -FILES:${PN}-dbg += " \ - /opt/${PN}-test/.debug/* \ - " -FILES:${PN}-test = " \ - /opt/${PN}-test \ - " diff --git a/meta-networking/recipes-protocols/vsomeip/vsomeip_3.4.10.bb b/meta-networking/recipes-protocols/vsomeip/vsomeip_3.4.10.bb new file mode 100644 index 0000000000..4c38970205 --- /dev/null +++ b/meta-networking/recipes-protocols/vsomeip/vsomeip_3.4.10.bb @@ -0,0 +1,75 @@ +SUMMARY = "The implementation of SOME/IP" +DESCRIPTION = "The vsomeip stack implements the http://some-ip.com/ \ +(Scalable service-Oriented MiddlewarE over IP (SOME/IP)) protocol." +HOMEPAGE = "https://github.com/COVESA/vsomeip" +SECTION = "net" + +LICENSE = "MPL-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=9741c346eef56131163e13b9db1241b3" + +SRC_URI = "git://github.com/GENIVI/${BPN}.git;branch=master;protocol=https;name=vsomeip \ + file://0001-Fix-pkgconfig-dir-for-multilib.patch \ + file://0002-Install-example-configuration-files-to-etc-vsomeip.patch \ + file://0003-Do-not-build-external-gtest.patch \ + file://0004-Do-not-specify-PIE-flag-explicitly.patch \ + file://0005-test-common-CMakeLists.txt-add-missing-link-with-dlt.patch \ + " + +SRCREV = "02c199dff8aba814beebe3ca417fd991058fe90c" + +COMPATIBLE_HOST:mips = "null" +COMPATIBLE_HOST:mips64 = "null" +COMPATIBLE_HOST:powerpc = "null" +COMPATIBLE_HOST:libc-musl = 'null' + +DEPENDS = "boost dlt-daemon googletest" + +S = "${WORKDIR}/git" + +inherit cmake pkgconfig + +EXTRA_OECMAKE = "-DINSTALL_LIB_DIR:PATH=${baselib} \ + -DINSTALL_CMAKE_DIR:PATH=${baselib}/cmake/vsomeip3 \ + " + +# For vsomeip-test +EXTRA_OECMAKE += "-DTEST_IP_MASTER=10.0.3.1 \ + -DTEST_IP_SLAVE=10.0.3.2 \ + -DTEST_IP_SLAVE_SECOND=10.0.3.3 \ + -DTEST_UID=1000 -DTEST_GID=1000 \ + " + +RDEPENDS:${PN}-test = "bash lsof" + +do_compile:append() { + cmake_runcmake_build --target examples + cmake_runcmake_build --target build_tests +} + +do_install:append() { + install -d ${D}/opt/${PN}-test/examples + install -m 0755 ${B}/examples/*-sample ${D}/opt/${PN}-test/examples + install -d ${D}/opt/${PN}-test/examples/routingmanagerd + install -m 0755 ${B}/examples/routingmanagerd/routingmanagerd \ + ${D}/opt/${PN}-test/examples/routingmanagerd + + install -d ${D}/opt/${PN}-test/test/test/common + cp -rf ${S}/test/common/examples_policies \ + ${D}/opt/${PN}-test/test/test/common/ + install -m 0755 ${B}/test/common/libvsomeip_utilities.so \ + ${D}/opt/${PN}-test/test/test/common/ + + for d in unit_tests network_tests; do + install -d ${D}/opt/${PN}-test/test/$d + cp -f ${B}/test/$d/*test* ${D}/opt/${PN}-test/test/$d + done +} + +PACKAGES += "${PN}-test" + +FILES:${PN}-dbg += " \ + /opt/${PN}-test/.debug/* \ + " +FILES:${PN}-test = " \ + /opt/${PN}-test \ + " -- cgit v1.2.3-54-g00ecf