aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/libsndfile
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/ports/libsndfile')
-rw-r--r--vcpkg/ports/libsndfile/001-avoid-installing-find-modules.patch16
-rw-r--r--vcpkg/ports/libsndfile/mp3lame-static.diff15
-rw-r--r--vcpkg/ports/libsndfile/portfile.cmake60
-rw-r--r--vcpkg/ports/libsndfile/vcpkg.json52
4 files changed, 143 insertions, 0 deletions
diff --git a/vcpkg/ports/libsndfile/001-avoid-installing-find-modules.patch b/vcpkg/ports/libsndfile/001-avoid-installing-find-modules.patch
new file mode 100644
index 0000000..3ae1b21
--- /dev/null
+++ b/vcpkg/ports/libsndfile/001-avoid-installing-find-modules.patch
@@ -0,0 +1,16 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b501f08..022864f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -855,11 +847,6 @@ if (ENABLE_PACKAGE_CONFIG)
+ ${CMAKE_CURRENT_BINARY_DIR}/SndFileConfigVersion.cmake
+ DESTINATION ${CMAKE_INSTALL_PACKAGEDIR}
+ )
+-
+- if (NOT BUILD_SHARED_LIBS AND FIND_MODULES_INSTALL_LIST)
+- file(COPY ${FIND_MODULES_INSTALL_LIST} DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
+- install(FILES ${FIND_MODULES_INSTALL_LIST} DESTINATION ${CMAKE_INSTALL_PACKAGEDIR})
+- endif ()
+ else ()
+
+ install (TARGETS sndfile ${sdnfile_PROGRAMS}
diff --git a/vcpkg/ports/libsndfile/mp3lame-static.diff b/vcpkg/ports/libsndfile/mp3lame-static.diff
new file mode 100644
index 0000000..a77759a
--- /dev/null
+++ b/vcpkg/ports/libsndfile/mp3lame-static.diff
@@ -0,0 +1,15 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b501f08..946c321 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -236,6 +236,10 @@ if (INSTALL_PKGCONFIG_MODULE)
+ if (ENABLE_MPEG)
+ set (EXTERNAL_MPEG_REQUIRE "libmpg123")
+ set (EXTERNAL_MPEG_LIBS "-lmp3lame")
++ get_target_property(mp3lame_binary mp3lame::mp3lame IMPORTED_LOCATION_RELEASE)
++ if(mp3lame_binary MATCHES "mp3lame-static")
++ set (EXTERNAL_MPEG_LIBS "-lmp3lame-static -lmpghip-static")
++ endif()
+ endif ()
+
+ configure_file (sndfile.pc.in sndfile.pc @ONLY)
diff --git a/vcpkg/ports/libsndfile/portfile.cmake b/vcpkg/ports/libsndfile/portfile.cmake
new file mode 100644
index 0000000..4543f29
--- /dev/null
+++ b/vcpkg/ports/libsndfile/portfile.cmake
@@ -0,0 +1,60 @@
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO libsndfile/libsndfile
+ REF 1.2.2
+ SHA512 fb8b4d367240a8ac9d55be6f053cb19419890691c56a8552d1600d666257992b6e8e41a413a444c9f2d6c5d71406013222c92a3bfa67228944a26475444240a1
+ HEAD_REF master
+ PATCHES
+ 001-avoid-installing-find-modules.patch
+ mp3lame-static.diff
+)
+
+if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
+ vcpkg_find_acquire_program(PYTHON3)
+endif()
+
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ external-libs ENABLE_EXTERNAL_LIBS
+ mpeg ENABLE_MPEG
+ regtest BUILD_REGTEST
+)
+
+if(VCPKG_TARGET_IS_UWP)
+ set(VCPKG_C_FLAGS "/sdl- ${VCPKG_C_FLAGS}")
+ set(VCPKG_CXX_FLAGS "/sdl- ${VCPKG_CXX_FLAGS}")
+endif()
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ -DBUILD_EXAMPLES=OFF
+ -DBUILD_TESTING=OFF
+ -DENABLE_BOW_DOCS=OFF
+ -DBUILD_PROGRAMS=OFF
+ -DBUILD_REGTEST=OFF
+ -DCMAKE_FIND_PACKAGE_PREFER_CONFIG=ON
+ -DPYTHON_EXECUTABLE=${PYTHON3}
+ ${FEATURE_OPTIONS}
+ MAYBE_UNUSED_VARIABLES
+ PYTHON_EXECUTABLE
+)
+
+vcpkg_cmake_install()
+
+if(EXISTS "${CURRENT_PACKAGES_DIR}/cmake")
+ set(CONFIG_PATH cmake)
+else()
+ set(CONFIG_PATH lib/cmake/SndFile)
+endif()
+
+vcpkg_cmake_config_fixup(PACKAGE_NAME SndFile CONFIG_PATH "${CONFIG_PATH}")
+vcpkg_fixup_pkgconfig(SYSTEM_LIBRARIES m)
+
+vcpkg_copy_pdbs()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/doc")
+
+file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
diff --git a/vcpkg/ports/libsndfile/vcpkg.json b/vcpkg/ports/libsndfile/vcpkg.json
new file mode 100644
index 0000000..232a349
--- /dev/null
+++ b/vcpkg/ports/libsndfile/vcpkg.json
@@ -0,0 +1,52 @@
+{
+ "name": "libsndfile",
+ "version-semver": "1.2.2",
+ "port-version": 1,
+ "description": "A library for reading and writing audio files",
+ "homepage": "https://github.com/erikd/libsndfile",
+ "license": "LGPL-2.1-or-later",
+ "supports": "!xbox",
+ "dependencies": [
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ],
+ "default-features": [
+ "external-libs",
+ "mpeg"
+ ],
+ "features": {
+ "experimental": {
+ "description": "Enable experimental code",
+ "dependencies": [
+ "speex"
+ ]
+ },
+ "external-libs": {
+ "description": "Enable FLAC, Vorbis, and Opus codecs",
+ "dependencies": [
+ "libflac",
+ "libvorbis",
+ "opus"
+ ]
+ },
+ "mpeg": {
+ "description": "Enable MPEG codecs",
+ "dependencies": [
+ "mp3lame",
+ "mpg123"
+ ]
+ },
+ "regtest": {
+ "description": "Build regtest",
+ "dependencies": [
+ "sqlite3"
+ ]
+ }
+ }
+}