vcpkg/ports/ffnvcodec/portfile.cmake
Matthew Oliver 1b4d69f302
[ffmpeg] Update to 6.0 (#30135)
* [amd-amf] Update to 1.4.29

* [ffnvcodec] Update to 11.1.5.2

* [mfx-dispatch] Fix pkgconfig

* [ffmpeg] Update to 6.0

* update versions

* [amd-amd] Fix merge

* Update ffmpeg.json

* ffmpeg: Remove libpng dependency.

Ffmpeg doesnt have a libpng dependency. All thats needed for png support is zlib which has its own option already

* Update ffmpeg.json

* [ignition-common3] patch for ffmpeg3

* [freerdp] Update to 2.11.1

* Revert "Merge pull request #1 from autoantwort/ffmpeg"

This reverts commit b52416c67d, reversing
changes made to 8fdd44e901.

* Update ffmpeg.json

* Update ffmpeg.json

---------

Co-authored-by: Leander Schulten <Leander.Schulten@rwth-aachen.de>
2023-09-26 14:59:05 -07:00

58 lines
2.1 KiB
CMake

vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO FFmpeg/nv-codec-headers
REF n${VERSION}
SHA512 c08b7b3d08ef6e95819268067e09c588e5064d4c2320554f868579e96dc841e1eab217c03ef44e246aabdfa8b5e8e267cd5f0726f9c959f45fb27cb79af7c454
HEAD_REF master
)
# ====================================================
# Install the pkgconfig info for the `nvcodec` package
# ====================================================
# Windows
if(VCPKG_TARGET_IS_WINDOWS)
set(BUILD_SCRIPT ${CMAKE_CURRENT_LIST_DIR}\\build.sh)
vcpkg_acquire_msys(MSYS_ROOT PACKAGES make pkg-config)
set(BASH ${MSYS_ROOT}/usr/bin/bash.exe)
message(STATUS "Building ${_csc_PROJECT_PATH} for Release")
file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET})
# Make and deploy the ffnvcodec.pc file using MSYS
# (so that FFmpeg can find it in the MSYS rootfs)
vcpkg_execute_required_process(
COMMAND ${BASH} --noprofile --norc "${BUILD_SCRIPT}"
"${SOURCE_PATH}"
"${CURRENT_PACKAGES_DIR}"
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}
LOGNAME build-${TARGET_TRIPLET}
)
file(INSTALL "${SOURCE_PATH}/ffnvcodec.pc" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig")
# Linux, etc.
else()
FIND_PROGRAM(MAKE make)
IF (NOT MAKE)
MESSAGE(FATAL_ERROR "MAKE not found")
ENDIF ()
vcpkg_execute_required_process(
COMMAND make PREFIX=$${CURRENT_PACKAGES_DIR}
WORKING_DIRECTORY ${SOURCE_PATH}
LOGNAME make-${TARGET_TRIPLET}
)
# FFmpeg uses pkgconfig to find ffnvcodec.pc, so install it where
# FFMpeg's call to pkgconfig expects to find it.
file(INSTALL "${SOURCE_PATH}/ffnvcodec.pc" DESTINATION "${CURRENT_PACKAGES_DIR}/lib/pkgconfig")
file(INSTALL "${SOURCE_PATH}/ffnvcodec.pc" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig")
endif()
vcpkg_fixup_pkgconfig()
# Install the files to their default vcpkg locations
file(INSTALL "${SOURCE_PATH}/include" DESTINATION "${CURRENT_PACKAGES_DIR}")
file(INSTALL "${CURRENT_PORT_DIR}/copyright" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")