commit:     676a9635b3be275ba6ce4c28b60f37d1ad5a8bf4
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Mon Jan  2 22:01:33 2023 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Mon Jan  2 22:01:33 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=676a9635

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 <AT> gentoo.org>

 dev-cpp/antlr-cpp/Manifest                         |   1 +
 dev-cpp/antlr-cpp/antlr-cpp-4.11.1.ebuild          |  29 +++++
 .../antlr-cpp/files/4.11.1-GNUInstallDirs.patch    | 139 +++++++++++++++++++++
 3 files changed, 169 insertions(+)

diff --git a/dev-cpp/antlr-cpp/Manifest b/dev-cpp/antlr-cpp/Manifest
index d2f49651c27d..11c2ebb8722f 100644
--- a/dev-cpp/antlr-cpp/Manifest
+++ b/dev-cpp/antlr-cpp/Manifest
@@ -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

diff --git a/dev-cpp/antlr-cpp/antlr-cpp-4.11.1.ebuild 
b/dev-cpp/antlr-cpp/antlr-cpp-4.11.1.ebuild
new file mode 100644
index 000000000000..f184f2fc1c2c
--- /dev/null
+++ b/dev-cpp/antlr-cpp/antlr-cpp-4.11.1.ebuild
@@ -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
+}

diff --git a/dev-cpp/antlr-cpp/files/4.11.1-GNUInstallDirs.patch 
b/dev-cpp/antlr-cpp/files/4.11.1-GNUInstallDirs.patch
new file mode 100644
index 000000000000..c8795e0b033c
--- /dev/null
+++ b/dev-cpp/antlr-cpp/files/4.11.1-GNUInstallDirs.patch
@@ -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 "[email protected]")
+ 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/"

Reply via email to