Install step
This commit is contained in:
parent
0f6f923666
commit
f4f9de8391
|
@ -78,7 +78,7 @@ include_directories(${G3LOG_INCLUDE_DIR})
|
|||
find_package(Lexesis QUIET)
|
||||
if (NOT LEXESIS_FOUND)
|
||||
ExternalProject_Add(ext-lexesis
|
||||
GIT_REPOSITORY git@gitlab.com:Robin_Jadoul/Lexesis.git
|
||||
GIT_REPOSITORY https://gitlab.com/Robin_Jadoul/Lexesis.git
|
||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=.
|
||||
)
|
||||
add_library(templ IMPORTED STATIC GLOBAL)
|
||||
|
@ -157,8 +157,6 @@ if(DOXYGEN_FOUND)
|
|||
add_custom_target(doc ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "Generating API documentation" VERBATIM)
|
||||
endif(DOXYGEN_FOUND)
|
||||
|
||||
set(CMAKE_INSTALL_PREFIX "${CMAKE_CURRENT_BINARY_DIR}")
|
||||
|
||||
##Warning level
|
||||
if (${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU" OR ${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -pedantic")
|
||||
|
@ -179,3 +177,7 @@ install(DIRECTORY templates
|
|||
|
||||
install(DIRECTORY include/Parsodus
|
||||
DESTINATION include)
|
||||
|
||||
install(EXPORT ParsodusTargets DESTINATION lib/cmake/Parsodus)
|
||||
install(FILES cmake/ParsodusConfig.cmake DESTINATION lib/cmake/Parsodus)
|
||||
install(DIRECTORY man/man1 man/man5 DESTINATION man)
|
||||
|
|
17
README.md
17
README.md
|
@ -52,10 +52,9 @@ Get your terminal in the source tree and run the following commands:
|
|||
cd build
|
||||
cmake ..
|
||||
make
|
||||
make install
|
||||
sudo make install
|
||||
|
||||
This will place the Parsodus executable in the `build/bin` folder, with some extra needed data for Parsodus in `build/share`
|
||||
You can now simply run `./bin/Parsodus` with the arguments you like (see below and in the man pages for an overview).
|
||||
You can now simply run `Parsodus` with the arguments you like (see below and in the man pages for an overview).
|
||||
|
||||
If you want to build the documentation as well, simply run
|
||||
|
||||
|
@ -65,6 +64,18 @@ The output should be located in `build/doc`, with the main *html* page in `build
|
|||
|
||||
### Running tests
|
||||
|
||||
|
||||
First, build Parsodus 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 -DCMAKE_INSTALL_PREFIX=.
|
||||
|
||||
instead. Afterwards, after calling make install (which now installs locally in the build folder, so you don't need the sudo), build all the examples as well with
|
||||
|
||||
cmake .
|
||||
make examples
|
||||
|
||||
since they are used to test the functionality of the generated parsers.
|
||||
|
||||
To run the unit tests: simply run `make test`
|
||||
To run the tests for the generated parser: build the examples and run `python3 ./run_tests.py` in the project root
|
||||
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
get_filename_component(SELF_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
||||
include(${SELF_DIR}/ParsodusTargets.cmake)
|
||||
get_filename_component(PARSODUS_INCLUDE_DIRS "${SELF_DIR}/../../../include/" ABSOLUTE)
|
||||
get_filename_component(PARSODUS_EXE "${SELF_DIR}/../../../bin/Parsodus" ABSOLUTE)
|
||||
set(PARSODUS_FOUND TRUE)
|
|
@ -55,9 +55,10 @@ target_link_libraries(Parsodus
|
|||
${CMAKE_THREAD_LIBS_INIT}
|
||||
)
|
||||
|
||||
install(TARGETS Parsodus pds Parsodus-util Parsodus-tables
|
||||
install(TARGETS Parsodus pds Parsodus-util Parsodus-tables EXPORT ParsodusTargets
|
||||
RUNTIME DESTINATION bin
|
||||
LIBRARY DESTINATION lib
|
||||
ARCHIVE DESTINATION lib
|
||||
INCLUDES DESTINATION include
|
||||
)
|
||||
|
||||
|
|
Loading…
Reference in New Issue