commit: ea252dd70f621703bac7172a960e4cfd5e2b7cd0 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> AuthorDate: Sat Dec 26 23:05:46 2020 +0000 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> CommitDate: Sat Dec 26 23:46:01 2020 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea252dd7
dev-libs/pegtl: Fix GCC-10 warning, fix cmake module install path - Drop -Werror - Drop superfluous LICENSE install to invalid doc dir path. Bug: https://bugs.gentoo.org/754687 Closes: https://bugs.gentoo.org/733678 Package-Manager: Portage-3.0.12, Repoman-3.0.2 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org> dev-libs/pegtl/files/pegtl-2.8.3-cmake.patch | 29 ++++++++++++++++++ dev-libs/pegtl/files/pegtl-2.8.3-gcc-10.patch | 43 +++++++++++++++++++++++++++ dev-libs/pegtl/pegtl-2.8.3-r1.ebuild | 32 ++++++++++++++++++++ 3 files changed, 104 insertions(+) diff --git a/dev-libs/pegtl/files/pegtl-2.8.3-cmake.patch b/dev-libs/pegtl/files/pegtl-2.8.3-cmake.patch new file mode 100644 index 00000000000..140e1f5cfbb --- /dev/null +++ b/dev-libs/pegtl/files/pegtl-2.8.3-cmake.patch @@ -0,0 +1,29 @@ +--- a/CMakeLists.txt 2020-04-22 19:43:00.000000000 +0200 ++++ b/CMakeLists.txt 2020-12-27 00:00:15.886046938 +0100 +@@ -78,4 +78,3 @@ + + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/pegtl-config-version.cmake DESTINATION ${PEGTL_INSTALL_CMAKE_DIR}) + install(DIRECTORY include/ DESTINATION ${PEGTL_INSTALL_INCLUDE_DIR}) +-install(FILES LICENSE DESTINATION ${PEGTL_INSTALL_DOC_DIR}) +--- a/src/test/pegtl/CMakeLists.txt 2020-04-22 19:43:00.000000000 +0200 ++++ b/src/test/pegtl/CMakeLists.txt 2020-12-27 00:07:19.122766830 +0100 +@@ -123,7 +123,7 @@ + if(MSVC) + target_compile_options(${exename} PRIVATE /W4 /WX /utf-8) + else() +- target_compile_options(${exename} PRIVATE -pedantic -Wall -Wextra -Wshadow -Werror) ++ target_compile_options(${exename} PRIVATE -pedantic -Wall -Wextra -Wshadow) + endif() + if(ANDROID) + add_test(NAME ${exename} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../.. COMMAND ${CMAKE_COMMAND} -DANDROID_NDK=${ANDROID_NDK} "-DTEST_RESOURCES=src/test/pegtl/data;src/test/pegtl/file_data.txt;Makefile" -DTEST_RESOURCES_DIR=${CMAKE_CURRENT_SOURCE_DIR}/../../.. -DUNITTEST=${CMAKE_CURRENT_BINARY_DIR}/${exename} -DTEST_PARAMETER=-all -P ${CMAKE_CURRENT_SOURCE_DIR}/ExecuteOnAndroid.cmake) +--- a/src/example/pegtl/CMakeLists.txt 2020-04-22 19:43:00.000000000 +0200 ++++ b/src/example/pegtl/CMakeLists.txt 2020-12-27 00:07:32.970832890 +0100 +@@ -48,7 +48,7 @@ + if(MSVC) + target_compile_options(${exename} PRIVATE /W4 /WX /utf-8) + else() +- target_compile_options(${exename} PRIVATE -pedantic -Wall -Wextra -Wshadow -Werror) ++ target_compile_options(${exename} PRIVATE -pedantic -Wall -Wextra -Wshadow) + endif() + endforeach(examplesourcefile) + diff --git a/dev-libs/pegtl/files/pegtl-2.8.3-gcc-10.patch b/dev-libs/pegtl/files/pegtl-2.8.3-gcc-10.patch new file mode 100644 index 00000000000..ef418e44254 --- /dev/null +++ b/dev-libs/pegtl/files/pegtl-2.8.3-gcc-10.patch @@ -0,0 +1,43 @@ +From a3a292c2ba66bf09b4adc4cee8fcdfb1b1386067 Mon Sep 17 00:00:00 2001 +From: Daniel Frey <[email protected]> +Date: Mon, 11 May 2020 22:19:31 +0200 +Subject: [PATCH] Repair warning from GCC 10 + +* Backported patch thx to Fedora. + +--- + include/tao/pegtl/contrib/rep_one_min_max.hpp | 21 +++++++++++++++++++ + 1 file changed, 21 insertions(+) + +diff --git a/include/tao/pegtl/contrib/rep_one_min_max.hpp b/include/tao/pegtl/contrib/rep_one_min_max.hpp +index 7ec4639e..ee0a3782 100644 +--- a/include/tao/pegtl/contrib/rep_one_min_max.hpp ++++ b/include/tao/pegtl/contrib/rep_one_min_max.hpp +@@ -45,6 +45,27 @@ namespace tao + } + }; + ++ template< unsigned Max, char C > ++ struct rep_one_min_max< 0, Max, C > ++ { ++ using analyze_t = analysis::counted< analysis::rule_type::any, 0 >; ++ ++ template< typename Input > ++ static bool match( Input& in ) ++ { ++ const auto size = in.size( Max + 1 ); ++ std::size_t i = 0; ++ while( ( i < size ) && ( in.peek_char( i ) == C ) ) { ++ ++i; ++ } ++ if( i <= Max ) { ++ bump_help< result_on_found::success, Input, char, C >( in, i ); ++ return true; ++ } ++ return false; ++ } ++ }; ++ + template< unsigned Min, unsigned Max, char C > + inline constexpr bool enable_control< rep_one_min_max< Min, Max, C > > = false; + diff --git a/dev-libs/pegtl/pegtl-2.8.3-r1.ebuild b/dev-libs/pegtl/pegtl-2.8.3-r1.ebuild new file mode 100644 index 00000000000..7598786994b --- /dev/null +++ b/dev-libs/pegtl/pegtl-2.8.3-r1.ebuild @@ -0,0 +1,32 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake + +DESCRIPTION="Header-only library for creating parsers according to Parsing Expression Grammar" +HOMEPAGE="https://github.com/taocpp/PEGTL" +SRC_URI="https://github.com/taocpp/PEGTL/archive/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="test" + +RESTRICT="!test? ( test )" + +S="${WORKDIR}/PEGTL-${PV}" + +PATCHES=( + "${FILESDIR}/${P}-cmake.patch" + "${FILESDIR}/${P}-gcc-10.patch" # bug 733678 +) + +src_configure() { + local mycmakeargs=( + -DPEGTL_INSTALL_CMAKE_DIR="$(get_libdir)/cmake/${PN}" + -DPEGTL_INSTALL_DOC_DIR="share/doc/${PF}" + ) + cmake_src_configure +}
