summaryrefslogtreecommitdiff
path: root/src/parser
diff options
context:
space:
mode:
authorMathias Preiner <mathias.preiner@gmail.com>2018-08-10 16:19:43 -0700
committerMathias Preiner <mathias.preiner@gmail.com>2018-09-22 16:30:59 -0700
commitd5614f1c7f0380266abf6fd185b13d654657731d (patch)
treef73702f3c2e823a6a785f1465a06d221ef14d07b /src/parser
parent424923f1317f3182574ebe730ebe0c81b7dbf494 (diff)
cmake: Working build infrastructure.
TODO: cvc4autoconfig.h
Diffstat (limited to 'src/parser')
-rw-r--r--src/parser/CMakeLists.txt29
-rw-r--r--src/parser/cvc/CMakeLists.txt20
-rw-r--r--src/parser/smt1/CMakeLists.txt22
-rw-r--r--src/parser/smt2/CMakeLists.txt24
-rw-r--r--src/parser/tptp/CMakeLists.txt22
5 files changed, 109 insertions, 8 deletions
diff --git a/src/parser/CMakeLists.txt b/src/parser/CMakeLists.txt
index dcb580d8f..8c0a65fa7 100644
--- a/src/parser/CMakeLists.txt
+++ b/src/parser/CMakeLists.txt
@@ -1,3 +1,32 @@
+set(cvc4parser_src_files
+ antlr_input.cpp
+ antlr_input.h
+ antlr_input_imports.cpp
+ antlr_line_buffered_input.cpp
+ antlr_line_buffered_input.h
+ antlr_tracing.h
+ antlr_undefines.h
+ bounded_token_buffer.cpp
+ bounded_token_buffer.h
+ bounded_token_factory.cpp
+ bounded_token_factory.h
+ input.cpp
+ input.h
+ line_buffer.cpp
+ line_buffer.h
+ memory_mapped_input_buffer.cpp
+ memory_mapped_input_buffer.h
+ parser.cpp
+ parser.h
+ parser_builder.cpp
+ parser_builder.h
+ parser_exception.h
+)
+
+add_library(cvc4parser SHARED ${cvc4parser_src_files})
+set_target_properties(cvc4parser PROPERTIES COMPILE_DEFINITIONS __BUILDING_CVC4PARSERLIB)
+target_link_libraries(cvc4parser parsercvc parsersmt1 parsersmt2 parsertptp cvc4)
+
add_subdirectory(cvc)
add_subdirectory(smt1)
add_subdirectory(smt2)
diff --git a/src/parser/cvc/CMakeLists.txt b/src/parser/cvc/CMakeLists.txt
index 1f176cfb6..8f27cbb25 100644
--- a/src/parser/cvc/CMakeLists.txt
+++ b/src/parser/cvc/CMakeLists.txt
@@ -1,9 +1,25 @@
-add_custom_target(AntlrCvc
+set(parser_cvc_src_files
+ cvc_input.cpp
+ cvc_input.h
+)
+
+set(parser_cvc_gen_src_files
+ CvcLexer.c
+ CvcParser.c
+)
+
+add_custom_command(
+ OUTPUT ${parser_cvc_gen_src_files} CvcLexer.h CvcParser.h Cvc.tokens
COMMAND
${ANTLR_BINARY}
${CMAKE_CURRENT_SOURCE_DIR}/Cvc.g
-fo ${CMAKE_CURRENT_BINARY_DIR}
+ 2> /dev/null # Ignore Antlr3 warnings
DEPENDS
Cvc.g
)
-#add_dependencies(... AntlrCvc)
+
+add_library(parsercvc SHARED ${parser_cvc_src_files} ${parser_cvc_gen_src_files})
+set_target_properties(parsercvc PROPERTIES COMPILE_DEFINITIONS __BUILDING_CVC4PARSERLIB)
+set_source_files_properties(${parser_cvc_gen_src_files} PROPERTIES LANGUAGE CXX)
+add_dependencies(parsercvc expr)
diff --git a/src/parser/smt1/CMakeLists.txt b/src/parser/smt1/CMakeLists.txt
index f219d85d9..89f440e8e 100644
--- a/src/parser/smt1/CMakeLists.txt
+++ b/src/parser/smt1/CMakeLists.txt
@@ -1,9 +1,27 @@
-add_custom_target(AntlrSmt1
+set(parser_smt1_src_files
+ smt1.cpp
+ smt1.h
+ smt1_input.cpp
+ smt1_input.h
+)
+
+set(parser_smt1_gen_src_files
+ Smt1Lexer.c
+ Smt1Parser.c
+)
+
+add_custom_command(
+ OUTPUT ${parser_smt1_gen_src_files} Smt1Lexer.h Smt1Parser.h Smt1.tokens
COMMAND
${ANTLR_BINARY}
${CMAKE_CURRENT_SOURCE_DIR}/Smt1.g
-fo ${CMAKE_CURRENT_BINARY_DIR}
+ 2> /dev/null # Ignore Antlr3 warnings
DEPENDS
Smt1.g
)
-#add_dependencies(... AntlrSmt1)
+
+add_library(parsersmt1 SHARED ${parser_smt1_src_files} ${parser_smt1_gen_src_files})
+set_target_properties(parsersmt1 PROPERTIES COMPILE_DEFINITIONS __BUILDING_CVC4PARSERLIB)
+set_source_files_properties(${parser_smt1_gen_src_files} PROPERTIES LANGUAGE CXX)
+add_dependencies(parsersmt1 expr)
diff --git a/src/parser/smt2/CMakeLists.txt b/src/parser/smt2/CMakeLists.txt
index d35f500bb..b046a6767 100644
--- a/src/parser/smt2/CMakeLists.txt
+++ b/src/parser/smt2/CMakeLists.txt
@@ -1,9 +1,29 @@
-add_custom_target(AntlrSmt2
+set(parser_smt2_src_files
+ smt2.cpp
+ smt2.h
+ smt2_input.cpp
+ smt2_input.h
+ sygus_input.cpp
+ sygus_input.h
+)
+
+set(parser_smt2_gen_src_files
+ Smt2Lexer.c
+ Smt2Parser.c
+)
+
+add_custom_command(
+ OUTPUT ${parser_smt2_gen_src_files} Smt2Lexer.h Smt2Parser.h Smt2.tokens
COMMAND
${ANTLR_BINARY}
${CMAKE_CURRENT_SOURCE_DIR}/Smt2.g
-fo ${CMAKE_CURRENT_BINARY_DIR}
+ 2> /dev/null # Ignore Antlr3 warnings
DEPENDS
Smt2.g
)
-#add_dependencies(... AntlrSmt2)
+
+add_library(parsersmt2 SHARED ${parser_smt2_src_files} ${parser_smt2_gen_src_files})
+set_target_properties(parsersmt2 PROPERTIES COMPILE_DEFINITIONS __BUILDING_CVC4PARSERLIB)
+set_source_files_properties(${parser_smt2_gen_src_files} PROPERTIES LANGUAGE CXX)
+add_dependencies(parsersmt2 expr)
diff --git a/src/parser/tptp/CMakeLists.txt b/src/parser/tptp/CMakeLists.txt
index bee38ce87..22593e7b2 100644
--- a/src/parser/tptp/CMakeLists.txt
+++ b/src/parser/tptp/CMakeLists.txt
@@ -1,9 +1,27 @@
-add_custom_target(AntlrTptp
+set(parser_tptp_src_files
+ tptp.cpp
+ tptp.h
+ tptp_input.cpp
+ tptp_input.h
+)
+
+set(parser_tptp_gen_src_files
+ TptpLexer.c
+ TptpParser.c
+)
+
+add_custom_command(
+ OUTPUT ${parser_tptp_gen_src_files} TptpLexer.h TptpParser.h Tptp.tokens
COMMAND
${ANTLR_BINARY}
${CMAKE_CURRENT_SOURCE_DIR}/Tptp.g
-fo ${CMAKE_CURRENT_BINARY_DIR}
+ 2> /dev/null # Ignore Antlr3 warnings
DEPENDS
Tptp.g
)
-#add_dependencies(... AntlrTptp)
+
+add_library(parsertptp SHARED ${parser_tptp_src_files} ${parser_tptp_gen_src_files})
+set_target_properties(parsertptp PROPERTIES COMPILE_DEFINITIONS __BUILDING_CVC4PARSERLIB)
+set_source_files_properties(${parser_tptp_gen_src_files} PROPERTIES LANGUAGE CXX)
+add_dependencies(parsertptp expr)
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback