-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathCMakeLists.txt
44 lines (30 loc) · 1.12 KB
/
CMakeLists.txt
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
cmake_minimum_required(VERSION 3.1)
project(lib-sql-text)
if(CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR)
find_package( lib-sql )
endif()
find_package(Catch2 REQUIRED)
# Boost
find_package( Boost 1.61.0 COMPONENTS filesystem system )
include_directories( ${Boost_INCLUDE_DIR} )
# SQL grammar library
add_library(sql_text INTERFACE)
target_include_directories(sql_text INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/include")
target_link_libraries(sql_text INTERFACE sql)
export(TARGETS sql_text FILE sql_textConfig.cmake)
export(PACKAGE sql_text)
# SQL parser library
set(LIBRARY_SOURCE_FILES
src/sql/text/parser.cpp)
add_library(sql_text_parser SHARED ${LIBRARY_SOURCE_FILES})
target_link_libraries(sql_text_parser sql)
target_include_directories(sql_text_parser PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include")
export(TARGETS sql_text_parser FILE sql_text_parserConfig.cmake)
export(PACKAGE sql_text_parser)
set_property(TARGET sql_text_parser PROPERTY CXX_STANDARD 17)
set_property(TARGET sql_text_parser PROPERTY CXX_STANDARD_REQUIRED ON)
# Catch
enable_testing(true)
set(TEST_ENABLED true)
# Tests
add_subdirectory(test)