diff --git a/games-strategy/endless-sky/Manifest b/games-strategy/endless-sky/Manifest index 8bc9825dc120..a016c9ed1558 100644 --- a/games-strategy/endless-sky/Manifest +++ b/games-strategy/endless-sky/Manifest @@ -1 +1,2 @@ DIST endless-sky-0.10.14.tar.gz 367796925 BLAKE2B 4a7fa8c95cb898142c4ca07b9ef3cdf24b943120b0846e113501f627aa5221b909df244c13c23127dfa7a155d71a81907ebe229ec1f228017560fd330a2237fb SHA512 28b2fcc599aa827809ab62c7bd1bfdd76e417b347c9114f7be1444c088fd484ce498eb35d27c2b87ed887c48380352e0da4bf9a4c74a209d86bb9bd404b64445 +DIST endless-sky-0.10.16.tar.gz 363292961 BLAKE2B cba02ad25a298a68852ebdac128476ce1fc4a0a18a65efc9c4230a7a785bd92ab5500550d120866caa105465809b6d841f45178d5803e84d6a57baa3226d60d5 SHA512 8dd8ee8bdb71ceda23024ac07502adab4f246ed3723fdc49d152de1796ba799c8584d31892f357034fa9c7d93c2880278f05cde9c0bd7e7e789eabb0513ba4ca diff --git a/games-strategy/endless-sky/endless-sky-0.10.16-r1.ebuild b/games-strategy/endless-sky/endless-sky-0.10.16-r1.ebuild new file mode 100644 index 000000000000..f8ac49d90eda --- /dev/null +++ b/games-strategy/endless-sky/endless-sky-0.10.16-r1.ebuild @@ -0,0 +1,103 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake flag-o-matic xdg + +DESCRIPTION="Space exploration, trading & combat in the tradition of Terminal Velocity" +HOMEPAGE="https://endless-sky.github.io/" +SRC_URI=" + https://github.com/endless-sky/endless-sky/archive/refs/tags/v${PV}.tar.gz + -> ${P}.tar.gz +" + +LICENSE=" + GPL-3+ + CC-BY-2.0 CC-BY-3.0 CC-BY-4.0 + CC-BY-SA-3.0 CC-BY-SA-4.0 + CC0-1.0 Unsplash public-domain +" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="gles2-only test" +RESTRICT="!test? ( test )" + +RDEPEND=" + media-libs/flac:=[cxx] + media-libs/libavif:= + media-libs/libglvnd + media-libs/libjpeg-turbo:= + media-libs/libmad + media-libs/libpng:= + media-libs/libsdl2[video] + media-libs/openal + sys-apps/util-linux + virtual/minizip:= + gles2-only? ( media-libs/libsdl2[gles2] ) + !gles2-only? ( + media-libs/glew:0= + media-libs/libsdl2[opengl] + ) +" +DEPEND=" + ${RDEPEND} + test? ( dev-cpp/catch:0 ) +" + +src_prepare() { + cmake_src_prepare + + # no /usr/*games/ on Gentoo, adjust docdir, install even if != Release, + # and GLEW is unused if USE=gles2-only (using sed for less rebasing) + sed -e '/install(/s: games: libexec:' \ + -e '/install(/s: share/games: share:' \ + -e "/install(/s: share/doc/endless-sky: share/doc/${PF}:" \ + -e '/install(/s: CONFIGURATIONS Release::' \ + -e 's:GLEW REQUIRED:GLEW:' \ + -i CMakeLists.txt || die + + # do not use sanitizers for tests + sed -i '/SANITIZER_OPTS/d' tests/CMakeLists.txt || die + + # source/Files.cpp has odd logic to find resources, make a wrapper + # rather than try to modify it + printf '#!/usr/bin/env sh\nexec %q --resources %q "$@"\n' \ + "${EPREFIX}"/usr/libexec/${PN} \ + "${EPREFIX}"/usr/share/${PN} > "${T}"/${PN} || die +} + +src_configure() { + filter-lto # -Werror=odr issues + + local mycmakeargs=( + -DBUILD_TESTING=$(usex test) + -DES_GLES=$(usex gles2-only) + -DES_USE_SYSTEM_LIBRARIES=yes + -DES_USE_VCPKG=no + ) + + cmake_src_configure +} + +src_install() { + cmake_src_install + + dobin "${T}"/${PN} + + gzip -d -- "${ED}"/usr/share/man/man6/${PN}.6.gz || die + rm -- "${ED}"/usr/share/doc/${PF}/{copyright,license.txt} || die +} + +pkg_postinst() { + xdg_pkg_postinst + + if [[ ! ${REPLACING_VERSIONS} ]]; then + elog "Endless Sky provides high-res sprites for high-dpi screens." + elog "If you want to use them, download:" + elog + elog " https://github.com/endless-sky/endless-sky-high-dpi/releases" + elog + elog "and extract it to ~/.local/share/endless-sky/plugins/" + fi +}