diff options
Diffstat (limited to 'vcpkg/ports/chromaprint')
| -rw-r--r-- | vcpkg/ports/chromaprint/pkgconfig-cxx-linkage.diff | 21 | ||||
| -rw-r--r-- | vcpkg/ports/chromaprint/pkgconfig-dependencies.diff | 46 | ||||
| -rw-r--r-- | vcpkg/ports/chromaprint/portfile.cmake | 26 | ||||
| -rw-r--r-- | vcpkg/ports/chromaprint/vcpkg.json | 24 |
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 + } + ] +} |