]> git.sesse.net Git - casparcg/blob - modules/decklink/CMakeLists.txt
[general] #598 Removed all usages of asmlib, because it is worse performing than...
[casparcg] / modules / decklink / CMakeLists.txt
1 cmake_minimum_required (VERSION 2.6)
2 project (decklink)
3
4 set(SOURCES
5                 consumer/decklink_consumer.cpp
6
7                 producer/decklink_producer.cpp
8
9                 decklink.cpp
10                 StdAfx.c
11                 StdAfx.cpp
12 )
13 set(HEADERS
14                 consumer/decklink_consumer.h
15
16                 producer/decklink_producer.h
17
18                 util/util.h
19
20                 decklink.h
21                 decklink_api.h
22                 StdAfx.h
23 )
24 if (MSVC)
25         set(OS_SPECIFIC_SOURCES
26                         interop/DeckLinkAPI_i.c
27                         interop/DeckLinkAPI.h
28                         interop/DeckLinkAPIVersion.h
29         )
30 elseif (CMAKE_COMPILER_IS_GNUCXX)
31         set(OS_SPECIFIC_SOURCES
32                         linux_interop/DeckLinkAPIConfiguration.h
33                         linux_interop/DeckLinkAPIDeckControl.h
34                         linux_interop/DeckLinkAPIDispatch.cpp
35                         linux_interop/DeckLinkAPIModes.h
36                         linux_interop/DeckLinkAPI_v10_2.h
37                         linux_interop/DeckLinkAPI_v7_3.h
38                         linux_interop/DeckLinkAPI_v7_9.h
39                         linux_interop/DeckLinkAPI_v8_1.h
40                         linux_interop/DeckLinkAPI_v9_9.h
41                         linux_interop/LinuxCOM.h
42                         linux_interop/DeckLinkAPIConfiguration_v10_2.h
43                         linux_interop/DeckLinkAPIDiscovery.h
44                         linux_interop/DeckLinkAPI.h
45                         linux_interop/DeckLinkAPITypes.h
46                         linux_interop/DeckLinkAPI_v7_1.h
47                         linux_interop/DeckLinkAPI_v7_6.h
48                         linux_interop/DeckLinkAPI_v8_0.h
49                         linux_interop/DeckLinkAPI_v9_2.h
50                         linux_interop/DeckLinkAPIVersion.h
51         )
52 endif ()
53
54 add_library(decklink ${SOURCES} ${HEADERS} ${OS_SPECIFIC_SOURCES})
55 add_precompiled_header(decklink StdAfx.h FORCEINCLUDE)
56
57 include_directories(..)
58 include_directories(../..)
59 include_directories(${BOOST_INCLUDE_PATH})
60 include_directories(${TBB_INCLUDE_PATH})
61 include_directories(${FFMPEG_INCLUDE_PATH})
62 include_directories(${RXCPP_INCLUDE_PATH})
63
64 set_target_properties(decklink PROPERTIES FOLDER modules)
65 source_group(sources ./*)
66 source_group(sources\\consumer consumer/*)
67 source_group(sources\\interop interop/*)
68 source_group(sources\\producer producer/*)
69 source_group(sources\\util util/*)
70
71 if (MSVC)
72         target_link_libraries(decklink
73                         common
74                         core
75                         ffmpeg
76         )
77 elseif (CMAKE_COMPILER_IS_GNUCXX)
78         target_link_libraries(decklink
79                         common
80                         core
81                         ffmpeg
82
83                         dl
84         )
85 endif ()
86
87 casparcg_add_include_statement("modules/decklink/decklink.h")
88 casparcg_add_init_statement("decklink::init" "decklink")
89 casparcg_add_module_project("decklink")