CMakeLists.txt 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. cmake_minimum_required(VERSION 2.8.5)
  2. project(sway C)
  3. set(CMAKE_C_FLAGS "-g")
  4. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "bin/")
  5. add_definitions("-Wall")
  6. set(CMAKE_BUILD_TYPE Debug)
  7. set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/CMake)
  8. find_package(XKBCommon REQUIRED)
  9. find_package(WLC REQUIRED)
  10. if (UNIX)
  11. find_library(DL_LIBRARY dl)
  12. mark_as_advanced(DL_LIBRARY)
  13. if (NOT DL_LIBRARY)
  14. message(FATAL_ERROR "libdl is needed on unix systems")
  15. endif ()
  16. endif (UNIX)
  17. FILE(GLOB sources ${PROJECT_SOURCE_DIR}/sway/*.c)
  18. include_directories(
  19. ${WLC_INCLUDE_DIRS}
  20. include/
  21. )
  22. add_executable(sway
  23. ${sources}
  24. )
  25. target_link_libraries(sway
  26. ${WLC_LIBRARIES}
  27. ${XKBCOMMON_LIBRARIES}
  28. ${DL_LIBRARY}
  29. )
  30. INSTALL(
  31. TARGETS sway
  32. RUNTIME DESTINATION bin
  33. )
  34. INSTALL(
  35. FILES ${PROJECT_SOURCE_DIR}/config
  36. DESTINATION /etc/sway/
  37. )
  38. ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/sway.1
  39. COMMAND a2x --no-xmllint --doctype manpage --format manpage
  40. -D ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${CMAKE_CURRENT_SOURCE_DIR}/sway.1.txt
  41. DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/sway.1.txt
  42. )
  43. ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/sway.5
  44. COMMAND a2x --no-xmllint --doctype manpage --format manpage
  45. -D ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${CMAKE_CURRENT_SOURCE_DIR}/sway.5.txt
  46. DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/sway.5.txt
  47. )
  48. ADD_CUSTOM_TARGET(man ALL
  49. DEPENDS ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/sway.1
  50. DEPENDS ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/sway.5)
  51. INSTALL(
  52. FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/sway.1
  53. DESTINATION ${CMAKE_INSTALL_PREFIX}/man/man1
  54. )
  55. INSTALL(
  56. FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/sway.5
  57. DESTINATION ${CMAKE_INSTALL_PREFIX}/man/man5
  58. )