commit:     9a6d9c1ece3205412ae0e6f3f36777ce7e203138
Author:     Alexey Sokolov <alexey+gentoo <AT> asokolov <DOT> org>
AuthorDate: Sun Sep 25 21:30:27 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Mon Sep 26 09:34:09 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9a6d9c1e

dev-cpp/sol2: add 3.3.0

Signed-off-by: Alexey Sokolov <alexey+gentoo <AT> asokolov.org>
Closes: https://bugs.gentoo.org/864169
Closes: https://github.com/gentoo/gentoo/pull/27456
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-cpp/sol2/Manifest                              |  1 +
 dev-cpp/sol2/files/sol2-3.3.0-catch-depend.patch   | 16 +++++
 dev-cpp/sol2/files/sol2-3.3.0-cmake-dir.patch      | 31 ++++++++++
 .../sol2/files/sol2-3.3.0-dont-install-tests.patch | 10 +++
 dev-cpp/sol2/files/sol2-3.3.0-werror.patch         | 21 +++++++
 dev-cpp/sol2/sol2-3.3.0.ebuild                     | 71 ++++++++++++++++++++++
 6 files changed, 150 insertions(+)

diff --git a/dev-cpp/sol2/Manifest b/dev-cpp/sol2/Manifest
index 88055ed75b0e..1c68bf805c6d 100644
--- a/dev-cpp/sol2/Manifest
+++ b/dev-cpp/sol2/Manifest
@@ -1 +1,2 @@
 DIST sol2-3.2.2.tar.gz 8531029 BLAKE2B 
65fd220f5109e4917d06d5ef906ceccb7e292276f69bd49dfd826089a77e566af1811fdf660ffbfbd2437dca4b86ef5c4790dace9029805926e1ee0445b2e965
 SHA512 
e5a739b37aea7150f141f6a003c2689dd33155feed5bb3cf2569abbfe9f0062eacdaaf346be523d627f0e491b35e68822c80e1117fa09ece8c9d8d5af09fdbec
+DIST sol2-3.3.0.tar.gz 8453838 BLAKE2B 
dd4ae6471913a8e5de51c248d22b2b30a0ef29a597c5181026ac175d789836b9ea4c278db6860a360b1b2d59a2063a7538dfb06044cd89cfdf6612a7f60ecd63
 SHA512 
f1eba8f9ea270a3a3fff9c7a036d130ec848d065e54a8aefd2a19ad7f17dcb6b5744d979fac54c765e8317a4cdcf72e1b9d622d114f48c6502cf2db900c8d4a3

diff --git a/dev-cpp/sol2/files/sol2-3.3.0-catch-depend.patch 
b/dev-cpp/sol2/files/sol2-3.3.0-catch-depend.patch
new file mode 100644
index 000000000000..8f53144ad37c
--- /dev/null
+++ b/dev-cpp/sol2/files/sol2-3.3.0-catch-depend.patch
@@ -0,0 +1,16 @@
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -23,12 +23,7 @@
+ # # # # sol2 tests
+ 
+ # # Dependencies
+-FetchContent_Declare(
+-      catch2
+-      GIT_REPOSITORY https://github.com/catchorg/Catch2.git
+-      GIT_TAG devel
+-)
+-FetchContent_MakeAvailable(catch2)
++find_package(Catch2 REQUIRED)
+ 
+ function(sol2_add_test_properties target-name)
+       target_link_libraries(${target-name}

diff --git a/dev-cpp/sol2/files/sol2-3.3.0-cmake-dir.patch 
b/dev-cpp/sol2/files/sol2-3.3.0-cmake-dir.patch
new file mode 100644
index 000000000000..6782b05abf78
--- /dev/null
+++ b/dev-cpp/sol2/files/sol2-3.3.0-cmake-dir.patch
@@ -0,0 +1,31 @@
+Install to share, it's header-only
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -105,7 +105,7 @@ target_include_directories(sol2 ${sol2-system-include}
+ configure_package_config_file(
+       cmake/sol2-config.cmake.in
+       "${CMAKE_CURRENT_BINARY_DIR}/cmake/sol2-config.cmake"
+-      INSTALL_DESTINATION lib/cmake/sol2
++      INSTALL_DESTINATION ${CMAKE_INSTALL_DATADIR}/cmake/sol2
+       NO_CHECK_REQUIRED_COMPONENTS_MACRO)
+ 
+ write_basic_package_version_file(
+@@ -121,7 +121,7 @@ if(SOL2_ENABLE_INSTALL)
+ 
+       install(EXPORT sol2
+               FILE sol2-targets.cmake
+-              DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/sol2")
++              DESTINATION "${CMAKE_INSTALL_DATADIR}/cmake/sol2")
+ 
+       install(DIRECTORY include/sol
+               DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
+@@ -129,7 +129,7 @@ if(SOL2_ENABLE_INSTALL)
+       install(FILES
+               "${CMAKE_CURRENT_BINARY_DIR}/cmake/sol2-config.cmake"
+               "${CMAKE_CURRENT_BINARY_DIR}/cmake/sol2-config-version.cmake"
+-              DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/sol2")
++              DESTINATION "${CMAKE_INSTALL_DATADIR}/cmake/sol2")
+ endif()
+ 
+ # # # sol2 Library - Single header target

diff --git a/dev-cpp/sol2/files/sol2-3.3.0-dont-install-tests.patch 
b/dev-cpp/sol2/files/sol2-3.3.0-dont-install-tests.patch
new file mode 100644
index 000000000000..e1186958973a
--- /dev/null
+++ b/dev-cpp/sol2/files/sol2-3.3.0-dont-install-tests.patch
@@ -0,0 +1,10 @@
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -60,7 +60,6 @@ function(sol2_add_test_properties target-name)
+       
+       add_test(NAME ${target-name} COMMAND ${target-name})
+       if(SOL2_ENABLE_INSTALL)
+-              install(TARGETS ${target-name} RUNTIME DESTINATION bin)
+       endif()
+ endfunction()
+ 

diff --git a/dev-cpp/sol2/files/sol2-3.3.0-werror.patch 
b/dev-cpp/sol2/files/sol2-3.3.0-werror.patch
new file mode 100644
index 000000000000..27118f38cafd
--- /dev/null
+++ b/dev-cpp/sol2/files/sol2-3.3.0-werror.patch
@@ -0,0 +1,21 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -208,7 +208,6 @@ if (sol2-is-top-level-project)
+       check_compiler_flag(warn-pedantic GCC -Wpedantic)
+       check_compiler_flag(warn-all MSVC /W4 GCC -Wall)
+       check_compiler_flag(warn-extra GCC -Wextra)
+-      check_compiler_flag(warn-errors MSVC /WX GCC -Werror)
+       # Individual warnings/errors
+       check_compiler_diagnostic(unknown-warning)
+       check_compiler_diagnostic(unknown-warning-option)
+--- a/examples/customization/CMakeLists.txt
++++ b/examples/customization/CMakeLists.txt
+@@ -45,7 +45,7 @@ function (MAKE_CUSTOMIZATION_EXAMPLE example_suffix 
target_sol)
+                       PRIVATE -std=c++1z 
+                       -ftemplate-backtrace-limit=0
+                       -Wno-unknown-warning -Wno-unknown-warning-option
+-                      -Wall -Wpedantic -Werror -pedantic -pedantic-errors
++                      -Wall -Wpedantic -pedantic -pedantic-errors
+                       -Wno-noexcept-type)
+       endif()
+ 

diff --git a/dev-cpp/sol2/sol2-3.3.0.ebuild b/dev-cpp/sol2/sol2-3.3.0.ebuild
new file mode 100644
index 000000000000..7ee94fefcfe3
--- /dev/null
+++ b/dev-cpp/sol2/sol2-3.3.0.ebuild
@@ -0,0 +1,71 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1,3,4} luajit )
+inherit cmake lua
+
+DESCRIPTION="Header-only C++ <-> Lua API wrapper"
+HOMEPAGE="https://github.com/ThePhD/sol2";
+SRC_URI="https://github.com/ThePhD/sol2/archive/refs/tags/v${PV}.tar.gz -> 
${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+       ${LUA_DEPS}
+       test? (
+               >=dev-cpp/catch-3
+       )
+"
+BDEPEND="
+       virtual/pkgconfig
+"
+
+PATCHES=(
+       "${FILESDIR}"/sol2-3.3.0-werror.patch
+       "${FILESDIR}"/sol2-3.2.2-luajit-pkgconf.patch
+       "${FILESDIR}"/sol2-3.3.0-catch-depend.patch
+       "${FILESDIR}"/sol2-3.3.0-cmake-dir.patch
+       "${FILESDIR}"/sol2-3.3.0-dont-install-tests.patch
+)
+
+src_prepare() {
+       cmake_src_prepare
+}
+
+src_configure() {
+       sol2_configure_wrapper() {
+               local mycmakeargs=(
+                       -DSOL2_BUILD_LUA=no
+                       -DSOL2_TESTS=$(usex test)
+                       -DSOL2_LUA_VERSION="${ELUA}"
+               )
+               cmake_src_configure
+       }
+       lua_foreach_impl sol2_configure_wrapper
+}
+
+src_compile() {
+       lua_foreach_impl cmake_src_compile
+}
+
+src_test() {
+       sol2_test_wrapper() {
+               if [[ ${ELUA} == luajit ]]; then
+                       einfo "Skipping test due to 
https://github.com/ThePhD/sol2/issues/1221";
+               else
+                       cmake_src_test
+               fi
+       }
+       lua_foreach_impl sol2_test_wrapper
+}
+
+src_install() {
+       lua_foreach_impl cmake_src_install
+}

Reply via email to