dev-cpp/antlr-cpp: add 4.11.1

Bug: https://bugs.gentoo.org/726866
Bug: https://bugs.gentoo.org/881317
Signed-off-by: David Seifert <soap@gentoo.org>
This commit is contained in:
David Seifert
2023-01-02 23:01:33 +01:00
parent f9c0904665
commit 676a9635b3
3 changed files with 169 additions and 0 deletions

View File

@@ -1,2 +1,3 @@
DIST antlr-2.7.7.tar.gz 1816180 BLAKE2B 3a9a51070f8651befeb4d22be344b544e119db34a78522828c2ffc3c481c14b9c7784f0a9997a61f6faedde5b6d1fe12214cfd84fb274f7065f3ffe6a44abf1c SHA512 faa72d2ddcba434ef1233e70c1549e63eba67c00793966322e821cf7f015cccb804448cb92d8fbef0429f59928fad65ec954f8ffbda0acbb8e983de0806d349d
DIST antlr-cpp-4.11.1.zip 534105 BLAKE2B acf854bb8f10f8afdb8df9aa1fa92176edc66bfe3e33ca4b57e138e29f7d8512dc0a31aee057e5997ca9e37ca7934c459ef725e831d34166c189a2ed7e6fbc51 SHA512 47a4f714cf195e454b4f66cace58f6dbaa144f44c25594735fc91b37289e9b3c8b5259c03925316754d3eb33af3e0b3d3fb0c5c9aef818b239799e4f1fb49ce6
DIST antlr-cpp-4.7.2.zip 1494927 BLAKE2B 007aac6655dc3c4e3a0c2073ca9c8c016b46bdf97dca4494d4ea2c44d27a458bfbb09811b3beb0aec1ce2873c3b62ad6789c6a9e3e7ddc62cde51c8357e9123b SHA512 3298b83a06ddd8d8852462401e46fe2eb83d20af4ba14c722cb31b33d929d1c5a4ffb694ee084495a4ae26ed3246b6781ca6045d11253c94efc09729fa001090

View File

@@ -0,0 +1,29 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake
DESCRIPTION="The ANTLR 4 C++ Runtime"
HOMEPAGE="https://www.antlr.org/"
SRC_URI="https://www.antlr.org/download/antlr4-cpp-runtime-${PV}-source.zip -> ${P}.zip"
S="${WORKDIR}"
LICENSE="BSD"
SLOT="4"
KEYWORDS="~amd64 ~arm ~ppc ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
DEPEND="test? ( dev-cpp/gtest )"
BDEPEND="app-arch/unzip"
PATCHES=( "${FILESDIR}"/${PV}-GNUInstallDirs.patch )
src_configure() {
local mycmakeargs=(
-DANTLR_BUILD_CPP_TESTS=$(usex test)
)
cmake_src_configure
}

View File

@@ -0,0 +1,139 @@
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -113,11 +113,6 @@
set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} /O1 /Oi /Ob2 /Gy /MP /DNDEBUG ${MY_CXX_WARNING_FLAGS}")
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /O2 /Oi /Ob2 /Gy /MP /DNDEBUG ${MY_CXX_WARNING_FLGAS}")
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /O2 /Oi /Ob2 /Gy /MP /Zi ${MY_CXX_WARNING_FLAGS}")
-else()
- set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -O0 -g ${MY_CXX_WARNING_FLAGS}")
- set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} -Os -DNDEBUG ${MY_CXX_WARNING_FLAGS}")
- set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3 -DNDEBUG ${MY_CXX_WARNING_FLGAS}")
- set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -O2 -g ${MY_CXX_WARNING_FLAGS}")
endif()
# Compiler-specific C++17 activation.
@@ -220,16 +215,8 @@
endif(ANTLR4_INSTALL)
-if(EXISTS LICENSE.txt)
-install(FILES LICENSE.txt
- DESTINATION "share/doc/libantlr4")
-elseif(EXISTS ../../LICENSE.txt)
-install(FILES ../../LICENSE.txt
- DESTINATION "share/doc/libantlr4")
-endif()
-
install(FILES README.md VERSION
- DESTINATION "share/doc/libantlr4")
+ DESTINATION ${CMAKE_INSTALL_DOCDIR})
set(CPACK_PACKAGE_CONTACT "antlr-discussion@googlegroups.com")
set(CPACK_PACKAGE_VERSION ${ANTLR_VERSION})
--- a/runtime/CMakeLists.txt
+++ b/runtime/CMakeLists.txt
@@ -26,29 +26,14 @@
)
add_library(antlr4_shared SHARED ${libantlrcpp_SRC})
-add_library(antlr4_static STATIC ${libantlrcpp_SRC})
# Make sure to link against threads (pthreads) library in order to be able to
# make use of std::call_once in the code without producing runtime errors
# (see also https://github.com/antlr/antlr4/issues/3708 and/or https://stackoverflow.com/q/51584960).
find_package(Threads REQUIRED)
target_link_libraries(antlr4_shared Threads::Threads)
-target_link_libraries(antlr4_static Threads::Threads)
if (ANTLR_BUILD_CPP_TESTS)
- include(FetchContent)
-
- FetchContent_Declare(
- googletest
- URL https://github.com/google/googletest/archive/e2239ee6043f73722e7aa812a459f54a28552929.zip
- )
-
- if(WITH_STATIC_CRT)
- set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
- endif()
-
- FetchContent_MakeAvailable(googletest)
-
file(GLOB libantlrcpp_TESTS
"${PROJECT_SOURCE_DIR}/runtime/tests/*.cpp"
)
@@ -60,8 +45,9 @@
target_link_libraries(
antlr4_tests
- antlr4_static
+ antlr4_shared
gtest_main
+ gtest
)
include(GoogleTest)
@@ -71,7 +57,6 @@
if(APPLE)
target_link_libraries(antlr4_shared ${COREFOUNDATION_LIBRARY})
- target_link_libraries(antlr4_static ${COREFOUNDATION_LIBRARY})
endif()
if(CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
@@ -88,16 +73,11 @@
endif()
set(extra_share_compile_flags "")
-set(extra_static_compile_flags "")
-set(static_lib_suffix "")
if (WIN32)
- set(static_lib_suffix "-static")
target_compile_definitions(antlr4_shared PUBLIC ANTLR4CPP_EXPORTS)
- target_compile_definitions(antlr4_static PUBLIC ANTLR4CPP_STATIC)
if(CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
set(extra_share_compile_flags "-MP /wd4251")
- set(extra_static_compile_flags "-MP")
endif()
endif()
@@ -107,13 +87,6 @@
OUTPUT_NAME antlr4-runtime
COMPILE_FLAGS "${disabled_compile_warnings} ${extra_share_compile_flags}")
-set_target_properties(antlr4_static
- PROPERTIES VERSION ${ANTLR_VERSION}
- SOVERSION ${ANTLR_VERSION}
- OUTPUT_NAME "antlr4-runtime${static_lib_suffix}"
- COMPILE_PDB_NAME "antlr4-runtime${static_lib_suffix}"
- COMPILE_FLAGS "${disabled_compile_warnings} ${extra_static_compile_flags}")
-
if (ANTLR_BUILD_CPP_TESTS)
# Copy the generated binaries to dist folder (required by test suite)
add_custom_command(
@@ -122,24 +95,12 @@
COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_HOME_DIRECTORY}/dist
COMMAND ${CMAKE_COMMAND} -E copy_if_different $<TARGET_FILE:antlr4_shared> ${CMAKE_HOME_DIRECTORY}/dist
COMMAND ${CMAKE_COMMAND} -E copy_if_different $<TARGET_LINKER_FILE:antlr4_shared> ${CMAKE_HOME_DIRECTORY}/dist)
-
- add_custom_command(
- TARGET antlr4_static
- POST_BUILD
- COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_HOME_DIRECTORY}/dist
- COMMAND ${CMAKE_COMMAND} -E copy_if_different $<TARGET_FILE:antlr4_static> ${CMAKE_HOME_DIRECTORY}/dist)
endif()
install(TARGETS antlr4_shared
EXPORT antlr4-targets
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
-
-install(TARGETS antlr4_static
- EXPORT antlr4-targets
- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
install(DIRECTORY "${PROJECT_SOURCE_DIR}/runtime/src/"