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 C07BE15815E for ; Sat, 10 Feb 2024 21:15:32 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 858B1E2A56; Sat, 10 Feb 2024 21:15:31 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 66DA2E2A56 for ; Sat, 10 Feb 2024 21:15:31 +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 91E21343076 for ; Sat, 10 Feb 2024 21:15:30 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 4876D1082 for ; Sat, 10 Feb 2024 21:15:28 +0000 (UTC) From: "Matt Jolly" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Matt Jolly" Message-ID: <1707599711.24750791aaf556f3c73166243f0c5417df1c71a8.kangie@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: games-strategy/freeciv/ X-VCS-Repository: repo/gentoo X-VCS-Files: games-strategy/freeciv/Manifest games-strategy/freeciv/freeciv-3.0.10.ebuild X-VCS-Directories: games-strategy/freeciv/ X-VCS-Committer: kangie X-VCS-Committer-Name: Matt Jolly X-VCS-Revision: 24750791aaf556f3c73166243f0c5417df1c71a8 X-VCS-Branch: master Date: Sat, 10 Feb 2024 21:15:28 +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: 98f46a9a-5a86-4a37-b6cc-27d243257cac X-Archives-Hash: ad7fff1565a3a89317e5d6c4ebce9f87 commit: 24750791aaf556f3c73166243f0c5417df1c71a8 Author: Matt Jolly footclan ninja> AuthorDate: Sun Dec 17 19:33:43 2023 +0000 Commit: Matt Jolly gentoo org> CommitDate: Sat Feb 10 21:15:11 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=24750791 games-strategy/freeciv: add 3.0.10 - gtk client -> gtk3.22 client - drop ipv6 use - remove superfluous sed Closes: https://bugs.gentoo.org/872353 Bug: https://bugs.gentoo.org/863848 Signed-off-by: Matt Jolly footclan.ninja> Signed-off-by: Matt Jolly gentoo.org> games-strategy/freeciv/Manifest | 1 + games-strategy/freeciv/freeciv-3.0.10.ebuild | 193 +++++++++++++++++++++++++++ 2 files changed, 194 insertions(+) diff --git a/games-strategy/freeciv/Manifest b/games-strategy/freeciv/Manifest index eb1adb9d824b..b1ce9b6f02ea 100644 --- a/games-strategy/freeciv/Manifest +++ b/games-strategy/freeciv/Manifest @@ -1,3 +1,4 @@ DIST freeciv-3.0.1.tar.xz 33528292 BLAKE2B e19cae8a02aa4b9afc2895560aa7a8d6135a63a0e757c348a75e72522448a026874f8f0120448b38ca2fee0ecc42dd04d80345d9877554168ad07ca2a20e5dcc SHA512 0f28aa7eb6adc2c4fe2af31265965ec30b4ea4f12121c4240ca896070f4ea574db58f02240e74822b9d498e112bcdb7036bb69f3d0b33cea5fec724e9e47da34 +DIST freeciv-3.0.10.tar.xz 43433812 BLAKE2B c529b2039e38070fef4758f4d316cfe952dcce4d4a773e70da22f2a3948f0506be493b4af20529d80749b47954bdd87a7aca8efb72c5502fefb2c103977f4e12 SHA512 4082e94deeda8d9b90f04137d6e7dfd39ff7232225a910f47519a464db553891e42289c1d7738f9ee0d9a16db143669bf8c4c5ce9492a4455ccd99906c956192 DIST freeciv-3.1.0_beta2.tar.gz 127527752 BLAKE2B 457e01787e2dccb4862de5519a4ea51bcfe240c0948e2cd97b09ae6d4e2c27d4196329326cd7c0489ce1e37dbc548f4f31fcd7c5f57b15b53b49dd6e54fef032 SHA512 2b15134454bf7ca885287985bb6d17a31f6cbfdec87fa8e6fd7fce000a2bfc1fa888dd7a2e244df4460d08011e87876800190a9fa8ea825789eec0e434348920 DIST freeciv-3.1.0_beta4.tar.gz 127725084 BLAKE2B f92c0aa75a47c165f808c761dc8e0a7cc76cafa722ef8d968ad69f379f2945774c811407f234df7ef22327c93dc2ec7b7765d0666bda249c573f57be3d03891a SHA512 b6864730583fe6dc17818813080132d6fa44c2adf8033a827b9a209f309c69e58bda41b8263a86006042a2e5f8bf99037e9d1d813a15ff1b9d48ec69b395f139 diff --git a/games-strategy/freeciv/freeciv-3.0.10.ebuild b/games-strategy/freeciv/freeciv-3.0.10.ebuild new file mode 100644 index 000000000000..624a5bb44ac6 --- /dev/null +++ b/games-strategy/freeciv/freeciv-3.0.10.ebuild @@ -0,0 +1,193 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LUA_COMPAT=( lua5-3 ) + +inherit desktop lua-single qmake-utils xdg + +MY_PV="${PV/_beta/-beta}" +MY_PV="${MY_PV/_rc/-RC}" +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="Multiplayer strategy game (Civilization Clone)" +HOMEPAGE="https://www.freeciv.org/" + +if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then + SRC_URI="mirror://sourceforge/freeciv/${MY_P}.tar.xz" + KEYWORDS="~amd64 ~ppc64 ~x86" +fi + +LICENSE="GPL-2+" +SLOT="0" +IUSE="aimodules auth dedicated +gtk mapimg modpack mysql nls qt5 readline sdl +server +sound sqlite +system-lua" + +REQUIRED_USE=" + system-lua? ( ${LUA_REQUIRED_USE} ) + dedicated? ( !gtk !mapimg !modpack !nls !qt5 !sdl !sound ) + !dedicated? ( || ( gtk qt5 sdl ) ) +" + +# postgres isn't yet really supported by upstream +RDEPEND=" + app-arch/bzip2 + app-arch/xz-utils + dev-libs/icu:= + net-misc/curl + sys-libs/zlib + auth? ( + app-arch/zstd:= + dev-libs/openssl:= + !mysql? ( ( !sqlite? ( dev-db/mysql-connector-c:= ) ) ) + mysql? ( dev-db/mysql-connector-c:= ) + sqlite? ( dev-db/sqlite:3 ) + ) + aimodules? ( dev-libs/libltdl ) + !dedicated? ( + media-libs/libpng + gtk? ( x11-libs/gtk+:3 ) + mapimg? ( media-gfx/imagemagick:= ) + modpack? ( x11-libs/gtk+:3 ) + nls? ( virtual/libintl ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + ) + !sdl? ( !gtk? ( x11-libs/gtk+:3 ) ) + sdl? ( + media-libs/libsdl2[video] + media-libs/sdl2-gfx + media-libs/sdl2-image[png] + media-libs/sdl2-ttf + ) + server? ( aimodules? ( dev-build/libtool ) ) + sound? ( + media-libs/libsdl2[sound] + media-libs/sdl2-mixer[vorbis] + ) + ) + readline? ( sys-libs/readline:= ) + system-lua? ( ${LUA_DEPS} ) +" +DEPEND="${RDEPEND} + !dedicated? ( x11-base/xorg-proto ) +" +# Calls gzip during build +BDEPEND=" + app-arch/gzip + virtual/pkgconfig + !dedicated? ( nls? ( sys-devel/gettext ) ) +" + +S="${WORKDIR}/${MY_P}" + +pkg_setup() { + if ! use dedicated && ! use server ; then + ewarn "Disabling server USE flag will make it impossible to start local" + ewarn "games, but you will still be able to join multiplayer games." + fi + + use system-lua && lua-single_pkg_setup +} + +src_configure() { + local myclient=() mydatabase=() myeconfargs=() + + if use auth ; then + if ! use mysql && ! use sqlite ; then + einfo "No database backend chosen, defaulting" + einfo "to mysql!" + mydatabase=( mysql ) + else + use mysql && mydatabase+=( mysql ) + use sqlite && mydatabase+=( sqlite3 ) + fi + else + mydatabase=( no ) + fi + + if use dedicated ; then + myclient=( no ) + myeconfargs+=( + --enable-server + --enable-freeciv-manual=html + ) + else + if use !sdl && use !gtk && ! use qt5 ; then + einfo "No client backend given, defaulting to gtk3 client!" + myclient=( gtk3 ) + else + use sdl && myclient+=( sdl2 ) + # Since all gtk3 in gentoo is >= 3.22 we can use the better client + use gtk && myclient+=( gtk3.22 ) + if use qt5 ; then + local -x MOCCMD=$(qt5_get_bindir)/moc + myclient+=( qt ) + fi + fi + myeconfargs+=( + $(use_enable server) + $(use_enable server freeciv-manual html ) + ) + fi + + myeconfargs+=( + --enable-aimodules="$(usex aimodules "yes" "no")" + --enable-client="${myclient[*]}" + --enable-fcdb="${mydatabase[*]}" + --enable-fcmp="$(usex modpack "gtk3" "no")" + --enable-ipv6 + # disabling shared libs will break aimodules USE flag + --enable-shared + --localedir=/usr/share/locale + --with-appdatadir="${EPREFIX}"/usr/share/metainfo + $(use_enable mapimg) + $(use_enable nls) + $(use_enable sound sdl-mixer) + $(use_enable system-lua sys-lua) + $(use_with readline) + ) + econf "${myeconfargs[@]}" +} + +src_install() { + default + + if use server ; then + # Create and install the html manual. It can't be done for dedicated + # servers, because the 'freeciv-manual' tool is then not built. Also + # delete freeciv-manual from the GAMES_BINDIR, because it's useless. + # Note: to have it localized, it should be ran from _postinst, or + # something like that, but then it's a PITA to avoid orphan files... + # freeciv-manual only supports one ruleset argument at a time. + elog "Generating html manual..." + for RULESET in alien civ1 civ2 civ2civ3 classic experimental multiplayer sandbox + do + ./tools/freeciv-manual -r ${RULESET} || die + docinto html/rulesets/${RULESET} + dodoc ${RULESET}*.html + done + fi + + find "${ED}" -name "freeciv-manual*" -delete || die + + if use dedicated ; then + elog "Tidying up dedicated server installation..." + find "${ED}"/usr/share/man/man6/ \ + -not \( -name 'freeciv.6' -o -name 'freeciv-ruledit.6' \ + -o -name 'freeciv-ruleup.6' -o -name 'freeciv-server.6' \) -mindepth 1 -delete || die + else + # sdl client needs some special handling + if use sdl ; then + make_desktop_entry freeciv-sdl "Freeciv (SDL)" freeciv-client + else + rm "${ED}"/usr/share/man/man6/freeciv-sdl2.6 || die + fi + + rm -f "${ED}"/usr/share/man/man6/freeciv-xaw.6 || die + fi + + find "${ED}" -type f -name "*.la" -delete || die +}