2021-09-24 13:34:56 +00:00
|
|
|
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)
|
|
|
|
|
2021-09-24 15:28:10 +00:00
|
|
|
set(SOURCE_FILES
|
|
|
|
src/regular/RegularTree.cpp
|
2021-09-27 20:12:42 +00:00
|
|
|
src/regular/RegularTreeNode.cpp
|
2021-10-05 14:03:03 +00:00
|
|
|
src/NFA/NFAGraph.cpp
|
|
|
|
src/NFA/NFAGraphVertex.cpp
|
2021-10-03 13:42:51 +00:00
|
|
|
src/converters/RegularToNFA.cpp
|
2021-10-05 12:01:30 +00:00
|
|
|
src/converters/NFAToDFA.cpp
|
|
|
|
src/DFA/DFAGraph.cpp
|
|
|
|
src/DFA/DFAGraphVertex.cpp
|
|
|
|
src/converters/DFAToFDFA.cpp
|
|
|
|
src/converters/DFAToMinDFA.cpp
|
|
|
|
src/converters/DFAToRegular.cpp
|
2021-10-05 14:03:03 +00:00
|
|
|
src/converters/InvertFDFA.cpp
|
2021-09-24 15:28:10 +00:00
|
|
|
)
|
2021-09-24 13:34:56 +00:00
|
|
|
|
2021-09-26 23:59:08 +00:00
|
|
|
set(TEST_FILES
|
2021-10-05 14:03:03 +00:00
|
|
|
tests/regular/ParseRegular.cpp
|
|
|
|
tests/NFAToDFA/CheckEquivalence.cpp
|
|
|
|
tests/regularToDFA/RegularToDFA.cpp
|
2021-10-05 12:01:30 +00:00
|
|
|
tests/DFAToRegular/DFAToRegular.cpp
|
2021-10-05 14:03:03 +00:00
|
|
|
tests/invertFDFA/InvertFDFA.cpp
|
2021-10-05 15:13:31 +00:00
|
|
|
tests/DFAToRegular/DFAToRegular2.cpp
|
2021-09-26 23:59:08 +00:00
|
|
|
)
|
2021-09-24 13:34:56 +00:00
|
|
|
|
|
|
|
add_executable(Formalang src/main.cpp ${SOURCE_FILES})
|
|
|
|
|
2021-10-05 14:03:03 +00:00
|
|
|
add_executable(Tests tests/MainTest.cpp ${TEST_FILES} ${SOURCE_FILES})
|
2021-09-24 13:34:56 +00:00
|
|
|
|
|
|
|
target_link_libraries(Tests ${GTEST_LIBRARIES} Threads::Threads)
|
|
|
|
target_link_libraries(Formalang Threads::Threads)
|
|
|
|
|