Thread: [Jahshaka-cvs] SF.net SVN: openlibraries:[1412] trunk/FindFFMPEG.cmake
Status: Beta
Brought to you by:
jahshaka
From: <tim...@us...> - 2008-08-01 16:30:38
|
Revision: 1412 http://openlibraries.svn.sourceforge.net/openlibraries/?rev=1412&view=rev Author: timdewhirst Date: 2008-08-01 16:30:36 +0000 (Fri, 01 Aug 2008) Log Message: ----------- libs - use pkg_config for ffmpeg if possible Modified Paths: -------------- trunk/FindFFMPEG.cmake Modified: trunk/FindFFMPEG.cmake =================================================================== --- trunk/FindFFMPEG.cmake 2008-08-01 16:28:39 UTC (rev 1411) +++ trunk/FindFFMPEG.cmake 2008-08-01 16:30:36 UTC (rev 1412) @@ -15,56 +15,83 @@ FIND_PATH( FFMPEG_LIBRARY_DIR ${FFMPEG_LIBRARIES} PATHS $ENV{FFMPEGDIR}/lib ) else( WIN32 ) + INCLUDE(FindPkgConfig) + #FindAvformat + if ( PKG_CONFIG_FOUND ) + pkg_check_modules( AVFORMAT libavformat ) + endif ( PKG_CONFIG_FOUND ) + FIND_PATH( AVFORMAT_INCLUDE_DIR avformat.h - PATHS /usr/include/ - /usr/include/libavformat/ + PATHS ${AVFORMAT_INCLUDE_DIRS} + /usr/include/ /usr/include/ffmpeg/ - /usr/include/ffmpeg/libavformat/ ) + PATH_SUFFIXES libavformat ) FIND_LIBRARY( AVFORMAT_LIBRARY avformat - PATHS /usr/lib/ + PATHS ${AVFORMAT_LIBRARY_DIRS} + /usr/lib/ /usr/lib/ffmpeg/ ) #FindAvcodec + if ( PKG_CONFIG_FOUND ) + pkg_check_modules( AVCODEC libavcodec ) + endif ( PKG_CONFIG_FOUND ) + FIND_PATH( AVCODEC_INCLUDE_DIR avcodec.h - PATHS /usr/include/ - /usr/include/libavcodec/ + PATHS ${AVCODEC_INCLUDE_DIRS} + /usr/include/ /usr/include/ffmpeg/ - /usr/include/ffmpeg/libavcodec/ ) + PATH_SUFFIXES libavcodec ) FIND_LIBRARY( AVCODEC_LIBRARY avcodec - PATHS /usr/lib/ + PATHS ${AVCODEC_LIBRARY_DIRS} + /usr/lib/ /usr/lib/ffmpeg/ ) #FindAvutil + if ( PKG_CONFIG_FOUND ) + pkg_check_modules( AVUTIL libavutil ) + endif ( PKG_CONFIG_FOUND ) + FIND_PATH( AVUTIL_INCLUDE_DIR avutil.h - PATHS /usr/include/ - /usr/include/libavutil/ + PATHS ${AVUTIL_INCLUDE_DIRS} + /usr/include/ /usr/include/ffmpeg/ - /usr/include/ffmpeg/libavutil/ ) + PATH_SUFFIXES libavutil ) FIND_LIBRARY( AVUTIL_LIBRARY avutil - PATHS /usr/lib/ + PATHS ${AVUTIL_LIBRARY_DIRS} + /usr/lib/ /usr/lib/ffmpeg/ ) #FindAvdevice + if ( PKG_CONFIG_FOUND ) + pkg_check_modules( AVDEVICE libavdevice ) + endif ( PKG_CONFIG_FOUND ) + FIND_PATH( AVDEVICE_INCLUDE_DIR avdevice.h - PATHS /usr/include/ - /usr/include/libavdevice/ + PATHS ${AVDEVICE_INCLUDE_DIRS} + /usr/include/ /usr/include/ffmpeg/ - /usr/include/ffmpeg/libavdevice/ ) + PATH_SUFFIXES libavdevice ) FIND_LIBRARY( AVDEVICE_LIBRARY avdevice - PATHS /usr/lib/ + PATHS ${AVDEVICE_LIBRARY_DIRS} + /usr/lib/ /usr/lib/ffmpeg/ ) #FindSwscale + if ( PKG_CONFIG_FOUND ) + pkg_check_modules( SWSCALE libswscale ) + endif ( PKG_CONFIG_FOUND ) + FIND_PATH( SWSCALE_INCLUDE_DIR swscale.h - PATHS /usr/include/ - /usr/include/libswscale/ + PATHS ${SWSCALE_INCLUDE_DIRS} + /usr/include/ /usr/include/ffmpeg/ - /usr/include/ffmpeg/libswscale/ ) + PATH_SUFFIXES libswscale ) FIND_LIBRARY( SWSCALE_LIBRARY swscale - PATHS /usr/lib/ + PATHS ${SWSCALE_LIBRARY_DIRS} + /usr/lib/ /usr/lib/ffmpeg/ ) endif( WIN32 ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tim...@us...> - 2008-10-22 14:44:58
|
Revision: 1427 http://openlibraries.svn.sourceforge.net/openlibraries/?rev=1427&view=rev Author: timdewhirst Date: 2008-10-22 14:44:54 +0000 (Wed, 22 Oct 2008) Log Message: ----------- olibs - update FindFFMPEG.cmake for latest (pre-API changes) ffmpeg build Modified Paths: -------------- trunk/FindFFMPEG.cmake Modified: trunk/FindFFMPEG.cmake =================================================================== --- trunk/FindFFMPEG.cmake 2008-10-02 16:15:32 UTC (rev 1426) +++ trunk/FindFFMPEG.cmake 2008-10-22 14:44:54 UTC (rev 1427) @@ -2,156 +2,63 @@ # Once done this will define # # FFMPEG_FOUND - system has FFMPEG -# FFMPEG_INCLUDE_DIR - the include directory +# FFMPEG_INCLUDE_DIR - the include directories # FFMPEG_LIBRARY_DIR - the directory containing the libraries # FFMPEG_LIBRARIES - Link these to use FFMPEG # SET( FFMPEG_HEADERS avformat.h avcodec.h avutil.h avdevice.h swscale.h ) +SET( FFMPEG_PATH_SUFFIXES libavformat libavcodec libavutil libavdevice libswscale ) + if( WIN32 ) - SET( FFMPEG_LIBRARIES avformat.lib avcodec.lib avutil.lib avdevice.lib swscale.lib ) - FIND_PATH( FFMPEG_INCLUDE_DIR ${FFMPEG_HEADERS} - PATHS $ENV{FFMPEGDIR}/include/ffmpeg ) - FIND_PATH( FFMPEG_LIBRARY_DIR ${FFMPEG_LIBRARIES} - PATHS $ENV{FFMPEGDIR}/lib ) + SET( FFMPEG_LIBRARIES avformat-52.lib avcodec-51.lib avutil-49.lib avdevice-52.lib swscale-0.lib ) + SET( FFMPEG_LIBRARY_DIR $ENV{FFMPEGDIR}/lib ) + SET( FFMPEG_INCLUDE_PATHS $ENV{FFMPEGDIR}/include ) else( WIN32 ) - INCLUDE(FindPkgConfig) + SET( FFMPEG_LIBRARIES avformat.so.52 avcodec.so.51 avutil.so.49 avdevice.so.52 swscale.so.0 ) + INCLUDE(FindPkgConfig) + if ( PKG_CONFIG_FOUND ) + pkg_check_modules( AVFORMAT libavformat ) + pkg_check_modules( AVCODEC libavcodec ) + pkg_check_modules( AVUTIL libavutil ) + pkg_check_modules( AVDEVICE libavdevice ) + pkg_check_modules( SWSCALE libswscale ) + endif ( PKG_CONFIG_FOUND ) - #FindAvformat - if ( PKG_CONFIG_FOUND ) - pkg_check_modules( AVFORMAT libavformat ) - endif ( PKG_CONFIG_FOUND ) - - FIND_PATH( AVFORMAT_INCLUDE_DIR avformat.h - PATHS ${AVFORMAT_INCLUDE_DIRS} - /usr/include/ - /usr/include/ffmpeg/ - PATH_SUFFIXES libavformat ) - - FIND_LIBRARY( AVFORMAT_LIBRARY avformat - PATHS ${AVFORMAT_LIBRARY_DIRS} - /usr/lib/ - /usr/lib/ffmpeg/ ) - #FindAvcodec - if ( PKG_CONFIG_FOUND ) - pkg_check_modules( AVCODEC libavcodec ) - endif ( PKG_CONFIG_FOUND ) - - FIND_PATH( AVCODEC_INCLUDE_DIR avcodec.h - PATHS ${AVCODEC_INCLUDE_DIRS} - /usr/include/ - /usr/include/ffmpeg/ - PATH_SUFFIXES libavcodec ) - - FIND_LIBRARY( AVCODEC_LIBRARY avcodec - PATHS ${AVCODEC_LIBRARY_DIRS} - /usr/lib/ - /usr/lib/ffmpeg/ ) - #FindAvutil - if ( PKG_CONFIG_FOUND ) - pkg_check_modules( AVUTIL libavutil ) - endif ( PKG_CONFIG_FOUND ) - - FIND_PATH( AVUTIL_INCLUDE_DIR avutil.h - PATHS ${AVUTIL_INCLUDE_DIRS} - /usr/include/ - /usr/include/ffmpeg/ - PATH_SUFFIXES libavutil ) - - FIND_LIBRARY( AVUTIL_LIBRARY avutil - PATHS ${AVUTIL_LIBRARY_DIRS} - /usr/lib/ - /usr/lib/ffmpeg/ ) - - #FindAvdevice - if ( PKG_CONFIG_FOUND ) - pkg_check_modules( AVDEVICE libavdevice ) - endif ( PKG_CONFIG_FOUND ) - - FIND_PATH( AVDEVICE_INCLUDE_DIR avdevice.h - PATHS ${AVDEVICE_INCLUDE_DIRS} - /usr/include/ - /usr/include/ffmpeg/ - PATH_SUFFIXES libavdevice ) - - FIND_LIBRARY( AVDEVICE_LIBRARY avdevice - PATHS ${AVDEVICE_LIBRARY_DIRS} - /usr/lib/ - /usr/lib/ffmpeg/ ) - #FindSwscale - if ( PKG_CONFIG_FOUND ) - pkg_check_modules( SWSCALE libswscale ) - endif ( PKG_CONFIG_FOUND ) - - FIND_PATH( SWSCALE_INCLUDE_DIR swscale.h - PATHS ${SWSCALE_INCLUDE_DIRS} - /usr/include/ - /usr/include/ffmpeg/ - PATH_SUFFIXES libswscale ) - - FIND_LIBRARY( SWSCALE_LIBRARY swscale - PATHS ${SWSCALE_LIBRARY_DIRS} - /usr/lib/ - /usr/lib/ffmpeg/ ) - + SET( FFMPEG_LIBRARY_DIR /usr/lib /usr/lib/ffmpeg + ${AVFORMAT_LIBRARY_DIRS} + ${AVCODEC_LIBRARY_DIRS} + ${AVUTIL_LIBRARY_DIRS} + ${AVDEVICE_LIBRARY_DIRS} + ${SWSCALE_LIBRARY_DIRS} ) + SET( FFMPEG_INCLUDE_PATHS /usr/include /usr/include/ffmpeg + ${AVFORMAT_INCLUDE_DIRS} + ${AVCODEC_INCLUDE_DIRS} + ${AVUTIL_INCLUDE_DIRS} + ${AVDEVICE_INCLUDE_DIRS} + ${SWSCALE_INCLUDE_DIRS} ) endif( WIN32 ) -SET( FFMPEG_FOUND FALSE ) +# find includes +SET( INC_SUCCESS 0 ) +SET( FFMPEG_INCLUDE_DIR ${FFMPEG_INCLUDE_PATHS} ) +FOREACH( INC_ ${FFMPEG_HEADERS} ) + # message( "checking: " ${INC_} ) -IF ( AVFORMAT_INCLUDE_DIR AND AVFORMAT_LIBRARY ) - SET ( AVFORMAT_FOUND TRUE ) -ENDIF ( AVFORMAT_INCLUDE_DIR AND AVFORMAT_LIBRARY ) + FIND_PATH( TMP_ ${INC_} + PATHS ${FFMPEG_INCLUDE_PATHS} + PATH_SUFFIXES ${FFMPEG_PATH_SUFFIXES} ) + IF ( TMP_ ) + # message( "found: " ${TMP_} ) + MATH( EXPR INC_SUCCESS ${INC_SUCCESS}+1 ) + SET( FFMPEG_INCLUDE_DIR ${FFMPEG_INCLUDE_DIR} ${TMP_} ) + ENDIF ( TMP_ ) + SET( TMP_ TMP-NOTFOUND ) +ENDFOREACH( INC_ ) -IF ( AVCODEC_INCLUDE_DIR AND AVCODEC_LIBRARY ) - SET ( AVCODEC_FOUND TRUE ) -ENDIF ( AVCODEC_INCLUDE_DIR AND AVCODEC_LIBRARY ) +LIST( LENGTH FFMPEG_HEADERS LIST_SIZE_ ) -IF ( AVUTIL_INCLUDE_DIR AND AVUTIL_LIBRARY ) - SET ( AVUTIL_FOUND TRUE ) -ENDIF ( AVUTIL_INCLUDE_DIR AND AVUTIL_LIBRARY ) - -# it is possible that avdevice and swscale are not present; -# - avdevice was introduced in [11077] 23/11/2007 -# - swscale is an optional GPL module; a stub exists within avcodec -# that is used if swscale is not present -IF ( AVDEVICE_INCLUDE_DIR AND AVDEVICE_LIBRARY ) - SET ( AVDEVICE_FOUND TRUE ) -ELSE ( AVDEVICE_INCLUDE_DIR AND AVDEVICE_LIBRARY ) - SET( AVDEVICE_FOUND FALSE ) - SET( AVDEVICE_INCLUDE_DIR "" ) - SET( AVDEVICE_LIBRARY "" ) -ENDIF ( AVDEVICE_INCLUDE_DIR AND AVDEVICE_LIBRARY ) - -IF ( SWSCALE_INCLUDE_DIR AND SWSCALE_LIBRARY ) - SET ( SWSCALE_FOUND TRUE ) -ELSE ( SWSCALE_INCLUDE_DIR AND SWSCALE_LIBRARY ) - SET( SWSCALE_FOUND FALSE ) - SET( SWSCALE_INCLUDE_DIR "" ) - SET( SWSCALE_LIBRARY "" ) -ENDIF ( SWSCALE_INCLUDE_DIR AND SWSCALE_LIBRARY ) - - -IF ( WIN32 ) - IF ( FFMPEG_INCLUDE_DIR AND FFMPEG_LIBRARY_DIR ) - SET( FFMPEG_FOUND TRUE ) - ENDIF ( FFMPEG_INCLUDE_DIR AND FFMPEG_LIBRARY_DIR ) -ELSE ( WIN32 ) - IF ( AVFORMAT_INCLUDE_DIR AND AVCODEC_INCLUDE_DIR AND AVUTIL_INCLUDE_DIR ) - SET ( FFMPEG_FOUND TRUE ) - - SET ( FFMPEG_INCLUDE_DIR - ${AVFORMAT_INCLUDE_DIR} - ${AVCODEC_INCLUDE_DIR} - ${AVUTIL_INCLUDE_DIR} - ${AVDEVICE_INCLUDE_DIR} - ${SWSCALE_INCLUDE_DIR} ) - - SET ( FFMPEG_LIBRARIES - ${AVFORMAT_LIBRARY} - ${AVCODEC_LIBRARY} - ${AVUTIL_LIBRARY} - ${AVDEVICE_LIBRARY} - ${SWSCALE_LIBRARY} ) - ENDIF ( AVFORMAT_INCLUDE_DIR AND AVCODEC_INCLUDE_DIR AND AVUTIL_INCLUDE_DIR ) -ENDIF ( WIN32 ) - +SET( FFMPEG_FOUND FALSE ) +IF ( ${INC_SUCCESS} EQUAL ${LIST_SIZE_} ) + SET( FFMPEG_FOUND TRUE ) +ENDIF ( ${INC_SUCCESS} EQUAL ${LIST_SIZE_} ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tim...@us...> - 2009-01-26 23:28:14
|
Revision: 1458 http://openlibraries.svn.sourceforge.net/openlibraries/?rev=1458&view=rev Author: timdewhirst Date: 2009-01-26 23:28:08 +0000 (Mon, 26 Jan 2009) Log Message: ----------- cmake * add missed swscale linking Modified Paths: -------------- trunk/FindFFMPEG.cmake Modified: trunk/FindFFMPEG.cmake =================================================================== --- trunk/FindFFMPEG.cmake 2009-01-26 23:06:27 UTC (rev 1457) +++ trunk/FindFFMPEG.cmake 2009-01-26 23:28:08 UTC (rev 1458) @@ -48,6 +48,8 @@ ${FFMPEG_SWS_HEADERS} ) SET( FFMPEG_PATH_SUFFIXES ${FFMPEG_PATH_SUFFIXES} ${FFMPEG_SWS_PATH_SUFFIXES} ) + SET( FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} + ${FFMPEG_SWS_LIBRARIES} ) ENDIF ( SWSCALE_FOUND ) endif( WIN32 ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tim...@us...> - 2009-01-28 09:13:13
|
Revision: 1461 http://openlibraries.svn.sourceforge.net/openlibraries/?rev=1461&view=rev Author: timdewhirst Date: 2009-01-28 09:13:04 +0000 (Wed, 28 Jan 2009) Log Message: ----------- cmake * fix FindFFMPEG for windows Modified Paths: -------------- trunk/FindFFMPEG.cmake Modified: trunk/FindFFMPEG.cmake =================================================================== --- trunk/FindFFMPEG.cmake 2009-01-27 09:29:12 UTC (rev 1460) +++ trunk/FindFFMPEG.cmake 2009-01-28 09:13:04 UTC (rev 1461) @@ -16,8 +16,16 @@ if( WIN32 ) SET( FFMPEG_LIBRARIES avformat-52.lib avcodec-51.lib avutil-49.lib avdevice-52.lib ) SET( FFMPEG_SWS_LIBRARIES swscale-0.lib ) - SET( FFMPEG_LIBRARY_DIR $ENV{FFMPEGDIR}/lib ) - SET( FFMPEG_INCLUDE_PATHS $ENV{FFMPEGDIR}/include ) + SET( FFMPEG_LIBRARY_DIR $ENV{FFMPEGDIR}\\lib ) + SET( FFMPEG_INCLUDE_PATHS $ENV{FFMPEGDIR}\\include ) + + # check to see if we can find swscale + SET( TMP_ TMP-NOTFOUND ) + FIND_PATH( TMP_ ${FFMPEG_SWS_LIBRARIES} + PATHS ${FFMPEG_LIBRARY_DIR} ) + IF ( TMP_ ) + SET( SWSCALE_FOUND TRUE ) + ENDIF( TMP_ ) else( WIN32 ) SET( FFMPEG_LIBRARIES avformat avcodec avutil avdevice ) SET( FFMPEG_SWS_LIBRARIES swscale ) @@ -38,24 +46,26 @@ ${AVCODEC_INCLUDE_DIRS} ${AVUTIL_INCLUDE_DIRS} ${AVDEVICE_INCLUDE_DIRS} ) - - IF ( SWSCALE_FOUND ) - SET( FFMPEG_LIBRARY_DIR ${FFMPEG_LIBRARY_DIR} - ${SWSCALE_LIBRARY_DIRS} ) - SET( FFMPEG_INCLUDE_PATHS ${FFMPEG_INCLUDE_PATHS} - ${SWSCALE_INCLUDE_DIRS} ) - SET( FFMPEG_HEADERS ${FFMPEG_HEADERS} - ${FFMPEG_SWS_HEADERS} ) - SET( FFMPEG_PATH_SUFFIXES ${FFMPEG_PATH_SUFFIXES} - ${FFMPEG_SWS_PATH_SUFFIXES} ) - SET( FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} - ${FFMPEG_SWS_LIBRARIES} ) - ENDIF ( SWSCALE_FOUND ) endif( WIN32 ) +# add in swscale if found +IF ( SWSCALE_FOUND ) + SET( FFMPEG_LIBRARY_DIR ${FFMPEG_LIBRARY_DIR} + ${SWSCALE_LIBRARY_DIRS} ) + SET( FFMPEG_INCLUDE_PATHS ${FFMPEG_INCLUDE_PATHS} + ${SWSCALE_INCLUDE_DIRS} ) + SET( FFMPEG_HEADERS ${FFMPEG_HEADERS} + ${FFMPEG_SWS_HEADERS} ) + SET( FFMPEG_PATH_SUFFIXES ${FFMPEG_PATH_SUFFIXES} + ${FFMPEG_SWS_PATH_SUFFIXES} ) + SET( FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} + ${FFMPEG_SWS_LIBRARIES} ) +ENDIF ( SWSCALE_FOUND ) + # find includes SET( INC_SUCCESS 0 ) SET( TMP_ TMP-NOTFOUND ) +SET( FFMPEG_INCLUDE_DIR ${FFMPEG_INCLUDE_PATHS} ) FOREACH( INC_ ${FFMPEG_HEADERS} ) message( "checking: " ${INC_} ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |