commit: 095c00fa80148cdaaeaa3662a6238f9e667b7a82 Author: Marek Szuba <marecki <AT> gentoo <DOT> org> AuthorDate: Sun Apr 7 13:22:54 2024 +0000 Commit: Marek Szuba <marecki <AT> gentoo <DOT> org> CommitDate: Sun Apr 7 14:05:08 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=095c00fa
app-misc/mc: add 4.8.31 Closes: https://bugs.gentoo.org/921533 Closes: https://bugs.gentoo.org/925603 Signed-off-by: Marek Szuba <marecki <AT> gentoo.org> app-misc/mc/Manifest | 1 + app-misc/mc/mc-4.8.31.ebuild | 131 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 132 insertions(+) diff --git a/app-misc/mc/Manifest b/app-misc/mc/Manifest index 4f42dba4db01..821186c1f709 100644 --- a/app-misc/mc/Manifest +++ b/app-misc/mc/Manifest @@ -1 +1,2 @@ DIST mc-4.8.30.tar.xz 2380824 BLAKE2B 2bf759314abae39db7596426cba22f6eaac0efc58e7025f1a7ef1863496ea7a3c00d298d101123b9defb109e76e31fe988227fb5c1112e06051b3c7a5b3dc1b6 SHA512 f793f744eaff236c9952d477236dd775a24d9ddd7ff46940bfe2d06da5596bed91d6bd9c85250696da6dcdc0a1890dc01c736654df3f59039674eff38e12e68e +DIST mc-4.8.31.tar.xz 2385632 BLAKE2B aa8406d7d68a7466f662f83730dfc157f6e4f444b62284d9b71ea12def333996e298352f94526a3eb85491030f62373cf8d5621e449a7abf1fb5267a13a396fe SHA512 dc2272a0016ed782eafc78efda575b04d064ffa7984a146f3389dea81f4c7886647e7d1f097b547f7ae00190c10e35979a24400a6bb936c023f190a82934c12d diff --git a/app-misc/mc/mc-4.8.31.ebuild b/app-misc/mc/mc-4.8.31.ebuild new file mode 100644 index 000000000000..5981d616172c --- /dev/null +++ b/app-misc/mc/mc-4.8.31.ebuild @@ -0,0 +1,131 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools flag-o-matic + +MY_P="${P/_/-}" +SRC_URI="http://ftp.midnight-commander.org/${MY_P}.tar.xz" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos" + +DESCRIPTION="GNU Midnight Commander is a text based file manager" +HOMEPAGE="https://midnight-commander.org" + +LICENSE="GPL-3" +SLOT="0" +IUSE="+edit gpm nls sftp +slang spell test unicode X" + +REQUIRED_USE="spell? ( edit )" + +DEPEND=" + >=dev-libs/glib-2.30.0:2 + gpm? ( sys-libs/gpm ) + kernel_linux? ( sys-fs/e2fsprogs[tools(+)] ) + sftp? ( net-libs/libssh2 ) + slang? ( >=sys-libs/slang-2 ) + !slang? ( sys-libs/ncurses:=[unicode(+)?] ) + spell? ( app-text/aspell ) + X? ( + x11-libs/libX11 + x11-libs/libICE + x11-libs/libXau + x11-libs/libXdmcp + x11-libs/libSM + ) +" +RDEPEND="${DEPEND} + spell? ( app-dicts/aspell-en )" +BDEPEND=" + app-arch/xz-utils + virtual/pkgconfig + nls? ( sys-devel/gettext ) + test? ( dev-libs/check ) +" + +RESTRICT="!test? ( test )" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}"/${PN}-4.8.26-ncurses-mouse.patch + "${FILESDIR}"/${PN}-4.8.29-gentoo-tools.patch +) + +# This is a check for AIX, on Linux mc uses statvfs() regardless of whether +# LFS64 interfaces are available in libc or not. +QA_CONFIG_IMPL_DECL_SKIP=( + statvfs64 +) + +src_prepare() { + default + + # Bug #906194 + use elibc_musl && eapply "${FILESDIR}"/${PN}-4.8.30-musl-tests.patch + + eautoreconf +} + +src_configure() { + [[ ${CHOST} == *-solaris* ]] && append-ldflags "-lnsl -lsocket" + + local myeconfargs=( + --enable-charset + --enable-vfs + --with-screen=$(usex slang 'slang' "ncurses$(usex unicode 'w' '')") + $(use_enable kernel_linux vfs-undelfs) + # Today mclib does not expose any headers and is linked to + # single 'mc' binary. Thus there is no advantage of having + # a library. Let's avoid shared library altogether + # as it also conflicts with sci-libs/mc: bug #685938 + --disable-mclib + $(use_enable nls) + $(use_enable sftp vfs-sftp) + $(use_enable spell aspell) + $(use_enable test tests) + $(use_with gpm gpm-mouse) + $(use_with X x) + $(use_with edit internal-edit) + ) + econf "${myeconfargs[@]}" +} + +src_test() { + # Bug #759466 + if [[ ${EUID} == 0 ]] ; then + ewarn "You are emerging ${PN} as root with 'userpriv' disabled." + ewarn "Expect some test failures, or emerge with 'FEATURES=userpriv'!" + fi + + # CK_FORK=no to avoid using fork() in check library + # as mc mocks fork() itself: bug #644462. + # + # VERBOSE=1 to make test failures contain detailed + # information. + CK_FORK=no emake check VERBOSE=1 +} +src_install() { + emake DESTDIR="${D}" install + dodoc AUTHORS NEWS README + + # fix bug #334383 + if use kernel_linux && [[ ${EUID} == 0 ]] ; then + fowners root:tty /usr/libexec/mc/cons.saver + fperms g+s /usr/libexec/mc/cons.saver + fi +} + +pkg_postinst() { + elog "${PN} extension scripts depend on many external tools, install them as needed" + elog + if use spell && ! has_version app-dicts/aspell-en ; then + elog "'spell' USE flag is enabled however app-dicts/aspell-en is not installed." + elog "You should manually set 'spell_language' in the Misc section of ~/.config/mc/ini" + elog "It has to be set to one of your installed aspell dictionaries or 'NONE'" + elog + fi + elog "To enable exiting to latest working directory," + elog "put this into your ~/.bashrc:" + elog ". ${EPREFIX}/usr/libexec/mc/mc.sh" +}
