diff --git a/games-strategy/naev/Manifest b/games-strategy/naev/Manifest index 04e391fe118c5..1b4d5acfaafb9 100644 --- a/games-strategy/naev/Manifest +++ b/games-strategy/naev/Manifest @@ -1 +1,3 @@ DIST naev-0.12.6-source.tar.xz 466148336 BLAKE2B 3f5e7e9613a711537171ca7b0cf8f190681a2febb94ef1ff9edcc5e4e9f701e9744c4ffbcf958ce8f3bc862214b35bcf2b690f7e3bd15ef7fa3b62dcfe22b21a SHA512 4d28e9caa26e4c6328b33f17e7c101bc80c6f30540f8d148e7441a9193a3a1a7ee647d501acde7b72b60a9e60ef66774363fdeacefa7c2b7522e278ed44017d2 +DIST naev-0.13.3-source.tar.xz 199298304 BLAKE2B 705b9612fd15ef38bc57aaa2fd6eb59228928df03e6a12de8e1ebd6be649db3e759331517d85a782b83c89cd374cb2e9c6e2a947b902877783eb7480ff6a3604 SHA512 67c9b5674db9d19e4f0d8d26fd81647a2dbdc70e628151738c18e96600be3196d946ad67f65c41f73828f2c0a6b2b9350fb1ad80f3ad4fb749e0a9feeaf099ae +DIST naev-0.13.3-vendor.tar.xz 39447328 BLAKE2B bcecb6d19fd3a6d0b5992cf3ff9dab454570ea335fcef1b0c404c356eeabfa7bc2bf4f615addfabe3bd344401c75bbabe45670120774d4063de8339b59bc17d7 SHA512 bac9f55282d444d51837315e32042245655fb052f964d7284d4851d47e99b98b823528137204d9f265facaa4166579af18e623c1a23907053d8f73792a95cec8 diff --git a/games-strategy/naev/naev-0.13.3.ebuild b/games-strategy/naev/naev-0.13.3.ebuild new file mode 100644 index 0000000000000..81072efefbf7d --- /dev/null +++ b/games-strategy/naev/naev-0.13.3.ebuild @@ -0,0 +1,131 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LUA_COMPAT=( luajit ) +PYTHON_COMPAT=( python3_{11..14} ) +RUST_MIN_VER=1.89.0 +inherit cargo lua-single meson python-any-r1 xdg + +DESCRIPTION="2D space trading and combat game, in a similar vein to Escape Velocity" +HOMEPAGE="https://naev.org/" +# creating the vendor tarball first requires running src_compile until +# it fails downloading crates in sandbox to generate several cargo files +SRC_URI=" + https://codeberg.org/naev/naev/releases/download/v${PV}/${P}-source.tar.xz + https://dev.gentoo.org/~ionen/distfiles/${P}-vendor.tar.xz +" + +LICENSE="GPL-3+ BSD BSD-2 MIT" +LICENSE+=" + Apache-2.0 CC-BY-2.0 CC-BY-3.0 CC-BY-4.0 CC-BY-SA-2.0 CC-BY-SA-3.0 + CC-BY-SA-4.0 CC0-1.0 FDL-1.2 GPL-2+ OFL-1.1 public-domain +" # assets +LICENSE+=" + Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD CC0-1.0 + CDLA-Permissive-2.0 IJG ISC MIT MIT-0 MPL-2.0 openssl Unicode-3.0 + ZLIB +" # crates +SLOT="0" +KEYWORDS="~amd64" +IUSE="doc" +REQUIRED_USE="${LUA_REQUIRED_USE}" + +# tests been a headache to keep working in sandbox with software GL +RESTRICT="test" + +# dlopen: libglvnd +RDEPEND=" + ${LUA_DEPS} + app-text/cmark:= + dev-games/physfs + =dev-libs/libgit2-1.9.2*:= + dev-libs/libpcre2:= + dev-libs/libunibreak:= + dev-libs/libxml2:= + dev-libs/openssl:= + media-libs/dav1d:= + media-libs/freetype:2 + media-libs/libglvnd + media-libs/libsdl3[opengl] + media-libs/libvorbis + media-libs/openal + media-libs/opus + net-libs/enet:1.3= + net-libs/libssh2 + sci-libs/cholmod + sci-libs/cxsparse + sci-libs/openblas + sci-libs/suitesparse + sci-mathematics/glpk:= + virtual/libintl +" +DEPEND="${RDEPEND}" +BDEPEND=" + $(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]') + >=dev-build/meson-1.7.0 + >=dev-util/bindgen-0.72.0 + sys-devel/gettext + doc? ( + app-text/doxygen + dev-lua/ldoc + media-gfx/graphviz + ) +" + +QA_FLAGS_IGNORED="usr/lib.*/libnaev_rlib.so" # rust + +python_check_deps() { + python_has_version "dev-python/pyyaml[${PYTHON_USEDEP}]" +} + +pkg_setup() { + lua-single_pkg_setup + python-any-r1_pkg_setup + rust_pkg_setup +} + +src_prepare() { + default + + # don't probe OpenGL for tests (avoids sandbox violations, bug #829369) + sed -i "/subdir('glcheck')/d" test/meson.build || die + + # meson.build overrides CARGO_HOME, symlink to use our config.toml + # (note need to set BUILD_DIR either way due to cargo_env's subshell) + BUILD_DIR=${WORKDIR}/${P}-build + mkdir -p -- "${BUILD_DIR}" || die + ln -s -- "${CARGO_HOME}" "${BUILD_DIR}"/cargo-home || die +} + +src_configure() { + export LIBGIT2_NO_VENDOR=1 + export LIBSSH2_SYS_USE_PKG_CONFIG=1 + + local emesonargs=( + # *can* do lua5-1 but upstream uses+test luajit most (bug #946881) + -Dluajit=enabled + $(meson_feature doc docs_c) + $(meson_feature doc docs_lua) + ) + + cargo_env meson_src_configure +} + +src_compile() { + cargo_env meson_src_compile +} + +src_install() { + local DOCS=( Changelog.md Readme.md ) + cargo_env meson_src_install + + if use doc; then + dodir /usr/share/doc/${PF}/html + mv -- "${ED}"/usr/{doc/naev/{c,lua},share/doc/${PF}/html} || die + rm -r -- "${ED}"/usr/doc || die + fi + + rm -r -- "${ED}"/usr/share/doc/naev || die +}