aboutsummaryrefslogtreecommitdiff
path: root/src/CMakeLists.txt
blob: 6ab59b5a2a368b57dccb36e25138c391034a73de (plain)
  1. set(LIBRARY_cmark "commonmark")
  2. set(LIBRARY_cmark_SOURCES blocks.c
  3. inlines.c
  4. debug.h
  5. print.c
  6. scanners.h
  7. scanners.c
  8. scanners.re
  9. cmark.h
  10. utf8.h
  11. utf8.c
  12. buffer.h
  13. buffer.c
  14. references.h
  15. references.c
  16. html/html.c
  17. html/html_unescape.h
  18. html/html_unescape.gperf
  19. html/houdini.h
  20. html/houdini_href_e.c
  21. html/houdini_html_e.c
  22. html/houdini_html_u.c
  23. )
  24. set(PROGRAM_cmark "cmark")
  25. set(PROGRAM_cmark_SOURCES ${LIBRARY_cmark_SOURCES}
  26. main.c)
  27. include_directories(. html)
  28. if (MSVC)
  29. file(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR} DOS_CURRENT_SOURCE_DIR)
  30. add_custom_command( OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/scanners.c
  31. DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/scanners.re
  32. COMMAND ${RE2C} --case-insensitive -b -i ${DOS_CURRENT_SOURCE_DIR}\\scanners.re >${DOS_CURRENT_SOURCE_DIR}\\scanners.c)
  33. else(MSVC)
  34. add_custom_command( OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/scanners.c
  35. DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/scanners.re
  36. COMMAND ${RE2C} --case-insensitive -b -i ${CMAKE_CURRENT_SOURCE_DIR}/scanners.re >${CMAKE_CURRENT_SOURCE_DIR}/scanners.c)
  37. endif(MSVC)
  38. add_executable(${PROGRAM_cmark}
  39. ${PROGRAM_cmark_SOURCES})
  40. add_library(${LIBRARY_cmark} SHARED ${LIBRARY_cmark_SOURCES})
  41. set_property(TARGET ${LIBRARY_cmark}
  42. APPEND PROPERTY MACOSX_RPATH true)
  43. if (MSVC)
  44. set_property(TARGET ${PROGRAM_cmark}
  45. APPEND PROPERTY LINK_FLAGS /INCREMENTAL:NO)
  46. # if sometimes libs are needed ...
  47. #target_link_libraries(${PROGRAM_chronolog})
  48. endif(MSVC)
  49. install(TARGETS ${PROGRAM_cmark}
  50. RUNTIME DESTINATION bin)
  51. install(TARGETS ${LIBRARY_cmark}
  52. LIBRARY DESTINATION lib)