aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/chromaprint
diff options
context:
space:
mode:
authorEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
committerEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
commit54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch)
treed915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/chromaprint
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/chromaprint')
-rw-r--r--vcpkg/ports/chromaprint/pkgconfig-cxx-linkage.diff21
-rw-r--r--vcpkg/ports/chromaprint/pkgconfig-dependencies.diff46
-rw-r--r--vcpkg/ports/chromaprint/portfile.cmake26
-rw-r--r--vcpkg/ports/chromaprint/vcpkg.json24
4 files changed, 117 insertions, 0 deletions
diff --git a/vcpkg/ports/chromaprint/pkgconfig-cxx-linkage.diff b/vcpkg/ports/chromaprint/pkgconfig-cxx-linkage.diff
new file mode 100644
index 0000000..6b997a5
--- /dev/null
+++ b/vcpkg/ports/chromaprint/pkgconfig-cxx-linkage.diff
@@ -0,0 +1,21 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index eae99d4..141bfe1 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -197,6 +197,16 @@ else()
+ endif()
+
+ if(NOT BUILD_FRAMEWORK)
++ foreach(lib IN LISTS CMAKE_CXX_IMPLICIT_LINK_LIBRARIES)
++ if(lib IN_LIST CMAKE_C_IMPLICIT_LINK_LIBRARIES)
++ continue()
++ elseif(EXISTS "${lib}")
++ string(APPEND PC_LIBS_PRIVATE " ${CMAKE_LINK_LIBRARY_FILE_FLAG}${lib}")
++ else()
++ string(APPEND PC_LIBS_PRIVATE " ${CMAKE_LINK_LIBRARY_FLAG}${lib}")
++ endif()
++ endforeach()
++
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/libchromaprint.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/libchromaprint.pc)
+ install(
+ FILES ${CMAKE_CURRENT_BINARY_DIR}/libchromaprint.pc
diff --git a/vcpkg/ports/chromaprint/pkgconfig-dependencies.diff b/vcpkg/ports/chromaprint/pkgconfig-dependencies.diff
new file mode 100644
index 0000000..f5f007e
--- /dev/null
+++ b/vcpkg/ports/chromaprint/pkgconfig-dependencies.diff
@@ -0,0 +1,46 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index eae99d4..141bfe1 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -20,6 +20,9 @@ include(CheckFunctionExists)
+ include(CheckSymbolExists)
+ include(CheckCXXCompilerFlag)
+
++set(PC_LIBS_PRIVATE "")
++set(PC_REQUIRES_PRIVATE "")
++
+ find_package(Threads)
+
+ option(BUILD_SHARED_LIBS "Build shared libraries" ON)
+@@ -111,8 +114,10 @@ set(USE_KISSFFT OFF)
+ if(NOT FFT_LIB)
+ if(APPLE AND ACCELERATE_LIBRARIES)
+ set(FFT_LIB "vdsp")
++ string(APPEND PC_LIBS_PRIVATE " -framework Accelerate")
+ elseif(FFMPEG_LIBAVCODEC_FFT_FOUND)
+ set(FFT_LIB "avfft")
++ string(APPEND PC_REQUIRES_PRIVATE " libavcodec")
+ elseif(FFTW3_LIBRARIES)
+ set(FFT_LIB "fftw3")
+ elseif(FFTW3_FFTWF_LIBRARY)
+@@ -172,6 +177,7 @@ if(AUDIO_PROCESSOR_LIB STREQUAL "swresample")
+ set(USE_SWRESAMPLE ON)
+ set(AUDIO_PROCESSOR_LIBRARIES ${FFMPEG_LIBSWRESAMPLE_LIBRARIES})
+ set(AUDIO_PROCESSOR_INCLUDE_DIRS ${FFMPEG_LIBSWRESAMPLE_INCLUDE_DIRS})
++ string(APPEND PC_REQUIRES_PRIVATE " libswresample")
+ else()
+ message(FATAL_ERROR "Selected ${AUDIO_PROCESSOR_LIB} for audio processing, but the library is not found")
+ endif()
+diff --git a/libchromaprint.pc.cmake b/libchromaprint.pc.cmake
+index 3799329..64123dc 100644
+--- a/libchromaprint.pc.cmake
++++ b/libchromaprint.pc.cmake
+@@ -7,6 +7,8 @@ Name: ${PROJECT_NAME}
+ Description: Audio fingerprint library
+ URL: http://acoustid.org/chromaprint
+ Version: ${PROJECT_VERSION}
++Requires.private: ${PC_REQUIRES_PRIVATE}
+ Libs: -L${LIB_INSTALL_DIR} -lchromaprint
++Libs.private: ${PC_LIBS_PRIVATE}
+ Cflags: -I${INCLUDE_INSTALL_DIR}
+
diff --git a/vcpkg/ports/chromaprint/portfile.cmake b/vcpkg/ports/chromaprint/portfile.cmake
new file mode 100644
index 0000000..5cb871c
--- /dev/null
+++ b/vcpkg/ports/chromaprint/portfile.cmake
@@ -0,0 +1,26 @@
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO acoustid/chromaprint
+ REF "v${VERSION}"
+ SHA512 ea16e4d2b879c15b1d9b9ec93878da8b893f1834c70942663e1d2d106c2e0a661094fe2dd3bae7a6c2a1f9d5d8fab5e0b0ba493561090cf57b2228606fad1e66
+ HEAD_REF master
+ PATCHES
+ pkgconfig-dependencies.diff
+ pkgconfig-cxx-linkage.diff
+)
+file(REMOVE_RECURSE "${SOURCE_PATH}/src/3rdparty")
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ -DBUILD_TESTS=OFF
+)
+vcpkg_cmake_install()
+vcpkg_fixup_pkgconfig()
+
+if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
+ vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/chromaprint.h" "ifdef CHROMAPRINT_NODLL" "if 1")
+endif()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.md")
diff --git a/vcpkg/ports/chromaprint/vcpkg.json b/vcpkg/ports/chromaprint/vcpkg.json
new file mode 100644
index 0000000..d6ad119
--- /dev/null
+++ b/vcpkg/ports/chromaprint/vcpkg.json
@@ -0,0 +1,24 @@
+{
+ "name": "chromaprint",
+ "version": "1.5.1",
+ "port-version": 1,
+ "description": "C library for generating audio fingerprints used by AcoustID",
+ "homepage": "https://github.com/acoustid/chromaprint",
+ "license": "LGPL-2.1-or-later",
+ "supports": "!xbox",
+ "dependencies": [
+ {
+ "name": "ffmpeg",
+ "default-features": false,
+ "features": [
+ "avcodec",
+ "avformat",
+ "swresample"
+ ]
+ },
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ }
+ ]
+}