--- freedroidrpg-0.16-r1.ebuild 2017-07-09 04:05:14.539930094 +0300 +++ freedroidrpg-1.0_rc2.ebuild 2019-11-10 20:39:33.000000000 +0300 @@ -1,39 +1,40 @@ -# Copyright 1999-2016 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 -PYTHON_COMPAT=( python2_7 ) -inherit autotools eutils gnome2-utils python-any-r1 +EAPI=7 +PYTHON_COMPAT=( python{2_7,3_{5,6,7}} ) +inherit autotools flag-o-matic desktop python-any-r1 xdg +MY_PV=$(ver_rs 2 '') DESCRIPTION="A modification of the classical Freedroid engine into an RPG" -HOMEPAGE="http://freedroid.sourceforge.net/" -SRC_URI="ftp://ftp.osuosl.org/pub/freedroid/freedroidRPG-${PV}//freedroidRPG-${PV}.tar.gz" +HOMEPAGE="http://www.freedroid.org" +SRC_URI="ftp://ftp.osuosl.org/pub/freedroid/freedroidRPG-$(ver_cut 1-2)/freedroidRPG-${MY_PV}.tar.gz" LICENSE="GPL-2+" SLOT="0" KEYWORDS="~amd64 ~x86" -IUSE="nls opengl sound" +IUSE="debug devtools nls opengl profile sanitize sound" RDEPEND=" + sys-libs/zlib virtual/jpeg:0 media-libs/libpng:0 media-libs/libsdl[opengl?,sound?,video] - >=media-libs/sdl-gfx-2.0.21 media-libs/sdl-image[jpeg,png] + >=media-libs/sdl-gfx-2.0.21 nls? ( virtual/libintl ) opengl? ( virtual/opengl ) sound? ( media-libs/libogg media-libs/libvorbis media-libs/sdl-mixer[vorbis] ) - x11-libs/libX11" + devtools? ( media-libs/sdl-ttf )" DEPEND="${RDEPEND} ${PYTHON_DEPS} - nls? ( sys-devel/gettext )" + nls? ( sys-devel/gettext ) + sanitize? ( || ( sys-devel/gcc[sanitize] sys-devel/clang-runtime[sanitize] ) )" -pkg_setup() { - python-any-r1_pkg_setup -} +S="${WORKDIR}/${PN}-${MY_PV^^}" src_prepare() { default @@ -43,18 +44,29 @@ -e '/-pipe/d' \ -e '/^SUBDIRS/s/pkgs//' \ Makefile.am || die - python_fix_shebang src sound + python_fix_shebang src data/sound eautoreconf } src_configure() { - econf \ - --disable-fastmath \ - --with-embedded-lua \ - --localedir=/usr/share/locale \ - $(use_enable nls) \ - $(use_enable opengl) \ + # this can produce strange results due to 'imprecise' math computations + filter-flags -ffast-math + + local myconf=( + --disable-fastmath + --with-embedded-lua + --localedir=/usr/share/locale + $(use_enable nls) + $(use_enable opengl) $(use_enable sound) + $(use_enable debug) + $(use_with debug extra-warnings) + $(use_enable debug backtrace) + $(use_enable sanitize sanitize-address) + $(use_enable profile rtprof) + $(use_enable devtools dev-tools) + ) + econf "${myconf[@]}" } src_install() { @@ -63,24 +75,22 @@ default for i in 48 64 96 128 do - doicon -s ${i} pkgs/freedesktop/icons/hicolor/${i}x${i}/apps/freedroidRPG.png + doicon -s ${i} pkgs/freedesktop/icons/hicolor/${i}x${i}/apps/"${PN}".png done doicon -s scalable pkgs/freedesktop/icons/hicolor/scalable/apps/freedroidRPG.svg - make_desktop_entry freedroidRPG "Freedroid RPG" freedroidRPG -} - -pkg_preinst() { - gnome2_icon_savelist + make_desktop_entry "${PN}" "Freedroid RPG" "${PN}" } pkg_postinst() { - gnome2_icon_cache_update - echo - ewarn "${P} is not compatible with old save games." - ewarn "Please start a new character." - echo -} + xdg_pkg_postinst -pkg_postrm() { - gnome2_icon_cache_update + local v min="1.0_rc1" + for v in ${REPLACING_VERSIONS}; do + if ver_test "${v}" -lt "${min}"; then + echo + ewarn "${P} is not compatible with save games before ${min}." + ewarn "Please start a new character." + echo + fi + done }