diff options
author | Andreas Pakulat <apaku@gmx.de> | 2008-08-21 07:49:08 +0000 |
---|---|---|
committer | Andreas Pakulat <apaku@gmx.de> | 2008-08-21 07:49:08 +0000 |
commit | 87299c07951d5b28767ee8949e40ff1942307bde (patch) | |
tree | a3bf6a88b18b51404c493a7ff029b1016d593e8a | |
parent | 65b7a8a860cd48f219914f989d0ec52bd4e2685a (diff) | |
download | extra-cmake-modules-87299c07951d5b28767ee8949e40ff1942307bde.tar.gz extra-cmake-modules-87299c07951d5b28767ee8949e40ff1942307bde.tar.bz2 |
Re-Add FindXine.cmake, removing it is a source-incompatible change and breaks
kdemultimedia compilation.
svn path=/trunk/KDE/kdelibs/; revision=850292
-rw-r--r-- | modules/FindXine.cmake | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/modules/FindXine.cmake b/modules/FindXine.cmake new file mode 100644 index 00000000..534613a6 --- /dev/null +++ b/modules/FindXine.cmake @@ -0,0 +1,72 @@ +# - Try to find the XINE library +# Once done this will define +# +# XINE_FOUND - system has the XINE library +# XINE_VERSION - XINE version +# XINE_BUGFIX_VERSION - the XINE bugfix version +# XINE_INCLUDE_DIR - the XINE include directory +# XINE_LIBRARY - The libraries needed to use XINE +# XINE_XCB_FOUND - libxine can use XCB for video output + +# Copyright (c) 2006,2007 Laurent Montel, <montel@kde.org> +# Copyright (c) 2006, Matthias Kretz, <kretz@kde.org> +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if (XINE_INCLUDE_DIR AND XINE_LIBRARY) + # Already in cache, be silent + set(Xine_FIND_QUIETLY TRUE) +endif (XINE_INCLUDE_DIR AND XINE_LIBRARY) + IF (NOT WIN32) + INCLUDE(UsePkgConfig) + PKGCONFIG(libxine _LibXineIncDir _LibXineLinkDir _LibXineLinkFlags _LibXineCflags) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS "--variable=prefix libxine" OUTPUT_VARIABLE _LibXinePrefix) + ENDIF (NOT WIN32) +FIND_PATH(XINE_INCLUDE_DIR NAMES xine.h + PATHS + ${_LibXineIncDir} + NO_DEFAULT_PATH) + +FIND_LIBRARY(XINE_LIBRARY NAMES xine + PATHS + ${_LibXineLinkDir} + NO_DEFAULT_PATH +) + +FIND_PROGRAM(XINECONFIG_EXECUTABLE NAMES xine-config PATHS + ${_LibXinePrefix}/bin +) + +if (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) + EXEC_PROGRAM(${XINECONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XINE_VERSION) + macro_ensure_version(1.1.1 ${XINE_VERSION} XINE_VERSION_OK) + if (XINE_VERSION_OK) + set(XINE_FOUND TRUE) + string(REGEX REPLACE "[0-9].[0-9]." "" XINE_BUGFIX_VERSION ${XINE_VERSION}) + endif (XINE_VERSION_OK) +endif (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) + + +if( XINE_FOUND ) + INCLUDE(CheckCSourceCompiles) + SET(CMAKE_REQUIRED_INCLUDES ${XINE_INCLUDE_DIR}) + SET(CMAKE_REQUIRED_LIBRARIES ${XINE_LIBRARY}) + CHECK_C_SOURCE_COMPILES("#include <xine.h>\nint main()\n{\n xine_open_video_driver(xine_new(), \"auto\", XINE_VISUAL_TYPE_XCB, NULL);\n return 0;\n}\n" XINE_XCB_FOUND) +endif(XINE_FOUND) + +if (XINE_FOUND) + if (NOT Xine_FIND_QUIETLY) + message(STATUS "Found XINE: ${XINE_LIBRARY}") + endif (NOT Xine_FIND_QUIETLY) + # if(XINECONFIG_EXECUTABLE) + # EXEC_PROGRAM(${XINECONFIG_EXECUTABLE} ARGS --plugindir RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XINEPLUGINSDIR) + # MESSAGE(STATUS "XINEPLUGINSDIR :<${XINEPLUGINSDIR}>") + # endif(XINECONFIG_EXECUTABLE) +else (XINE_FOUND) + if (Xine_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find XINE 1.1.1 or greater") + endif (Xine_FIND_REQUIRED) +endif (XINE_FOUND) + +MARK_AS_ADVANCED(XINE_INCLUDE_DIR XINE_LIBRARY) |