mirror of
https://github.com/Orc/discount.git
synced 2026-09-25 04:10:00 +03:00
update the cmake scaffolding (patch by christophe-calmejane on github)
This commit is contained in:
+32
-15
@@ -100,36 +100,40 @@ if(NOT HAVE_S_ISCHR OR NOT HAVE_S_ISFIFO OR NOT HAVE_S_ISSOCK)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
configure_file(config.h.in
|
configure_file(config.h.in
|
||||||
"${_ROOT}/config.h"
|
"${CMAKE_CURRENT_BINARY_DIR}/config.h"
|
||||||
@ONLY)
|
@ONLY)
|
||||||
|
|
||||||
configure_file("${_ROOT}/version.c.in"
|
configure_file("${_ROOT}/version.c.in"
|
||||||
"${_ROOT}/version.c"
|
"${CMAKE_CURRENT_BINARY_DIR}/version.c"
|
||||||
@ONLY)
|
@ONLY)
|
||||||
set_property(SOURCE "${_ROOT}/version.c" APPEND PROPERTY COMPILE_DEFINITIONS
|
set_property(SOURCE "${CMAKE_CURRENT_BINARY_DIR}/version.c" APPEND PROPERTY COMPILE_DEFINITIONS
|
||||||
BRANCH=""
|
BRANCH=""
|
||||||
VERSION="${${PROJECT_NAME}_VERSION}")
|
VERSION="${${PROJECT_NAME}_VERSION}")
|
||||||
|
|
||||||
configure_file("${_ROOT}/mkdio.h.in"
|
configure_file("${_ROOT}/mkdio.h.in"
|
||||||
"${_ROOT}/mkdio.h"
|
"${CMAKE_CURRENT_BINARY_DIR}/mkdio.h"
|
||||||
@ONLY)
|
@ONLY)
|
||||||
if(${PROJECT_NAME}_CXX_BINDING)
|
if(${PROJECT_NAME}_CXX_BINDING)
|
||||||
message(STATUS "Applying c++ glue to mkdio.h")
|
message(STATUS "Applying c++ glue to mkdio.h")
|
||||||
file(READ "${_ROOT}/mkdio.h" _ROOT_MKDIO_H)
|
file(READ "${CMAKE_CURRENT_BINARY_DIR}/mkdio.h" _ROOT_MKDIO_H)
|
||||||
file(WRITE "${_ROOT}/mkdio.h" "#ifdef __cplusplus\nextern \"C\" {\n#endif\n")
|
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/mkdio.h" "#ifdef __cplusplus\nextern \"C\" {\n#endif\n")
|
||||||
file(APPEND "${_ROOT}/mkdio.h" "${_ROOT_MKDIO_H}")
|
file(APPEND "${CMAKE_CURRENT_BINARY_DIR}/mkdio.h" "${_ROOT_MKDIO_H}")
|
||||||
file(APPEND "${_ROOT}/mkdio.h" "#ifdef __cplusplus\n}\n#endif\n")
|
file(APPEND "${CMAKE_CURRENT_BINARY_DIR}/mkdio.h" "#ifdef __cplusplus\n}\n#endif\n")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
include_directories("${_ROOT}")
|
|
||||||
|
|
||||||
add_executable(mktags
|
add_executable(mktags
|
||||||
"${_ROOT}/mktags.c")
|
"${_ROOT}/mktags.c")
|
||||||
|
|
||||||
add_custom_command(OUTPUT "${_ROOT}/blocktags"
|
set(BLOCKTAGS_FILE "${CMAKE_CURRENT_BINARY_DIR}/blocktags")
|
||||||
COMMAND mktags > blocktags
|
add_custom_command(OUTPUT "${BLOCKTAGS_FILE}"
|
||||||
|
COMMAND mktags > ${BLOCKTAGS_FILE}
|
||||||
WORKING_DIRECTORY "${_ROOT}")
|
WORKING_DIRECTORY "${_ROOT}")
|
||||||
|
|
||||||
|
target_include_directories(mktags
|
||||||
|
PRIVATE
|
||||||
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
|
||||||
|
)
|
||||||
|
|
||||||
add_library(libmarkdown
|
add_library(libmarkdown
|
||||||
"${_ROOT}/mkdio.c"
|
"${_ROOT}/mkdio.c"
|
||||||
"${_ROOT}/markdown.c"
|
"${_ROOT}/markdown.c"
|
||||||
@@ -137,7 +141,7 @@ add_library(libmarkdown
|
|||||||
"${_ROOT}/generate.c"
|
"${_ROOT}/generate.c"
|
||||||
"${_ROOT}/resource.c"
|
"${_ROOT}/resource.c"
|
||||||
"${_ROOT}/docheader.c"
|
"${_ROOT}/docheader.c"
|
||||||
"${_ROOT}/version.c"
|
"${CMAKE_CURRENT_BINARY_DIR}/version.c"
|
||||||
"${_ROOT}/toc.c"
|
"${_ROOT}/toc.c"
|
||||||
"${_ROOT}/css.c"
|
"${_ROOT}/css.c"
|
||||||
"${_ROOT}/xml.c"
|
"${_ROOT}/xml.c"
|
||||||
@@ -147,7 +151,8 @@ add_library(libmarkdown
|
|||||||
"${_ROOT}/emmatch.c"
|
"${_ROOT}/emmatch.c"
|
||||||
"${_ROOT}/github_flavoured.c"
|
"${_ROOT}/github_flavoured.c"
|
||||||
"${_ROOT}/setup.c"
|
"${_ROOT}/setup.c"
|
||||||
"${_ROOT}/blocktags" "${_ROOT}/tags.c"
|
"${BLOCKTAGS_FILE}"
|
||||||
|
"${_ROOT}/tags.c"
|
||||||
"${_ROOT}/html5.c"
|
"${_ROOT}/html5.c"
|
||||||
"${_ROOT}/v2compat.c"
|
"${_ROOT}/v2compat.c"
|
||||||
"${_ROOT}/flagprocs.c"
|
"${_ROOT}/flagprocs.c"
|
||||||
@@ -156,11 +161,23 @@ add_library(libmarkdown
|
|||||||
set_target_properties(libmarkdown PROPERTIES
|
set_target_properties(libmarkdown PROPERTIES
|
||||||
OUTPUT_NAME markdown)
|
OUTPUT_NAME markdown)
|
||||||
|
|
||||||
|
target_include_directories(libmarkdown
|
||||||
|
PUBLIC
|
||||||
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
|
||||||
|
PRIVATE
|
||||||
|
$<BUILD_INTERFACE:${_ROOT}>
|
||||||
|
)
|
||||||
|
|
||||||
if(NOT ${PROJECT_NAME}_ONLY_LIBRARY)
|
if(NOT ${PROJECT_NAME}_ONLY_LIBRARY)
|
||||||
add_library(common OBJECT
|
add_library(common OBJECT
|
||||||
"${_ROOT}/pgm_options.c"
|
"${_ROOT}/pgm_options.c"
|
||||||
"${_ROOT}/gethopt.c")
|
"${_ROOT}/gethopt.c")
|
||||||
|
|
||||||
|
target_include_directories(common
|
||||||
|
PRIVATE
|
||||||
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
|
||||||
|
)
|
||||||
|
|
||||||
add_executable(markdown
|
add_executable(markdown
|
||||||
"${_ROOT}/main.c"
|
"${_ROOT}/main.c"
|
||||||
$<TARGET_OBJECTS:common>)
|
$<TARGET_OBJECTS:common>)
|
||||||
@@ -194,7 +211,7 @@ if(${PROJECT_NAME}_MAKE_INSTALL)
|
|||||||
"${CMAKE_INSTALL_LIBDIR}/pkgconfig"
|
"${CMAKE_INSTALL_LIBDIR}/pkgconfig"
|
||||||
CACHE STRING "The pkg-config packages")
|
CACHE STRING "The pkg-config packages")
|
||||||
endif()
|
endif()
|
||||||
install(FILES "${_ROOT}/mkdio.h"
|
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/mkdio.h"
|
||||||
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
|
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
|
||||||
target_include_directories(libmarkdown INTERFACE
|
target_include_directories(libmarkdown INTERFACE
|
||||||
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
||||||
|
|||||||
Reference in New Issue
Block a user