Merge branch 'master' into patch-1
This commit is contained in:
commit
eec33c5210
|
@ -286,8 +286,10 @@ YYYY/MM/DD, github id, Full name, email
|
||||||
2020/12/03, electrum, David Phillips, david@acz.org
|
2020/12/03, electrum, David Phillips, david@acz.org
|
||||||
2021/01/25, l215884529, Qiheng Liu, 13607681+l215884529@users.noreply.github.com
|
2021/01/25, l215884529, Qiheng Liu, 13607681+l215884529@users.noreply.github.com
|
||||||
2021/02/02, tsotnikov, Taras Sotnikov, taras.sotnikov@gmail.com
|
2021/02/02, tsotnikov, Taras Sotnikov, taras.sotnikov@gmail.com
|
||||||
|
2021/02/10, jirislaby, Jiri Slaby, jirislaby@gmail.com
|
||||||
2021/02/21, namasikanam, Xingyu Xie, namasikanam@gmail.com
|
2021/02/21, namasikanam, Xingyu Xie, namasikanam@gmail.com
|
||||||
2021/02/27, khmarbaise, Karl Heinz Marbaise, github@soebes.com
|
2021/02/27, khmarbaise, Karl Heinz Marbaise, github@soebes.com
|
||||||
2021/03/02, hackeris
|
2021/03/02, hackeris
|
||||||
2021/03/03, xTachyon, Damian Andrei, xTachyon@users.noreply.github.com
|
2021/03/03, xTachyon, Damian Andrei, xTachyon@users.noreply.github.com
|
||||||
2021/04/08, bigerl, Alexander Bigerl, bigerl@mail.upb.de
|
2021/04/08, bigerl, Alexander Bigerl, bigerl@mail.upb.de
|
||||||
|
2021/04/07, b1f6c1c4, Jinzheng Tu, b1f6c1c4@gmail.com
|
|
@ -112,7 +112,7 @@ else()
|
||||||
EXCLUDE_FROM_ALL 1)
|
EXCLUDE_FROM_ALL 1)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Seperate build step as rarely people want both
|
# Separate build step as rarely people want both
|
||||||
set(ANTLR4_BUILD_DIR ${ANTLR4_ROOT})
|
set(ANTLR4_BUILD_DIR ${ANTLR4_ROOT})
|
||||||
if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.14.0")
|
if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.14.0")
|
||||||
# CMake 3.14 builds in above's SOURCE_SUBDIR when BUILD_IN_SOURCE is true
|
# CMake 3.14 builds in above's SOURCE_SUBDIR when BUILD_IN_SOURCE is true
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
include(${CMAKE_ROOT}/Modules/ExternalProject.cmake)
|
include(${CMAKE_ROOT}/Modules/ExternalProject.cmake)
|
||||||
|
|
||||||
set(THIRDPARTY_DIR ${CMAKE_BINARY_DIR}/runtime/thirdparty)
|
set(THIRDPARTY_DIR ${CMAKE_BINARY_DIR}/runtime/thirdparty)
|
||||||
|
@ -12,7 +11,6 @@ ExternalProject_Add(
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${UTFCPP_DIR}/install -DUTF8_TESTS=off -DUTF8_SAMPLES=off
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${UTFCPP_DIR}/install -DUTF8_TESTS=off -DUTF8_SAMPLES=off
|
||||||
STEP_TARGETS build)
|
STEP_TARGETS build)
|
||||||
|
|
||||||
|
|
||||||
include_directories(
|
include_directories(
|
||||||
${PROJECT_SOURCE_DIR}/runtime/src
|
${PROJECT_SOURCE_DIR}/runtime/src
|
||||||
${PROJECT_SOURCE_DIR}/runtime/src/atn
|
${PROJECT_SOURCE_DIR}/runtime/src/atn
|
||||||
|
@ -22,8 +20,6 @@ include_directories(
|
||||||
${PROJECT_SOURCE_DIR}/runtime/src/tree
|
${PROJECT_SOURCE_DIR}/runtime/src/tree
|
||||||
${PROJECT_SOURCE_DIR}/runtime/src/tree/pattern
|
${PROJECT_SOURCE_DIR}/runtime/src/tree/pattern
|
||||||
${PROJECT_SOURCE_DIR}/runtime/src/tree/xpath
|
${PROJECT_SOURCE_DIR}/runtime/src/tree/xpath
|
||||||
${UTFCPP_DIR}/install/include/utf8cpp
|
|
||||||
${UTFCPP_DIR}/install/include/utf8cpp/utf8
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@ -49,8 +45,49 @@ add_custom_target(make_lib_output_dir ALL
|
||||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${LIB_OUTPUT_DIR}
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${LIB_OUTPUT_DIR}
|
||||||
)
|
)
|
||||||
|
|
||||||
add_dependencies(antlr4_shared make_lib_output_dir utfcpp)
|
add_dependencies(antlr4_shared make_lib_output_dir)
|
||||||
add_dependencies(antlr4_static make_lib_output_dir utfcpp)
|
add_dependencies(antlr4_static make_lib_output_dir)
|
||||||
|
|
||||||
|
find_package(utf8cpp QUIET)
|
||||||
|
|
||||||
|
set(INSTALL_utf8cpp FALSE)
|
||||||
|
|
||||||
|
if (utf8cpp_FOUND)
|
||||||
|
target_link_libraries(antlr4_shared utf8cpp)
|
||||||
|
target_link_libraries(antlr4_static utf8cpp)
|
||||||
|
else()
|
||||||
|
|
||||||
|
# older utf8cpp doesn't define the package above
|
||||||
|
find_path(utf8cpp_HEADER utf8.h
|
||||||
|
PATH_SUFFIXES utf8cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
if (utf8cpp_HEADER)
|
||||||
|
include_directories(${utf8cpp_HEADER})
|
||||||
|
else()
|
||||||
|
include(${CMAKE_ROOT}/Modules/ExternalProject.cmake)
|
||||||
|
set(THIRDPARTY_DIR ${CMAKE_BINARY_DIR}/runtime/thirdparty)
|
||||||
|
set(UTFCPP_DIR ${THIRDPARTY_DIR}/utfcpp)
|
||||||
|
ExternalProject_Add(
|
||||||
|
utf8cpp
|
||||||
|
GIT_REPOSITORY "git://github.com/nemtrif/utfcpp"
|
||||||
|
GIT_TAG "v3.1.1"
|
||||||
|
SOURCE_DIR ${UTFCPP_DIR}
|
||||||
|
UPDATE_DISCONNECTED 1
|
||||||
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${UTFCPP_DIR}/install -Dgtest_force_shared_crt=ON
|
||||||
|
TEST_AFTER_INSTALL 1
|
||||||
|
STEP_TARGETS build)
|
||||||
|
|
||||||
|
include_directories(
|
||||||
|
${UTFCPP_DIR}/install/include/utf8cpp
|
||||||
|
${UTFCPP_DIR}/install/include/utf8cpp/utf8
|
||||||
|
)
|
||||||
|
|
||||||
|
add_dependencies(antlr4_shared utf8cpp)
|
||||||
|
add_dependencies(antlr4_static utf8cpp)
|
||||||
|
set(INSTALL_utf8cpp TRUE)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||||
target_link_libraries(antlr4_shared ${UUID_LIBRARIES})
|
target_link_libraries(antlr4_shared ${UUID_LIBRARIES})
|
||||||
|
@ -130,13 +167,15 @@ install(DIRECTORY "${PROJECT_SOURCE_DIR}/runtime/src/"
|
||||||
FILES_MATCHING PATTERN "*.h"
|
FILES_MATCHING PATTERN "*.h"
|
||||||
)
|
)
|
||||||
|
|
||||||
install(FILES "${UTFCPP_DIR}/source/utf8.h"
|
if (INSTALL_utf8cpp)
|
||||||
DESTINATION "include/antlr4-runtime")
|
install(FILES "${UTFCPP_DIR}/source/utf8.h"
|
||||||
install(DIRECTORY "${UTFCPP_DIR}/source/utf8"
|
DESTINATION "include/antlr4-runtime")
|
||||||
DESTINATION "include/antlr4-runtime"
|
install(DIRECTORY "${UTFCPP_DIR}/source/utf8"
|
||||||
COMPONENT dev
|
DESTINATION "include/antlr4-runtime"
|
||||||
FILES_MATCHING PATTERN "*.h"
|
COMPONENT dev
|
||||||
)
|
FILES_MATCHING PATTERN "*.h"
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue