Fix some build problems
This commit is contained in:
parent
ced7c7786f
commit
2864ba5a43
|
@ -51,11 +51,15 @@ This will place the Lexesis executable in the `build/bin` folder, with some extr
|
||||||
You can now simply run `./bin/Lexesis` with the arguments you like (see below and in the man pages for an overview).
|
You can now simply run `./bin/Lexesis` with the arguments you like (see below and in the man pages for an overview).
|
||||||
|
|
||||||
### Running tests
|
### Running tests
|
||||||
First, build Lexesis in debug mode. The only difference with the normal building, is the line where you call cmake. That line should read
|
First, build Lexesis in debug mode. The first difference with the normal building, is the line where you call cmake. That line should read
|
||||||
|
|
||||||
cmake .. -DCMAKE_BUILD_TYPE=Debug
|
cmake .. -DCMAKE_BUILD_TYPE=Debug
|
||||||
|
|
||||||
instead. Afterwards, build all the examples as well, since they are used to test the functionality of the generated lexers.
|
instead. Afterwards, after calling `make install`, build all the examples as well with
|
||||||
|
|
||||||
|
make examples
|
||||||
|
|
||||||
|
since they are used to test the functionality of the generated lexers.
|
||||||
|
|
||||||
If everything is correctly built, the only thing that remains is to call
|
If everything is correctly built, the only thing that remains is to call
|
||||||
|
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
cmake_minimum_required(VERSION 3.2.2)
|
|
||||||
project(cpp-optparse)
|
|
||||||
|
|
||||||
add_library(cpp-optparse OptionParser.cpp)
|
|
|
@ -1,2 +1,4 @@
|
||||||
add_subdirectory(keywords)
|
add_subdirectory(keywords)
|
||||||
add_subdirectory(SyntaxHighlighter)
|
add_subdirectory(SyntaxHighlighter)
|
||||||
|
|
||||||
|
add_custom_target(examples DEPENDS keywords highlighter)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
find_program(LEXESIS_EXE Lexesis PATH "${CMAKE_CURRENT_SOURCE_DIR}/../../../build/bin")
|
find_program(LEXESIS_EXE Lexesis PATH "${CMAKE_CURRENT_SOURCE_DIR}/../../build/bin")
|
||||||
|
|
||||||
add_custom_command(DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/src/xmllexer.lxs"
|
add_custom_command(DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/src/xmllexer.lxs"
|
||||||
COMMAND ${LEXESIS_EXE} ARGS -d "${CMAKE_CURRENT_BINARY_DIR}" -n XMLLexer "${CMAKE_CURRENT_SOURCE_DIR}/src/xmllexer.lxs"
|
COMMAND ${LEXESIS_EXE} ARGS -d "${CMAKE_CURRENT_BINARY_DIR}" -n XMLLexer "${CMAKE_CURRENT_SOURCE_DIR}/src/xmllexer.lxs"
|
||||||
|
@ -14,6 +14,7 @@ include_directories("${CMAKE_CURRENT_BINARY_DIR}")
|
||||||
include_directories(include)
|
include_directories(include)
|
||||||
|
|
||||||
add_executable(highlighter
|
add_executable(highlighter
|
||||||
|
EXCLUDE_FROM_ALL
|
||||||
src/highlighter.cpp
|
src/highlighter.cpp
|
||||||
src/main.cpp
|
src/main.cpp
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/AttributeLexer.cpp"
|
"${CMAKE_CURRENT_BINARY_DIR}/AttributeLexer.cpp"
|
||||||
|
|
|
@ -8,6 +8,7 @@ add_custom_command(DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/keywordsLexer.lxs"
|
||||||
include_directories("${CMAKE_CURRENT_BINARY_DIR}")
|
include_directories("${CMAKE_CURRENT_BINARY_DIR}")
|
||||||
|
|
||||||
add_executable(keywords
|
add_executable(keywords
|
||||||
|
EXCLUDE_FROM_ALL
|
||||||
main.cpp
|
main.cpp
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/KeywordsLexer.cpp"
|
"${CMAKE_CURRENT_BINARY_DIR}/KeywordsLexer.cpp"
|
||||||
)
|
)
|
||||||
|
|
|
@ -10,7 +10,7 @@ REGEXES_DATA = [ #TODO
|
||||||
]
|
]
|
||||||
|
|
||||||
EXAMPLE_TESTS = { #Mapping from test name to executable and number of available test input files
|
EXAMPLE_TESTS = { #Mapping from test name to executable and number of available test input files
|
||||||
"keywords" : ("examples/keywords/keywords", 1),
|
"keywords" : ("examples/keywords/keywords", 2),
|
||||||
"highlighter": ("examples/SyntaxHighlighter/highlighter", 1),
|
"highlighter": ("examples/SyntaxHighlighter/highlighter", 1),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
MODULE: "Module"
|
||||||
|
MODULE: "module"
|
||||||
|
IDENT: "MODULE"
|
||||||
|
IDENT: "END"
|
||||||
|
END: "end"
|
||||||
|
END: "End"
|
||||||
|
IF: "if"
|
||||||
|
IDENT: "IF"
|
||||||
|
IF: "If"
|
||||||
|
IDENT: "something"
|
||||||
|
IDENT: "random"
|
||||||
|
DONE
|
|
@ -0,0 +1 @@
|
||||||
|
Module module MODULE END end End if IF If something random
|
Loading…
Reference in New Issue