aboutsummaryrefslogtreecommitdiff
path: root/lib/mstch/src/CMakeLists.txt
diff options
context:
space:
mode:
authorMistivia <i@mistivia.com>2025-01-16 15:43:04 +0800
committerMistivia <i@mistivia.com>2025-01-16 15:53:58 +0800
commit8689a7c78c50676ea739f52fbcee9f091709f5c0 (patch)
treebbb72c68e5e1753f751133941a402caa43e29a16 /lib/mstch/src/CMakeLists.txt
parent00afb767ae37488d99f78363d031b898b1932354 (diff)
add mstch
Diffstat (limited to 'lib/mstch/src/CMakeLists.txt')
-rw-r--r--lib/mstch/src/CMakeLists.txt64
1 files changed, 64 insertions, 0 deletions
diff --git a/lib/mstch/src/CMakeLists.txt b/lib/mstch/src/CMakeLists.txt
new file mode 100644
index 0000000..6517fc4
--- /dev/null
+++ b/lib/mstch/src/CMakeLists.txt
@@ -0,0 +1,64 @@
+find_package(Boost 1.54 REQUIRED)
+
+set(mstch_INCLUDE_DIR
+ ${PROJECT_SOURCE_DIR}/include CACHE STRING "mstch include directory")
+
+include_directories(
+ ${mstch_INCLUDE_DIR}
+ ${Boost_INCLUDE_DIR})
+
+set(SRC
+ state/in_section.cpp
+ state/outside_section.cpp
+ state/render_state.hpp
+ visitor/get_token.hpp
+ visitor/has_token.hpp
+ visitor/is_node_empty.hpp
+ visitor/render_node.hpp
+ visitor/render_section.hpp
+ mstch.cpp
+ render_context.cpp
+ template_type.cpp
+ token.cpp
+ utils.cpp)
+
+add_library(mstch STATIC ${SRC})
+
+set_property(TARGET mstch PROPERTY VERSION ${mstch_VERSION})
+
+install(
+ TARGETS mstch EXPORT mstchTargets
+ LIBRARY DESTINATION lib
+ ARCHIVE DESTINATION lib)
+
+install(
+ FILES "${PROJECT_SOURCE_DIR}/include/mstch/mstch.hpp"
+ DESTINATION include/mstch
+ COMPONENT Devel)
+
+include(CMakePackageConfigHelpers)
+write_basic_package_version_file(
+ "${CMAKE_CURRENT_BINARY_DIR}/mstch/mstch-config-version.cmake"
+ VERSION ${mstch_VERSION}
+ COMPATIBILITY AnyNewerVersion)
+
+export(
+ EXPORT mstchTargets
+ FILE "${CMAKE_CURRENT_BINARY_DIR}/mstch/mstch-targets.cmake"
+ NAMESPACE mstch::)
+
+configure_file(
+ "${PROJECT_SOURCE_DIR}/cmake/mstch-config.cmake"
+ "${CMAKE_CURRENT_BINARY_DIR}/mstch/mstch-config.cmake")
+
+install(
+ EXPORT mstchTargets
+ FILE mstch-targets.cmake
+ NAMESPACE mstch::
+ DESTINATION lib/cmake/mstch)
+
+install(FILES
+ "${PROJECT_SOURCE_DIR}/cmake/mstch-config.cmake"
+ "${CMAKE_CURRENT_BINARY_DIR}/mstch/mstch-config-version.cmake"
+ DESTINATION lib/cmake/mstch
+ COMPONENT Devel)