aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp/scheme/CMakeLists.txt
blob: fd618ecca9f59e955121d1bf6a6bd1eb90febb73 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
add_library(library-cpp-scheme)
target_link_libraries(library-cpp-scheme PUBLIC
  contrib-libs-cxxsupp
  yutil
  contrib-libs-protobuf
  library-cpp-json
  cpp-string_utils-relaxed_escaper
  tools-enum_parser-enum_serialization_runtime
)
target_sources(library-cpp-scheme PRIVATE
  ${CMAKE_SOURCE_DIR}/library/cpp/scheme/scheme.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/scheme/scimpl_private.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/scheme/scimpl_protobuf.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/scheme/scimpl_json_read.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/scheme/scimpl_json_write.cpp
)
generate_enum_serilization(library-cpp-scheme
  ${CMAKE_SOURCE_DIR}/library/cpp/scheme/scheme.h
  INCLUDE_HEADERS
  library/cpp/scheme/scheme.h
)
target_ragel_lexers(library-cpp-scheme
  PRIVATE
  ${CMAKE_SOURCE_DIR}/library/cpp/scheme/scimpl_select.rl6
  -CG2
)