From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id CD11A158064 for ; Sun, 5 May 2024 23:44:18 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 1F1112BC069; Sun, 5 May 2024 23:44:16 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id E8F312BC069 for ; Sun, 5 May 2024 23:44:15 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id C2C43343185 for ; Sun, 5 May 2024 23:44:14 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 214511A3A for ; Sun, 5 May 2024 23:44:12 +0000 (UTC) From: "Ionen Wolkens" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Ionen Wolkens" Message-ID: <1714952627.1d963d8e8907e5c9d3ddc2795b6266e3c13b6368.ionen@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: games-strategy/freeorion/ X-VCS-Repository: repo/gentoo X-VCS-Files: games-strategy/freeorion/Manifest games-strategy/freeorion/freeorion-0.5.0.1.ebuild X-VCS-Directories: games-strategy/freeorion/ X-VCS-Committer: ionen X-VCS-Committer-Name: Ionen Wolkens X-VCS-Revision: 1d963d8e8907e5c9d3ddc2795b6266e3c13b6368 X-VCS-Branch: master Date: Sun, 5 May 2024 23:44:12 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 17b6a428-c195-4af4-a6ac-47125b2fe9eb X-Archives-Hash: 28e09b4b002932f4fe67a1c8146fa3ea commit: 1d963d8e8907e5c9d3ddc2795b6266e3c13b6368 Author: Ionen Wolkens gentoo org> AuthorDate: Sun May 5 22:10:24 2024 +0000 Commit: Ionen Wolkens gentoo org> CommitDate: Sun May 5 23:43:47 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1d963d8e games-strategy/freeorion: add 0.5.0.1, enable py3.12 Tests pass (for me) with all python versions, albeit there is bug #904124 that implies they may not and unsure what it is about. Will see if CI can reproduce again with this I guess. Other changes: - replace ccache patch by a cmake option - drop the check directory wrt bug #904124 to ensure no flaky behavior if dependencies are found - filter-lto for now due to: DesignWnd.cpp:43:8: error: type 'struct Availability' violates the C++ One Definition Rule (this was an issue in 0.5 as well) Bug: https://bugs.gentoo.org/904124 Closes: https://bugs.gentoo.org/929597 Signed-off-by: Ionen Wolkens gentoo.org> games-strategy/freeorion/Manifest | 1 + games-strategy/freeorion/freeorion-0.5.0.1.ebuild | 119 ++++++++++++++++++++++ 2 files changed, 120 insertions(+) diff --git a/games-strategy/freeorion/Manifest b/games-strategy/freeorion/Manifest index b33c45109c5f..855ea24f8f6f 100644 --- a/games-strategy/freeorion/Manifest +++ b/games-strategy/freeorion/Manifest @@ -1 +1,2 @@ +DIST FreeOrion_v0.5.0.1_Source.tar.gz 152861158 BLAKE2B 6924d4916fcd3ac93e7498b5247957a6fb62b8523aa49114e9e11ef5e3b89374966551bc14192fa7928951728ce814fb86d89365beb97aa7c2bc84408bfcadd2 SHA512 dc267231329f0615f12887f22139d57a2611f378e17e8b0f26c00efdb77e73ef737ff875350f805d34a07ca4ce0595758e4f61168878477ebbd92d0149bcdc22 DIST FreeOrion_v0.5_Source.tar.gz 152861207 BLAKE2B 5263f9c2461db35b5283122889d0779f175af095e90eb782d21b6870193669b0307c2df95ebde78b3f762d2d0e1e1d8ec5f537bd44bf6810b9fbf76c58322172 SHA512 ec1247584d317ca0d0394d62754fd35b1d1212323e96e644c9efae422437daf63aac12c2798274993c9c29887fe73a51bfe11e9b53370dc261a0683efe312f19 diff --git a/games-strategy/freeorion/freeorion-0.5.0.1.ebuild b/games-strategy/freeorion/freeorion-0.5.0.1.ebuild new file mode 100644 index 000000000000..29b1188c6e9f --- /dev/null +++ b/games-strategy/freeorion/freeorion-0.5.0.1.ebuild @@ -0,0 +1,119 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) +inherit check-reqs cmake flag-o-matic multiprocessing python-single-r1 xdg + +DESCRIPTION="Free turn-based space empire and galactic conquest game" +HOMEPAGE="https://www.freeorion.org/" +SRC_URI="https://github.com/freeorion/freeorion/releases/download/v${PV}/FreeOrion_v${PV}_Source.tar.gz" +S=${WORKDIR}/src-tarball + +LICENSE="GPL-2+ CC-BY-SA-3.0 LGPL-2.1+" +SLOT="0" +KEYWORDS="~amd64" +IUSE="+client doc test" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +RESTRICT="!test? ( test )" + +DEPEND=" + ${PYTHON_DEPS} + $(python_gen_cond_dep 'dev-libs/boost:=[${PYTHON_USEDEP},nls,python]') + sys-libs/zlib:= + client? ( + media-libs/freetype + media-libs/glew:0= + media-libs/libglvnd + media-libs/libogg + media-libs/libpng:= + media-libs/libsdl2[opengl,video] + media-libs/libvorbis + media-libs/openal + ) +" +RDEPEND=" + ${DEPEND} + client? ( + media-fonts/dejavu + media-fonts/roboto + ) +" +BDEPEND=" + ${PYTHON_DEPS} + doc? ( + app-text/doxygen + media-gfx/graphviz + ) + test? ( $(python_gen_cond_dep 'dev-python/pytest[${PYTHON_USEDEP}]') ) +" + +freeorion_check-reqs() { + # cc1plus processes may suddenly use ~1.5GB all at once early on (2+GB + # if debug symbols) then far less for the rest, check minimal jobs*1.5 + local CHECKREQS_MEMORY=$(($(makeopts_jobs)*1500))M + check-reqs_${EBUILD_PHASE_FUNC} +} + +pkg_pretend() { + freeorion_check-reqs +} + +pkg_setup() { + freeorion_check-reqs + python-single-r1_pkg_setup +} + +src_prepare() { + cmake_src_prepare + + sed -i 's/-O3//' CMakeLists.txt || die + + cmake_comment_add_subdirectory check #904124 +} + +src_configure() { + filter-lto # -Werror=odr issues + + local mycmakeargs=( + -DCCACHE_PROGRAM=no + -DBUILD_CLIENT_GG=$(usex client) + -DBUILD_CLIENT_GODOT=no # TODO? perhaps with system godot (experimental) + -DBUILD_TESTING=$(usex test) + ) + + cmake_src_configure +} + +src_compile() { + cmake_src_compile all $(usev doc) +} + +src_test() { + cmake_src_test -j1 # avoid running 2 conflicting servers + + local EPYTEST_DESELECT=( + # broken with 3.11 but is not known to cause issues, just skip for now + tests/AI/save_game_codec/test_savegame_manager.py::test_setstate_call + ) + + epytest -o cache_dir="${T}"/pytest_cache default/python/tests +} + +src_install() { + local DOCS=( ChangeLog.md README.md ) + cmake_src_install + + use doc && dodoc -r "${BUILD_DIR}"/doc/cpp-apidoc/html + + if use client; then + local font + for font in roboto/Roboto-{Bold,Regular}.ttf dejavu/DejaVuSans{-Bold,}.ttf; do + dosym -r /usr/share/{fonts/${font%/*},${PN}/default/data/fonts}/${font##*/} + done + rm -- "${ED}"/usr/share/${PN}/default/data/fonts/LICENSE.{Roboto,DejaVu} || die + else + rm -r -- "${ED}"/usr/share/freeorion/default/data/fonts || die + fi +}