|
1 # Find ffmpeg/libav libraries (libavcodec, libavformat and libavutil) |
|
2 # Once done this will define |
|
3 # |
|
4 # LIBAV_FOUND - system has libavcodec, libavformat, libavutil |
|
5 # LIBAV_INCLUDE_DIR - libav include directories |
|
6 # LIBAV_LIBRARIES - libav libraries (libavcodec, libavformat, libavutil) |
|
7 # |
|
8 # LIBAVCODEC_LIBRARY - libavcodec library |
|
9 # LIBAVCODEC_INCLUDE_DIR - libavcodec include directory |
|
10 # LIBAVFORMAT_LIBRARY - libavformat library |
|
11 # LIBAVUTIL_LIBRARY - libavutil library |
|
12 # |
|
13 # Copyright (c) 2008 Andreas Schneider <mail@cynapses.org> |
|
14 # Modified for other libraries by Lasse Kärkkäinen <tronic> |
|
15 # Modified for Hedgewars by Stepik777 |
|
16 # Copyright (c) 2013 Vittorio Giovara <vittorio.giovara@gmail.com> |
|
17 # |
|
18 # Redistribution and use is allowed according to the terms of the New |
|
19 # BSD license. |
|
20 # |
|
21 |
|
22 include(FindPackageHandleStandardArgs) |
|
23 |
|
24 |
|
25 # use pkg-config to get the directories and then use these values |
|
26 # in the FIND_PATH() and FIND_LIBRARY() calls |
|
27 find_package(PkgConfig) |
|
28 if(PKG_CONFIG_FOUND) |
|
29 if(NOT LIBAVCODEC_INCLUDE_DIR OR NOT LIBAVCODEC_LIBRARY) |
|
30 pkg_check_modules(_LIBAV_AVCODEC libavcodec) |
|
31 endif() |
|
32 if(NOT LIBAVFORMAT_LIBRARY) |
|
33 pkg_check_modules(_LIBAV_AVFORMAT libavformat) |
|
34 endif() |
|
35 if(NOT LIBAVUTIL_LIBRARY) |
|
36 pkg_check_modules(_LIBAV_AVUTIL libavutil) |
|
37 endif() |
|
38 endif(PKG_CONFIG_FOUND) |
|
39 |
|
40 find_path(LIBAVCODEC_INCLUDE_DIR |
|
41 NAMES libavcodec/avcodec.h |
|
42 PATHS ${_LIBAV_AVCODEC_INCLUDE_DIRS} #pkg-config |
|
43 /usr/include /usr/local/include #system level |
|
44 /opt/local/include /sw/include #macports & fink |
|
45 PATH_SUFFIXES libav ffmpeg |
|
46 ) |
|
47 |
|
48 #TODO: add other include paths |
|
49 |
|
50 find_library(LIBAVCODEC_LIBRARY |
|
51 NAMES avcodec |
|
52 PATHS ${_LIBAV_AVCODEC_LIBRARY_DIRS} #pkg-config |
|
53 /usr/lib /usr/local/lib #system level |
|
54 /opt/local/lib /sw/lib #macports & fink |
|
55 ) |
|
56 |
|
57 find_library(LIBAVFORMAT_LIBRARY |
|
58 NAMES avformat |
|
59 PATHS ${_LIBAV_AVFORMAT_LIBRARY_DIRS} #pkg-config |
|
60 /usr/lib /usr/local/lib #system level |
|
61 /opt/local/lib /sw/lib #macports & fink |
|
62 ) |
|
63 |
|
64 find_library(LIBAVUTIL_LIBRARY |
|
65 NAMES avutil |
|
66 PATHS ${_LIBAV_AVUTIL_LIBRARY_DIRS} #pkg-config |
|
67 /usr/lib /usr/local/lib #system level |
|
68 /opt/local/lib /sw/lib #macports & fink |
|
69 ) |
|
70 |
|
71 find_package_handle_standard_args(LIBAV DEFAULT_MSG LIBAVCODEC_LIBRARY |
|
72 LIBAVCODEC_INCLUDE_DIR |
|
73 LIBAVFORMAT_LIBRARY |
|
74 LIBAVUTIL_LIBRARY |
|
75 ) |
|
76 set(LIBAV_INCLUDE_DIR ${LIBAVCODEC_INCLUDE_DIR} |
|
77 #TODO: add other include paths |
|
78 ) |
|
79 set(LIBAV_LIBRARIES ${LIBAVCODEC_LIBRARY} |
|
80 ${LIBAVFORMAT_LIBRARY} |
|
81 ${LIBAVUTIL_LIBRARY} |
|
82 ) |
|
83 |
|
84 mark_as_advanced(LIBAV_INCLUDE_DIR |
|
85 LIBAV_LIBRARIES |
|
86 LIBAVCODEC_LIBRARY |
|
87 LIBAVCODEC_INCLUDE_DIR |
|
88 LIBAVFORMAT_LIBRARY |
|
89 LIBAVUTIL_LIBRARY) |
|
90 |