1find_package(Git) 2find_package(Tar) 3 4if (NOT VERBOSE) 5 set(ffmpegGitOutput OUTPUT_VARIABLE FFMPEG_GIT_OUTPUT) 6 set(swscaleGitOutput OUTPUT_VARIABLE SWSCALE_GIT_OUTPUT) 7endif (NOT VERBOSE) 8 9# Checkout FFmpeg source and patch it 10if (NOT EXISTS "${FFMPEG_SOURCE_DIR}/${FFMPEG_VERSION}") 11 message(STATUS "Checking out FFmpeg from git repository") 12 execute_process(COMMAND ${GIT_EXECUTABLE} clone git://git.videolan.org/ffmpeg.git "${FFMPEG_SOURCE_DIR}" 13 ${ffmpegGitOutput}) 14 MESSAGE(STATUS "Going to revision ${FFMPEG_VERSION}") 15 execute_process(COMMAND ${GIT_EXECUTABLE} checkout tags/n${FFMPEG_VERSION} -b ${FFMPEG_VERSION} 16 WORKING_DIRECTORY "${FFMPEG_SOURCE_DIR}" 17 ${ffmpegSvnOutput}) 18 execute_process(COMMAND touch "${FFMPEG_SOURCE_DIR}/${FFMPEG_VERSION}") 19 MESSAGE(STATUS "Archiving ffmpeg ${FFMPEG_VERSION}") 20 MESSAGE(STATUS "${TAR_EXECUTABLE} cjf ${FFMPEG_ROOT_DIR}/${FFMPEG_SOURCE_ARCHIVE} --exclude .git source; DIR=${FFMPEG_BASE_DIR}") 21 execute_process(COMMAND ${TAR_EXECUTABLE} cjf "${FFMPEG_ROOT_DIR}/${FFMPEG_SOURCE_ARCHIVE}" --exclude .git source 22 WORKING_DIRECTORY "${FFMPEG_BASE_DIR}" 23 ) 24 set(FFMPEG_PERFORM_PATCH 1) 25endif (NOT EXISTS "${FFMPEG_SOURCE_DIR}/${FFMPEG_VERSION}") 26 27# Check version 28IF(IS_DIRECTORY ${FFMPEG_SOURCE_DIR}/.git) 29 admGetRevision( ${FFMPEG_SOURCE_DIR} ffmpeg_WC_REVISION) 30 MESSAGE(STATUS "Current revision ${ffmpeg_WC_REVISION}") 31ENDIF(IS_DIRECTORY ${FFMPEG_SOURCE_DIR}/.git) 32message("") 33