CMakeLists.txt 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. cmake_minimum_required(VERSION 3.0.0)
  2. project(mumsi)
  3. set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
  4. INCLUDE(FindPkgConfig)
  5. find_package(Boost COMPONENTS system unit_test_framework program_options filesystem REQUIRED)
  6. find_package(PkgConfig REQUIRED)
  7. pkg_check_modules(OPUS "opus")
  8. pkg_check_modules(PJSIP "libpjproject")
  9. pkg_check_modules(LOG4CPP "log4cpp")
  10. pkg_check_modules(SNDFILE "sndfile")
  11. include_directories(${OPUS_INCLUDE_DIRS})
  12. include_directories(${PJSIP_INCLUDE_DIRS})
  13. include_directories(${LOG4CPP_INCLUDE_DIRS})
  14. include_directories(${SNDFILE_INCLUDE_DIRS})
  15. include_directories(libmumble)
  16. link_directories(libmumble)
  17. set(SOURCE_FILES
  18. PjsuaCommunicator.cpp
  19. PjsuaMediaPort.cpp
  20. MumbleCommunicator.cpp
  21. SoundSampleQueue.cpp
  22. AbstractCommunicator.hpp
  23. )
  24. set(TEST_SOURCE_FILES
  25. SoundSampleQueueTest.cpp
  26. )
  27. add_executable(mumsi ${SOURCE_FILES} main.cpp)
  28. target_link_libraries(mumsi ${OPUS_LIBRARIES})
  29. target_link_libraries(mumsi ${PJSIP_LIBRARIES})
  30. target_link_libraries(mumsi ${LOG4CPP_LIBRARIES})
  31. target_link_libraries(mumsi ${SNDFILE_LIBRARIES})
  32. target_link_libraries(mumsi ${Boost_LIBRARIES})
  33. target_link_libraries(mumsi mumble)
  34. add_executable(mumsi_test ${SOURCE_FILES} ${TEST_SOURCE_FILES} test_main.cpp)
  35. target_link_libraries(mumsi_test ${OPUS_LIBRARIES})
  36. target_link_libraries(mumsi_test ${PJSIP_LIBRARIES})
  37. target_link_libraries(mumsi_test ${LOG4CPP_LIBRARIES})
  38. target_link_libraries(mumsi_test ${SNDFILE_LIBRARIES})
  39. target_link_libraries(mumsi_test ${Boost_LIBRARIES})
  40. target_link_libraries(mumsi_test mumble)