diff options
| author | Charlie Barto <chbarto@microsoft.com> | 2021-05-18 16:00:50 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-05-18 16:00:50 -0700 |
| commit | 113880e5222220db532b102671c75afe99f96818 (patch) | |
| tree | a6bbf42c3201edfaee9460b8232b5dd31110bf6d /ports/avcpp | |
| parent | f68f30c1e1aebe53081d722e8add85cd85ef8f11 (diff) | |
| download | vcpkg-113880e5222220db532b102671c75afe99f96818.tar.gz vcpkg-113880e5222220db532b102671c75afe99f96818.zip | |
[avcpp] Add new port (#17716)
* add avcpp port
* add avcpp
* apply code review comments
* update versions
Diffstat (limited to 'ports/avcpp')
| -rw-r--r-- | ports/avcpp/0001-remove-problematic-compound-literal.patch | 14 | ||||
| -rw-r--r-- | ports/avcpp/portfile.cmake | 34 | ||||
| -rw-r--r-- | ports/avcpp/vcpkg.json | 28 |
3 files changed, 76 insertions, 0 deletions
diff --git a/ports/avcpp/0001-remove-problematic-compound-literal.patch b/ports/avcpp/0001-remove-problematic-compound-literal.patch new file mode 100644 index 000000000..aa6c58cc2 --- /dev/null +++ b/ports/avcpp/0001-remove-problematic-compound-literal.patch @@ -0,0 +1,14 @@ +diff --git a/src/avutils.h b/src/avutils.h +index 29c4ae0..3bfaf82 100644 +--- a/src/avutils.h ++++ b/src/avutils.h +@@ -42,7 +42,7 @@ namespace av { + // Basic FFmpeg constants + constexpr auto NoPts = static_cast<int64_t>(AV_NOPTS_VALUE); + constexpr auto TimeBase = static_cast<int>(AV_TIME_BASE); +-constexpr auto TimeBaseQ = static_cast<AVRational>(AV_TIME_BASE_Q); ++constexpr auto TimeBaseQ = AVRational{1, AV_TIME_BASE}; + + + template<typename R, typename T> + diff --git a/ports/avcpp/portfile.cmake b/ports/avcpp/portfile.cmake new file mode 100644 index 000000000..d6412fce8 --- /dev/null +++ b/ports/avcpp/portfile.cmake @@ -0,0 +1,34 @@ +# avcpp doesn't export any symbols
+vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO h4tr3d/avcpp
+ REF d1a39cf6e1ccfe78ababe5a65d02d57f1e65bea1
+ SHA512 48eb3bdd8729c9f61c53b152f0bb7283b40d2c8f043a1d6bb4fb1fadb0ceebf754822eeb7fa85edcacbca267eea0999dd9e78e378b04984db6dc25f9a6fab7d0
+ HEAD_REF master
+ PATCHES
+ 0001-remove-problematic-compound-literal.patch
+)
+
+string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" AVCPP_ENABLE_STATIC)
+string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" AVCPP_ENABLE_SHARED)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH ${SOURCE_PATH}
+ OPTIONS
+ -DAV_ENABLE_STATIC=${AVCPP_ENABLE_STATIC}
+ -DAV_ENABLE_SHARED=${AVCPP_ENABLE_SHARED}
+ -DAV_BUILD_EXAMPLES=OFF
+ -DBUILD_TESTING=OFF
+)
+vcpkg_cmake_install()
+
+vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/${PORT})
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
+
+file(INSTALL ${SOURCE_PATH}/LICENSE.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
+
+vcpkg_copy_pdbs()
\ No newline at end of file diff --git a/ports/avcpp/vcpkg.json b/ports/avcpp/vcpkg.json new file mode 100644 index 000000000..afb9a18a4 --- /dev/null +++ b/ports/avcpp/vcpkg.json @@ -0,0 +1,28 @@ +{ + "name": "avcpp", + "version-date": "2021-05-06", + "description": "Wrapper for the FFmpeg that simplify usage it from C++ projects.", + "homepage": "https://github.com/h4tr3d/avcpp", + "dependencies": [ + { + "name": "ffmpeg", + "default-features": false, + "features": [ + "avcodec", + "avdevice", + "avfilter", + "avformat", + "swresample", + "swscale" + ] + }, + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} |
