diff --git a/recipes-sdk/aws-sdk-cpp/aws-sdk-cpp_1.11.793.bb b/recipes-sdk/aws-sdk-cpp/aws-sdk-cpp_1.11.793.bb index 6f147f0d69..a1617caef8 100644 --- a/recipes-sdk/aws-sdk-cpp/aws-sdk-cpp_1.11.793.bb +++ b/recipes-sdk/aws-sdk-cpp/aws-sdk-cpp_1.11.793.bb @@ -21,9 +21,13 @@ SRC_URI = "\ file://ptest_result.py \ " +<<<<<<<< HEAD:recipes-sdk/aws-sdk-cpp/aws-sdk-cpp_1.11.793.bb SRCREV = "7fe885d2fd5fae774f0e5f0821b76d0faea20c69" S = "${WORKDIR}/git" +======== +SRCREV = "cfaa2bbf96a1ecf471b644b6b2f0bdf7c3b10dfe" +>>>>>>>> 9086221d2 (aws-sdk-cpp: upgrade 1.11.838 -> 1.11.839):recipes-sdk/aws-sdk-cpp/aws-sdk-cpp_1.11.839.bb inherit cmake ptest pkgconfig diff --git a/recipes-sdk/aws-sdk-cpp/aws-sdk-cpp_1.11.839.bb b/recipes-sdk/aws-sdk-cpp/aws-sdk-cpp_1.11.839.bb new file mode 100644 index 0000000000..a1617caef8 --- /dev/null +++ b/recipes-sdk/aws-sdk-cpp/aws-sdk-cpp_1.11.839.bb @@ -0,0 +1,106 @@ +SUMMARY = "AWS C++ SDK" +DESCRIPTION = "AWS C++ SDK and ptest" +HOMEPAGE = "https://github.com/aws/aws-sdk-cpp" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e" + +COMPATIBLE_MACHINE:riscv64 = "null" + +DEPENDS += "\ + aws-crt-cpp \ + curl \ +" + +AWS_SDK_PACKAGES = "" + +PACKAGES_DYNAMIC = "^${PN}-.*" + +SRC_URI = "\ + git://github.com/aws/aws-sdk-cpp.git;protocol=https;branch=main \ + file://run-ptest \ + file://ptest_result.py \ + " + +<<<<<<<< HEAD:recipes-sdk/aws-sdk-cpp/aws-sdk-cpp_1.11.793.bb +SRCREV = "7fe885d2fd5fae774f0e5f0821b76d0faea20c69" + +S = "${WORKDIR}/git" +======== +SRCREV = "cfaa2bbf96a1ecf471b644b6b2f0bdf7c3b10dfe" +>>>>>>>> 9086221d2 (aws-sdk-cpp: upgrade 1.11.838 -> 1.11.839):recipes-sdk/aws-sdk-cpp/aws-sdk-cpp_1.11.839.bb + +inherit cmake ptest pkgconfig + +PACKAGECONFIG ?= "\ + ${@bb.utils.filter('DISTRO_FEATURES', 'pulseaudio', d)} \ + ${@bb.utils.contains('PTEST_ENABLED', '1', 'with-tests', '', d)} \ + " + +PACKAGECONFIG:append:x86-64 = " ${@bb.utils.contains('PTEST_ENABLED', '1', 'sanitize', '', d)}" + +PACKAGECONFIG[pulseaudio] = "-DPULSEAUDIO=TRUE, -DPULSEAUDIO=FALSE, pulseaudio" + +# CMAKE_CROSSCOMPILING=OFF will enable build of unit tests +PACKAGECONFIG[with-tests] = "-DENABLE_TESTING=ON -DAUTORUN_UNIT_TESTS=OFF -DCMAKE_CROSSCOMPILING=OFF,-DENABLE_TESTING=OFF -DAUTORUN_UNIT_TESTS=OFF, googletest" + +python populate_packages:prepend () { + packages = [] + def hook(f, pkg, file_regex, output_pattern, modulename): + packages.append(pkg) + + # Put the libraries into separate packages + do_split_packages(d, d.expand('${libdir}'), r'^lib(.*)\.so$', '%s', 'library for %s', extra_depends='', prepend=True, hook=hook) + + d.setVar("AWS_SDK_PACKAGES", " ".join(packages)) + +} + +# enable PACKAGECONFIG = "static" to build static instead of shared libs +PACKAGECONFIG[static] = "-DBUILD_SHARED_LIBS=OFF,-DBUILD_SHARED_LIBS=ON" + +# Notify that libraries are not versioned +FILES_SOLIBSDEV = "" + +# -Werror will cause deprecation warnings to fail the build e.g. OpenSSL cause one, so disable these warnings +OECMAKE_CXX_FLAGS += "-Wno-deprecated-declarations" + +# note: variable tracking size limit exceeded with '-fvar-tracking-assignments', retrying without +OECMAKE_CXX_FLAGS += "-fno-var-tracking" + +# -Wno-maybe-uninitialized is related to this: https://github.com/aws/aws-sdk-cpp/issues/2234 +OECMAKE_CXX_FLAGS += "${@bb.utils.contains('PTEST_ENABLED', '1', '-Wno-maybe-uninitialized', '', d)}" + +OECMAKE_CXX_FLAGS += "-Wno-psabi" + +EXTRA_OECMAKE += "\ + -DBUILD_DEPS=OFF \ + -DCMAKE_MODULE_PATH=${STAGING_LIBDIR}/cmake \ +" + +EXTRA_OECMAKE:append = " -DCMAKE_BUILD_TYPE=RelWithDebInfo" + +RDEPENDS:${PN}-ptest += "\ + bash \ + python3 \ +" +# "aws-sdk-cpp" is a meta package which pulls in all aws-sdk-cpp libraries +ALLOW_EMPTY:${PN} = "1" +RRECOMMENDS:${PN} += "${AWS_SDK_PACKAGES}" +RRECOMMENDS:${PN}:class-native = "" + +do_install_ptest () { + install -d ${D}${PTEST_PATH}/tests + find ${B}/generated/tests -executable -type f -exec install -m 0755 "{}" ${D}${PTEST_PATH}/tests/ \; + install -m 0755 ${WORKDIR}/ptest_result.py ${D}${PTEST_PATH}/ +} + +# nooelint: oelint.vars.insaneskip:INSANE_SKIP - this is related to this issue https://github.com/aws/aws-sdk-cpp/issues/2242 +INSANE_SKIP:${PN}-src:append:class-target = " buildpaths" + +# nooelint: oelint.vars.insaneskip:INSANE_SKIP - -fsanitize=address does cause this +INSANE_SKIP += "${@bb.utils.contains('PACKAGECONFIG', 'sanitize', 'buildpaths', '', d)}" +PACKAGECONFIG[sanitize] = ",,gcc-sanitizers" +OECMAKE_CXX_FLAGS += "${@bb.utils.contains('PACKAGECONFIG', 'sanitize', '-fsanitize=address,undefined -fno-omit-frame-pointer', '', d)}" + +# nooelint: oelint.vars.insaneskip:INSANE_SKIP +INSANE_SKIP:${PN}-dev += "buildpaths"