You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
v4l2rtspserver/CMakeLists.txt

83 lines
3.0 KiB
CMake

10 years ago
cmake_minimum_required(VERSION 2.6)
# set project name from current directory
get_filename_component(BASENAME ${CMAKE_SOURCE_DIR} NAME)
project(${BASENAME})
10 years ago
set(CMAKE_BUILD_TYPE DEBUG)
set(CMAKE_C_FLAGS "-Wall")
set(CMAKE_CXX_FLAGS "-Wall")
10 years ago
# define executable to build
include_directories("${PROJECT_BINARY_DIR}/inc")
aux_source_directory(src SRC_FILES)
add_executable(${PROJECT_NAME} ${SRC_FILES})
# v4l2wrapper
include_directories("${PROJECT_BINARY_DIR}/v4l2wrapper/inc")
find_library(V4L2WRAPPER_LIBRARY v4l2wrapper PATHS "${PROJECT_BINARY_DIR}/v4l2wrapper")
if (NOT V4L2WRAPPER_LIBRARY)
message(STATUS "Could not find v4l2wrapper")
EXEC_PROGRAM("git submodule init && git submodule update && make -C v4l2wrapper")
find_library(V4L2WRAPPER_LIBRARY v4l2wrapper PATHS "${PROJECT_BINARY_DIR}/v4l2wrapper")
endif (NOT V4L2WRAPPER_LIBRARY)
target_link_libraries(${PROJECT_NAME} ${V4L2WRAPPER_LIBRARY})
10 years ago
#pthread
find_package (Threads)
target_link_libraries (${PROJECT_NAME} ${CMAKE_THREAD_LIBS_INIT})
10 years ago
# LOG4CPP
find_path(LOG4CPP_INCLUDE_DIR log4cpp/Category.hh)
if (NOT LOG4CPP_INCLUDE_DIR)
message(STATUS "Could not find the liblog4cpp5-dev.")
EXEC_PROGRAM("sudo apt-get install -y liblog4cpp5-dev")
10 years ago
find_path(V4L2_INCLUDE_DIR log4cpp/Category.hh)
endif (NOT LOG4CPP_INCLUDE_DIR)
include_directories(${LOG4CPP_INCLUDE_DIR})
find_library(LOG4CPP_LIBRARY log4cpp)
target_link_libraries(${PROJECT_NAME} "${LOG4CPP_LIBRARY}")
10 years ago
# V4L2
find_path(LIBV4L2_INCLUDE_DIR libv4l2.h)
if (NOT LIBV4L2_INCLUDE_DIR)
message(STATUS "Could not find package V4L2. Try to install it")
EXEC_PROGRAM("sudo apt-get install -y libv4l-dev")
find_path(LIBV4L2_INCLUDE_DIR libv4l2.h)
endif (NOT LIBV4L2_INCLUDE_DIR)
include_directories(${LIBV4L2_INCLUDE_DIR})
10 years ago
find_library(LIBV4L2_LIBRARY v4l2)
target_link_libraries(${PROJECT_NAME} "${LIBV4L2_LIBRARY}")
10 years ago
# live555
find_path(LIBLIVE555_INCLUDE_DIR liveMedia/liveMedia.hh)
if (NOT LIBLIVE555_INCLUDE_DIR)
message(STATUS "Could not find the liblivemedia-dev")
EXEC_PROGRAM("sudo apt-get install -y liblivemedia-dev")
10 years ago
find_path(LIBLIVE555_INCLUDE_DIR liveMedia/liveMedia.hh)
10 years ago
endif (NOT LIBLIVE555_INCLUDE_DIR)
foreach (LIBLIVE555_module groupsock liveMedia UsageEnvironment BasicUsageEnvironment)
include_directories(${LIBLIVE555_INCLUDE_DIR}/${LIBLIVE555_module})
endforeach (LIBLIVE555_module)
set(LIBLIVE555_LIBRARIES "")
foreach (LIBLIVE555_module groupsock liveMedia UsageEnvironment BasicUsageEnvironment)
find_library( ${LIBLIVE555_module}_LIBRARY ${LIBLIVE555_module} )
if ( ${LIBLIVE555_module}_LIBRARY )
set(LIBLIVE555_LIBRARIES ${LIBLIVE555_LIBRARIES} ${${LIBLIVE555_module}_LIBRARY})
endif ( ${LIBLIVE555_module}_LIBRARY )
endforeach (LIBLIVE555_module)
target_link_libraries(${PROJECT_NAME} ${LIBLIVE555_LIBRARIES})
# package
install (TARGETS ${PROJECT_NAME} DESTINATION bin)
SET(CPACK_GENERATOR "DEB")
SET(CPACK_DEBIAN_PACKAGE_MAINTAINER "Michel Promonet")
SET(CPACK_PACKAGE_CONTACT "michel.promonet@free.fr")
INCLUDE(CPack)