49 lines
1.1 KiB
CMake
49 lines
1.1 KiB
CMake
cmake_minimum_required(VERSION 3.10)
|
|
|
|
project("Formalang")
|
|
|
|
# set(CMAKE_CXX_FLAGS "-O3")
|
|
|
|
find_package(GTest REQUIRED)
|
|
find_package(Threads REQUIRED)
|
|
|
|
include_directories(
|
|
"include"
|
|
${GTEST_INCLUDE_DIRS}
|
|
${Boost_INCLUDE_DIR}
|
|
)
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
|
|
set(SOURCE_FILES
|
|
src/regular/RegularTree.cpp
|
|
src/regular/RegularTreeNode.cpp
|
|
src/NFA/NFAGraph.cpp
|
|
src/NFA/NFAGraphVertex.cpp
|
|
src/converters/RegularToNFA.cpp
|
|
src/converters/NFAToDFA.cpp
|
|
src/DFA/DFAGraph.cpp
|
|
src/DFA/DFAGraphVertex.cpp
|
|
src/converters/DFAToFDFA.cpp
|
|
src/converters/DFAToMinDFA.cpp
|
|
src/converters/DFAToRegular.cpp
|
|
src/converters/InvertFDFA.cpp
|
|
)
|
|
|
|
set(TEST_FILES
|
|
tests/regular/ParseRegular.cpp
|
|
tests/NFAToDFA/CheckEquivalence.cpp
|
|
tests/regularToDFA/RegularToDFA.cpp
|
|
tests/DFAToRegular/DFAToRegular.cpp
|
|
tests/invertFDFA/InvertFDFA.cpp
|
|
tests/DFAToRegular/DFAToRegular2.cpp
|
|
)
|
|
|
|
add_executable(Formalang src/main.cpp ${SOURCE_FILES})
|
|
|
|
add_executable(Tests tests/MainTest.cpp ${TEST_FILES} ${SOURCE_FILES})
|
|
|
|
target_link_libraries(Tests ${GTEST_LIBRARIES} Threads::Threads)
|
|
target_link_libraries(Formalang Threads::Threads)
|
|
|