X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=shell%2FCMakeLists.txt;h=db65b656f495a1673da5744dc16599601e77ddde;hb=8e7009ec91b52dc3cfba1824381f6d8cd4efd318;hp=1cec0693dab04d63204884f836225085cda1d346;hpb=780ad4907eca246da325f164c212d3206aa67821;p=casparcg diff --git a/shell/CMakeLists.txt b/shell/CMakeLists.txt index 1cec0693d..db65b656f 100644 --- a/shell/CMakeLists.txt +++ b/shell/CMakeLists.txt @@ -4,6 +4,7 @@ project (shell) join_list("${CASPARCG_MODULE_INCLUDE_STATEMENTS}" "\n" CASPARCG_MODULE_INCLUDE_STATEMENTS) join_list("${CASPARCG_MODULE_INIT_STATEMENTS}" "\n" CASPARCG_MODULE_INIT_STATEMENTS) join_list("${CASPARCG_MODULE_UNINIT_STATEMENTS}" "\n" CASPARCG_MODULE_UNINIT_STATEMENTS) +join_list("${CASPARCG_MODULE_COMMAND_LINE_ARG_INTERCEPTORS_STATEMENTS}" "\n" CASPARCG_MODULE_COMMAND_LINE_ARG_INTERCEPTORS_STATEMENTS) configure_file("${PROJECT_SOURCE_DIR}/included_modules.tmpl" "${PROJECT_SOURCE_DIR}/included_modules.h") if (MSVC) @@ -18,11 +19,14 @@ elseif (CMAKE_COMPILER_IS_GNUCXX) ) endif () set(SOURCES + casparcg.config + included_modules.tmpl main.cpp server.cpp stdafx.cpp ) set(HEADERS + default_audio_config.h included_modules.h platform_specific.h server.h @@ -32,6 +36,15 @@ set(HEADERS add_executable(casparcg ${SOURCES} ${HEADERS} ${OS_SPECIFIC_SOURCES}) add_precompiled_header(casparcg stdafx.h FORCEINCLUDE) +add_executable(generate_docs generate_docs.cpp included_modules.h) +target_link_libraries(generate_docs + protocol + accelerator + + "${CASPARCG_MODULE_PROJECTS}" +) + + include_directories(..) include_directories(${BOOST_INCLUDE_PATH}) include_directories(${RXCPP_INCLUDE_PATH}) @@ -39,6 +52,12 @@ include_directories(${TBB_INCLUDE_PATH}) source_group(sources ./*) +if (MSVC) + target_link_libraries(casparcg + zlibstat.lib + ) +endif () + target_link_libraries(casparcg accelerator common @@ -46,62 +65,23 @@ target_link_libraries(casparcg protocol "${CASPARCG_MODULE_PROJECTS}" - reroute - - alibcof64.lib - jpeg.lib - sndfile.lib - optimized sfml-system-2.lib - optimized sfml-window-2.lib - optimized sfml-graphics-2.lib - debug sfml-system-d-2.lib - debug sfml-window-d-2.lib - debug sfml-graphics-d-2.lib - Winmm.lib - Ws2_32.lib - avformat.lib - avcodec.lib - avutil.lib - avfilter.lib - swscale.lib - swresample.lib - optimized tbb.lib - debug tbb_debug.lib - OpenGL32.lib - glew32.lib - openal32.lib - optimized FreeImage.lib - debug FreeImaged.lib - freetype.lib - zlibstat.lib ) -set(OUTPUT_FOLDER "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}") +add_custom_target(casparcg_copy_dependencies ALL) -add_custom_command(TARGET casparcg POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy \"${FFMPEG_BIN_PATH}/avcodec-55.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${FFMPEG_BIN_PATH}/avdevice-55.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${FFMPEG_BIN_PATH}/avfilter-4.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${FFMPEG_BIN_PATH}/avformat-55.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${FFMPEG_BIN_PATH}/avutil-52.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${FFMPEG_BIN_PATH}/postproc-52.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${FFMPEG_BIN_PATH}/swresample-0.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${FFMPEG_BIN_PATH}/swscale-2.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${FREEIMAGE_BIN_PATH}/FreeImage.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${FREEIMAGE_BIN_PATH}/FreeImaged.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${GLEW_BIN_PATH}/glew32.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${OPENAL_BIN_PATH}/OpenAL32.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${OPENAL_BIN_PATH}/wrap_oal.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${TBB_BIN_PATH}/tbb.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${TBB_BIN_PATH}/tbb_debug.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${TBB_BIN_PATH}/tbbmalloc.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${TBB_BIN_PATH}/tbbmalloc_debug.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${TBB_BIN_PATH}/tbbmalloc_proxy.dll\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${TBB_BIN_PATH}/tbbmalloc_proxy_debug.dll\" \"${OUTPUT_FOLDER}/\" +casparcg_add_runtime_dependency("${LIBERATION_FONTS_BIN_PATH}/LiberationSans-Regular.ttf") +casparcg_add_runtime_dependency("${CMAKE_CURRENT_SOURCE_DIR}/casparcg.config") - COMMAND ${CMAKE_COMMAND} -E copy \"${LIBERATION_FONTS_BIN_PATH}/LiberationSans-Regular.ttf\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${LIBERATION_FONTS_BIN_PATH}/LiberationSans-Regular.ttf\" \"${CMAKE_CURRENT_BINARY_DIR}/\" +set(OUTPUT_FOLDER "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}") +add_custom_command(TARGET casparcg_copy_dependencies POST_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory \"${OUTPUT_FOLDER}\") - COMMAND ${CMAKE_COMMAND} -E copy \"${CMAKE_CURRENT_SOURCE_DIR}/casparcg.config\" \"${OUTPUT_FOLDER}/\" - COMMAND ${CMAKE_COMMAND} -E copy \"${CMAKE_CURRENT_SOURCE_DIR}/casparcg.config\" \"${CMAKE_CURRENT_BINARY_DIR}/\" -) +foreach(FILE_TO_COPY ${CASPARCG_RUNTIME_DEPENDENCIES}) + if(IS_DIRECTORY ${FILE_TO_COPY}) + get_filename_component(FOLDER_NAME "${FILE_TO_COPY}" NAME) + add_custom_command(TARGET casparcg_copy_dependencies POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_directory \"${FILE_TO_COPY}\" \"${OUTPUT_FOLDER}/${FOLDER_NAME}\") + add_custom_command(TARGET casparcg_copy_dependencies POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_directory \"${FILE_TO_COPY}\" \"${CMAKE_CURRENT_BINARY_DIR}/${FOLDER_NAME}\") + else() + add_custom_command(TARGET casparcg_copy_dependencies POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy \"${FILE_TO_COPY}\" \"${OUTPUT_FOLDER}/\") + add_custom_command(TARGET casparcg_copy_dependencies POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy \"${FILE_TO_COPY}\" \"${CMAKE_CURRENT_BINARY_DIR}/\") + endif() +endforeach(FILE_TO_COPY)