From 7a772424d70e512976ab806a95fbc887df7c0381 Mon Sep 17 00:00:00 2001 From: Steve Lhomme <robux4@ycbcr.xyz> Date: Mon, 5 Sep 2022 16:25:37 +0200 Subject: [PATCH] contrib: chromaprint: use CMAKE_CXX_IMPLICIT_LINK_LIBRARIES to get the C++ runtime Submitted upstream https://github.com/acoustid/chromaprint/pull/119 --- ...C-runtime-to-the-packages-to-link-to.patch | 39 +++++++++++++++++++ contrib/src/chromaprint/rules.mak | 1 + 2 files changed, 40 insertions(+) create mode 100644 contrib/src/chromaprint/0002-add-the-C-runtime-to-the-packages-to-link-to.patch diff --git a/contrib/src/chromaprint/0002-add-the-C-runtime-to-the-packages-to-link-to.patch b/contrib/src/chromaprint/0002-add-the-C-runtime-to-the-packages-to-link-to.patch new file mode 100644 index 000000000000..ea91691ecaaf --- /dev/null +++ b/contrib/src/chromaprint/0002-add-the-C-runtime-to-the-packages-to-link-to.patch @@ -0,0 +1,39 @@ +From 6726ebef3eec9dcc9d08b2ad6ae352bacb215e5e Mon Sep 17 00:00:00 2001 +From: Steve Lhomme <robux4@ycbcr.xyz> +Date: Mon, 5 Sep 2022 16:13:05 +0200 +Subject: [PATCH 2/2] add the C++ runtime to the packages to link to + +gcc needs libstdc++ and clang needs libc++. +--- + CMakeLists.txt | 15 +++++++++++++++ + 1 file changed, 15 insertions(+) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 0dbd9bd..67fa620 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -197,6 +197,21 @@ else() + endif() + + if(NOT BUILD_FRAMEWORK) ++ foreach(LIB ${CMAKE_CXX_IMPLICIT_LINK_LIBRARIES}) ++ if (LIB MATCHES "-l.*") ++ list(APPEND PKG_CXX_LIBS "${LIB}") ++ else() ++ list(APPEND PKG_CXX_LIBS "-l${LIB}") ++ endif() ++ endforeach() ++ if(PKG_CXX_LIBS) ++ # Blacklist for MinGW-w64 ++ list(REMOVE_ITEM PKG_CXX_LIBS ++ "-lmingw32" "-lgcc_s" "-lgcc" "-lmoldname" "-lmingwex" "-lmingwthrd" ++ "-lmsvcrt" "-lpthread" "-ladvapi32" "-lshell32" "-luser32" "-lkernel32") ++ string(REPLACE ";" " " PKG_LIBS "${PKG_CXX_LIBS}") ++ set(CHROMAPRINT_ADDITIONAL_LIBS "${CHROMAPRINT_ADDITIONAL_LIBS} ${PKG_LIBS}") ++ endif() + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/libchromaprint.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/libchromaprint.pc) + install( + FILES ${CMAKE_CURRENT_BINARY_DIR}/libchromaprint.pc +-- +2.27.0.windows.1 + diff --git a/contrib/src/chromaprint/rules.mak b/contrib/src/chromaprint/rules.mak index 307177f31212..392562e87ad1 100644 --- a/contrib/src/chromaprint/rules.mak +++ b/contrib/src/chromaprint/rules.mak @@ -16,6 +16,7 @@ $(TARBALLS)/chromaprint-$(CHROMAPRINT_VERSION).tar.gz: chromaprint: chromaprint-$(CHROMAPRINT_VERSION).tar.gz .sum-chromaprint $(UNPACK) $(APPLY) $(SRC)/chromaprint/linklibs.patch + $(APPLY) $(SRC)/chromaprint/0002-add-the-C-runtime-to-the-packages-to-link-to.patch $(MOVE) DEPS_chromaprint = ffmpeg $(DEPS_ffmpeg) -- GitLab