summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey Sokolov <alexey+gentoo@asokolov.org>2021-07-12 00:29:46 +0100
committerIonen Wolkens <ionen@gentoo.org>2021-07-14 01:46:17 -0400
commit35da96df067a8a2cb5f983830b0f63f744000820 (patch)
treee667330ec0068352b85ba39edaf2a88f1bd42fa1 /dev-cpp/sol2/sol2-3.2.2.ebuild
parentdev-util/cucumber-create-meta: import of 4.0.0 (diff)
downloadgentoo-35da96df067a8a2cb5f983830b0f63f744000820.tar.gz
gentoo-35da96df067a8a2cb5f983830b0f63f744000820.tar.bz2
gentoo-35da96df067a8a2cb5f983830b0f63f744000820.zip
dev-cpp/sol2: new package 3.2.2
games-engines/openmw-0.48 will depend on it Package-Manager: Portage-3.0.20, Repoman-3.0.2 Signed-off-by: Alexey Sokolov <alexey+gentoo@asokolov.org> Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
Diffstat (limited to 'dev-cpp/sol2/sol2-3.2.2.ebuild')
-rw-r--r--dev-cpp/sol2/sol2-3.2.2.ebuild83
1 files changed, 83 insertions, 0 deletions
diff --git a/dev-cpp/sol2/sol2-3.2.2.ebuild b/dev-cpp/sol2/sol2-3.2.2.ebuild
new file mode 100644
index 000000000000..4a8b270ac71e
--- /dev/null
+++ b/dev-cpp/sol2/sol2-3.2.2.ebuild
@@ -0,0 +1,83 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+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
+ https://github.com/ThePhD/sol2/commit/e5e6466e09b632677d24a8f204d6a0ea0a8862b1.patch -> ${P}-gcc11.patch
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+REQUIRED_USE="test? ( ${LUA_REQUIRED_USE} )"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ test? (
+ ${LUA_DEPS}
+ dev-cpp/catch:0
+ )
+"
+BDEPEND="
+ test? (
+ virtual/pkgconfig
+ )
+"
+
+PATCHES=(
+ "${DISTDIR}"/${P}-gcc11.patch
+ "${FILESDIR}"/${P}-luajit-pkgconf.patch
+ "${FILESDIR}"/${P}-catch-depend.patch
+)
+
+src_prepare() {
+ # TODO: remove this sed on next bump
+ sed -i -e 's/-Werror//' \
+ tests/runtime_tests/CMakeLists.txt \
+ tests/regression_tests/1011/CMakeLists.txt \
+ tests/config_tests/function_pointers/CMakeLists.txt \
+ examples/customization/CMakeLists.txt \
+ examples/CMakeLists.txt || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ cmake_src_configure
+
+ if use test; then
+ sol2_configure_wrapper() {
+ local mycmakeargs=(
+ -DSOL2_BUILD_LUA=no
+ -DSOL2_TESTS=yes
+ -DSOL2_LUA_VERSION="${ELUA}"
+ -DCATCH_INC_DIR="${ESYSROOT}/usr/include/catch2"
+ )
+ cmake_src_configure
+ }
+ lua_foreach_impl sol2_configure_wrapper
+ fi
+}
+
+src_compile() {
+ use test && 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
+}