CMakeLists.txt 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #
  2. # setup
  3. #
  4. set( WEB_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR} CACHE INTERNAL "" )
  5. #
  6. # web server
  7. #
  8. if ( NOT ENABLE_WEB_SERVER )
  9. return()
  10. endif ( NOT ENABLE_WEB_SERVER )
  11. if( BUILD_SERVERS AND ENABLE_WEB_SERVER )
  12. message( STATUS "Creating target web-server" )
  13. file(GLOB WEB_HEADERS ${WEB_SOURCE_DIR}/*.hpp)
  14. file(GLOB WEB_SOURCES ${WEB_SOURCE_DIR}/*.cpp)
  15. set( DEPENDENCIES common yaml-cpp httplib)
  16. set( LIBRARIES ${GLOBAL_LIBRARIES})
  17. set( INCLUDE_DIRS ${GLOBAL_INCLUDE_DIRS} ${COMMON_BASE_INCLUDE_DIRS} ${HTTPLIB_INCLUDE_DIRS} ${JSON_INCLUDE_DIRS} ${RA_INCLUDE_DIRS} )
  18. set( DEFINITIONS "${GLOBAL_DEFINITIONS} ${COMMON_BASE_DEFINITIONS}" )
  19. set( SOURCE_FILES ${COMMON_BASE_HEADERS} ${COMMON_HEADERS} ${WEB_HEADERS} ${WEB_SOURCES} )
  20. source_group( common FILES ${COMMON_BASE_HEADERS} ${COMMON_HEADERS} )
  21. source_group( web FILES ${WEB_HEADERS} ${WEB_SOURCES} )
  22. include_directories( ${INCLUDE_DIRS} )
  23. #message( STATUS "web-server SOURCE_FILES=${SOURCE_FILES}")
  24. add_executable( web-server ${SOURCE_FILES} )
  25. #message( STATUS "web-server LIBRARIES=${LIBRARIES}, DEPENDENCIES=${DEPENDENCIES} DEFINITIONS=${DEFINITIONS}")
  26. add_dependencies( web-server ${DEPENDENCIES} )
  27. target_link_libraries( web-server ${LIBRARIES} ${DEPENDENCIES} )
  28. set_target_properties( web-server PROPERTIES COMPILE_FLAGS "${DEFINITIONS}" )
  29. if( INSTALL_COMPONENT_RUNTIME )
  30. cpack_add_component( Runtime_webserver DESCRIPTION "web-server" DISPLAY_NAME "web-server" GROUP Runtime )
  31. install( TARGETS web-server
  32. DESTINATION "."
  33. COMPONENT Runtime_webserver )
  34. endif( INSTALL_COMPONENT_RUNTIME )
  35. set( TARGET_LIST ${TARGET_LIST} web-server CACHE INTERNAL "" )
  36. message( STATUS "Creating target web-server - done" )
  37. endif( BUILD_SERVERS AND ENABLE_WEB_SERVER)