Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package aws-crt-cpp for openSUSE:Factory checked in at 2024-12-08 11:37:53 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/aws-crt-cpp (Old) and /work/SRC/openSUSE:Factory/.aws-crt-cpp.new.21547 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "aws-crt-cpp" Sun Dec 8 11:37:53 2024 rev:20 rq:1229003 version:0.29.6 Changes: -------- --- /work/SRC/openSUSE:Factory/aws-crt-cpp/aws-crt-cpp.changes 2024-11-21 15:19:46.076297764 +0100 +++ /work/SRC/openSUSE:Factory/.aws-crt-cpp.new.21547/aws-crt-cpp.changes 2024-12-08 11:38:50.829900696 +0100 @@ -1,0 +2,6 @@ +Wed Dec 4 10:22:45 UTC 2024 - John Paul Adrian Glaubitz <adrian.glaub...@suse.com> + +- Update to version 0.29.6 + * Fix crash when building with _GLIBCXX_USE_CXX11_ABI=0 by @graebm in (#686) + +------------------------------------------------------------------- Old: ---- v0.29.5.tar.gz New: ---- v0.29.6.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ aws-crt-cpp.spec ++++++ --- /var/tmp/diff_new_pack.0EQwB7/_old 2024-12-08 11:38:51.269918976 +0100 +++ /var/tmp/diff_new_pack.0EQwB7/_new 2024-12-08 11:38:51.269918976 +0100 @@ -20,7 +20,7 @@ %define library_soversion 1 Name: aws-crt-cpp -Version: 0.29.5 +Version: 0.29.6 Release: 0 Summary: AWS C++ wrapper for AWS SDK C libraries License: Apache-2.0 ++++++ v0.29.5.tar.gz -> v0.29.6.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-crt-cpp-0.29.5/.github/workflows/ci.yml new/aws-crt-cpp-0.29.6/.github/workflows/ci.yml --- old/aws-crt-cpp-0.29.5/.github/workflows/ci.yml 2024-11-20 18:05:40.000000000 +0100 +++ new/aws-crt-cpp-0.29.6/.github/workflows/ci.yml 2024-11-28 02:18:22.000000000 +0100 @@ -21,7 +21,7 @@ concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true - + jobs: linux-compat-use-openssl: runs-on: ubuntu-22.04 # latest @@ -143,6 +143,14 @@ aws s3 cp s3://aws-crt-test-stuff/ci/${{ env.BUILDER_VERSION }}/linux-container-ci.sh ./linux-container-ci.sh && chmod a+x ./linux-container-ci.sh ./linux-container-ci.sh ${{ env.BUILDER_VERSION }} aws-crt-${{ env.LINUX_BASE_IMAGE }} build -p ${{ env.PACKAGE_NAME }} --compiler=${{ matrix.compiler }} --cmake-extra=-DBUILD_SHARED_LIBS=ON + linux-glibcxx-ancient-abi: + runs-on: ubuntu-24.04 # latest + steps: + - name: Build ${{ env.PACKAGE_NAME }} + run: | + aws s3 cp s3://aws-crt-test-stuff/ci/${{ env.BUILDER_VERSION }}/linux-container-ci.sh ./linux-container-ci.sh && chmod a+x ./linux-container-ci.sh + ./linux-container-ci.sh ${{ env.BUILDER_VERSION }} aws-crt-${{ env.LINUX_BASE_IMAGE }} build -p ${{ env.PACKAGE_NAME }} --compiler=gcc-11 --cmake-extra=-DBUILD_SHARED_LIBS=ON --cmake-extra=-DCMAKE_CXX_FLAGS=-D_GLIBCXX_USE_CXX11_ABI=0 + linux-openssl-static: runs-on: ubuntu-22.04 # latest steps: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-crt-cpp-0.29.5/CMakeLists.txt new/aws-crt-cpp-0.29.6/CMakeLists.txt --- old/aws-crt-cpp-0.29.5/CMakeLists.txt 2024-11-20 18:05:40.000000000 +0100 +++ new/aws-crt-cpp-0.29.6/CMakeLists.txt 2024-11-28 02:18:22.000000000 +0100 @@ -298,9 +298,19 @@ set_target_properties(${PROJECT_NAME} PROPERTIES CXX_STANDARD ${CMAKE_CXX_STANDARD}) # Hide symbols by default -# Except for ancient GCC, because it leads to crashes in shared-lib builds -# see: https://github.com/awslabs/aws-crt-cpp/pull/675 -if(NOT (CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS "5.0")) +# Except where it causes problems, and the situation is weird enough that it's not worth investigating further. +# +# We've seen people set _GLIBCXX_USE_CXX11_ABI=0 which forces GCC to use it's pre-C++11 string implementation, +# which leads to crashes on shared-lib builds. Search every variant of CXX_FLAGS to see if it's set. +string(FIND "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_DEBUG} ${CMAKE_CXX_FLAGS_RELEASE} ${CMAKE_CXX_FLAGS_RELWITHDEBINFO} ${CMAKE_CXX_FLAGS_MINSIZEREL}" + "-D_GLIBCXX_USE_CXX11_ABI=0" found_ancient_abi_flag) +if(found_ancient_abi_flag GREATER -1) + message(WARNING "_GLIBCXX_USE_CXX11_ABI=0 is set. Making all symbols visible to prevent weird crashes") +elseif(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS "5.0") + # Ancient GCC leads to crashes in shared-lib builds + # see: https://github.com/awslabs/aws-crt-cpp/pull/675 + message(WARNING "Ancient compiler (${CMAKE_CXX_COMPILER_ID} ${CMAKE_CXX_COMPILER_VERSION}). Making all symbols visible to prevent weird crashes") +else() set_target_properties(${PROJECT_NAME} PROPERTIES CXX_VISIBILITY_PRESET hidden VISIBILITY_INLINES_HIDDEN ON) endif() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-crt-cpp-0.29.5/VERSION new/aws-crt-cpp-0.29.6/VERSION --- old/aws-crt-cpp-0.29.5/VERSION 2024-11-20 18:05:40.000000000 +0100 +++ new/aws-crt-cpp-0.29.6/VERSION 2024-11-28 02:18:22.000000000 +0100 @@ -1 +1 @@ -0.29.5 +0.29.6