]> git.sesse.net Git - casparcg/blob - shell/CMakeLists.txt
* Removed hard dependencies to XML based consumer factories, so that server.cpp does...
[casparcg] / shell / CMakeLists.txt
1 cmake_minimum_required (VERSION 2.6)
2 project (shell)
3
4 if (MSVC)
5         set(OS_SPECIFIC_SOURCES
6                         resource.h
7                         shell.rc
8         )
9 elseif (CMAKE_COMPILER_IS_GNUCXX)
10         set(OS_SPECIFIC_SOURCES
11         )
12 endif ()
13 set(SOURCES
14                 main.cpp
15                 server.cpp
16                 stdafx.cpp
17 )
18 set(HEADERS
19                 server.h
20                 stdafx.h
21 )
22
23 add_executable(casparcg ${SOURCES} ${HEADERS} ${OS_SPECIFIC_SOURCES})
24 add_precompiled_header(casparcg stdafx.h FORCEINCLUDE)
25
26 include_directories(..)
27 include_directories(${BOOST_INCLUDE_PATH})
28 include_directories(${RXCPP_INCLUDE_PATH})
29 include_directories(${TBB_INCLUDE_PATH})
30
31 source_group(sources ./*)
32
33 target_link_libraries(casparcg
34                 accelerator
35                 common
36                 core
37                 protocol
38
39                 bluefish
40                 decklink
41                 ffmpeg
42                 flash
43                 image
44                 oal
45                 psd
46                 reroute
47                 screen
48
49                 alibcof64.lib
50                 jpeg.lib
51                 sndfile.lib
52                 optimized sfml-system-2.lib
53                 optimized sfml-window-2.lib
54                 optimized sfml-graphics-2.lib
55                 debug sfml-system-d-2.lib
56                 debug sfml-window-d-2.lib
57                 debug sfml-graphics-d-2.lib
58                 Winmm.lib
59                 Ws2_32.lib
60                 avformat.lib
61                 avcodec.lib
62                 avutil.lib
63                 avfilter.lib
64                 swscale.lib
65                 swresample.lib
66                 optimized tbb.lib
67                 debug tbb_debug.lib
68                 OpenGL32.lib
69                 glew32.lib
70                 openal32.lib
71                 optimized FreeImage.lib
72                 debug FreeImaged.lib
73                 freetype.lib
74                 zlibstat.lib
75 )
76
77 set(OUTPUT_FOLDER "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}")
78
79 add_custom_command(TARGET casparcg POST_BUILD
80                 COMMAND ${CMAKE_COMMAND} -E copy \"${FFMPEG_BIN_PATH}/avcodec-55.dll\" \"${OUTPUT_FOLDER}/\"
81                 COMMAND ${CMAKE_COMMAND} -E copy \"${FFMPEG_BIN_PATH}/avdevice-55.dll\" \"${OUTPUT_FOLDER}/\"
82                 COMMAND ${CMAKE_COMMAND} -E copy \"${FFMPEG_BIN_PATH}/avfilter-4.dll\" \"${OUTPUT_FOLDER}/\"
83                 COMMAND ${CMAKE_COMMAND} -E copy \"${FFMPEG_BIN_PATH}/avformat-55.dll\" \"${OUTPUT_FOLDER}/\"
84                 COMMAND ${CMAKE_COMMAND} -E copy \"${FFMPEG_BIN_PATH}/avutil-52.dll\" \"${OUTPUT_FOLDER}/\"
85                 COMMAND ${CMAKE_COMMAND} -E copy \"${FFMPEG_BIN_PATH}/postproc-52.dll\" \"${OUTPUT_FOLDER}/\"
86                 COMMAND ${CMAKE_COMMAND} -E copy \"${FFMPEG_BIN_PATH}/swresample-0.dll\" \"${OUTPUT_FOLDER}/\"
87                 COMMAND ${CMAKE_COMMAND} -E copy \"${FFMPEG_BIN_PATH}/swscale-2.dll\" \"${OUTPUT_FOLDER}/\"
88                 COMMAND ${CMAKE_COMMAND} -E copy \"${FREEIMAGE_BIN_PATH}/FreeImage.dll\" \"${OUTPUT_FOLDER}/\"
89                 COMMAND ${CMAKE_COMMAND} -E copy \"${FREEIMAGE_BIN_PATH}/FreeImaged.dll\" \"${OUTPUT_FOLDER}/\"
90                 COMMAND ${CMAKE_COMMAND} -E copy \"${GLEW_BIN_PATH}/glew32.dll\" \"${OUTPUT_FOLDER}/\"
91                 COMMAND ${CMAKE_COMMAND} -E copy \"${OPENAL_BIN_PATH}/OpenAL32.dll\" \"${OUTPUT_FOLDER}/\"
92                 COMMAND ${CMAKE_COMMAND} -E copy \"${OPENAL_BIN_PATH}/wrap_oal.dll\" \"${OUTPUT_FOLDER}/\"
93                 COMMAND ${CMAKE_COMMAND} -E copy \"${TBB_BIN_PATH}/tbb.dll\" \"${OUTPUT_FOLDER}/\"
94                 COMMAND ${CMAKE_COMMAND} -E copy \"${TBB_BIN_PATH}/tbb_debug.dll\" \"${OUTPUT_FOLDER}/\"
95                 COMMAND ${CMAKE_COMMAND} -E copy \"${TBB_BIN_PATH}/tbbmalloc.dll\" \"${OUTPUT_FOLDER}/\"
96                 COMMAND ${CMAKE_COMMAND} -E copy \"${TBB_BIN_PATH}/tbbmalloc_debug.dll\" \"${OUTPUT_FOLDER}/\"
97                 COMMAND ${CMAKE_COMMAND} -E copy \"${TBB_BIN_PATH}/tbbmalloc_proxy.dll\" \"${OUTPUT_FOLDER}/\"
98                 COMMAND ${CMAKE_COMMAND} -E copy \"${TBB_BIN_PATH}/tbbmalloc_proxy_debug.dll\" \"${OUTPUT_FOLDER}/\"
99
100                 COMMAND ${CMAKE_COMMAND} -E copy \"${LIBERATION_FONTS_BIN_PATH}/LiberationSans-Regular.ttf\" \"${OUTPUT_FOLDER}/\"
101                 COMMAND ${CMAKE_COMMAND} -E copy \"${LIBERATION_FONTS_BIN_PATH}/LiberationSans-Regular.ttf\" \"${CMAKE_CURRENT_BINARY_DIR}/\"
102
103                 COMMAND ${CMAKE_COMMAND} -E copy \"${CMAKE_CURRENT_SOURCE_DIR}/casparcg.config\" \"${OUTPUT_FOLDER}/\"
104                 COMMAND ${CMAKE_COMMAND} -E copy \"${CMAKE_CURRENT_SOURCE_DIR}/casparcg.config\" \"${CMAKE_CURRENT_BINARY_DIR}/\"
105 )