diff --git a/app-misc/mc/Manifest b/app-misc/mc/Manifest index b769e07..8ed3fc4 100644 --- a/app-misc/mc/Manifest +++ b/app-misc/mc/Manifest @@ -1,6 +1,10 @@ AUX mc-4.8.26-ncurses-mouse.patch 612 BLAKE2B ba3324dfee320a6c08c65ec8bf7784075f8a36c111ffa75129251674152cea68cde87844d5849c82111d4fad779c1d13992a7d765c4bc48b39d865ab1f89cbb6 SHA512 f97025ad7b3719b372368028ad9428e0cac67069d04e70b2e2923dd998a9f687f0807254bdc859218869e1666db80807fd53c19291e2921b420bc357e79d9406 AUX mc-4.8.28-tests.patch 1308 BLAKE2B 37f2d2a3264386d558212741d95c68c9362676d727d4d2b47a690dd6ad97c15ff943b3950cc28456ffceda78e88645bd6f73958a592f425594e727cc383721cf SHA512 41499d5ee4a7d0bf3e08c6fad56c2d46e3761f4f7359db1351c4ca1358a9ba33be7979df55d19263214acb3ea01271278efccff72d32ea3cf8a3cfb84a964f47 +AUX mc-4.8.29-autoconf-c99.patch 849 BLAKE2B 7d9eb9b7f046dac592dee09e3598620c61167365aefb41186f4d60b803f17cf151280b9bf5facef7101f5297d9faa3b269c9b759095ad6bd01f79b4a8ee38211 SHA512 983de54aa05b09c9510945f4c3b83231779ee24808ec2cbbb2ce0e2b5743bb120d85edf0e9bd0d78e5aafb42601272997c2bcef9fb606de9e043d9619eba4485 +AUX mc-4.8.29-gentoo-tools.patch 413 BLAKE2B 53e3f8e5e711374bbc5e3bb868df5e3345eed8f8de4ec3cac486b63c210bb10e6832b60292c614b4bd5c65ae750c5b2c38430ac1da2c9f6febb2b686199463ff SHA512 38598f57f4905659bc5d69f4ae19510ce35e76c8e33fc5262c5c8d17742483ebd5aa61ddac29a5811e111fe8ca66e6418fa4d48567e3a4e7ec4406916834c6fa DIST mc-4.8.28.tar.xz 2333072 BLAKE2B f4218e6c166df85b7b3736f0fd1414c9507c72074f06001f12b114ce6c6fbbf3688ab850aa70f5063eb3920736f878e113eb39a5d261ccfc3ffa9dab473a8436 SHA512 ca3b3a57281e9387cb52bf1fcfc3f39a4d5f438aafc256dc492c192678824f67c983a852c759664efc5bc6d0de471c9b3929834f8301f6302ca1ebeee513fdfd +DIST mc-4.8.29.tar.xz 2368164 BLAKE2B 0ecddf33b4b7b32918484bc7efe15ef1c9dda094814c85ceabf1b4bd9343507a33932b8cd050fdae2e683f9815ab6dd802ff8eb8e2215c6264be073bc5ac7e4d SHA512 c7e219eda34197d0294748cf5fd1a5dcfedfc17c20cfcf94c4dad5170f87095845f4fc0065e2868342125039c13cc3ba617804df74186816828e93ed71c1e9a3 DIST uc1541 21241 BLAKE2B fb0a1960f8d58f51b7af49eb253832b3965087efc765b5c8acc0280a058b883b28439f84950089ba64c1c5a47a074c4cfa488d349a2c5d330032bface8f827a1 SHA512 a7f5fb91c8e38203fd01c07df10bd299be25a60b7e96c056c24d08bf8594ca788c1cd5dc8a116801cf02ee8e84d86879382c1b4727a2b9b9e7c6912dbbc22de9 DIST ulha 5495 BLAKE2B bd719ea676b17fce3c7e3a2c427c7faea1d57bbd8f9e8fee2ceda781cad1425fb80b7812328d33c8575aabf1add2f905532604bb759a2eb29bc0ad5bab27d603 SHA512 43f1bb444b7f796e8226e6448a9460c7470c40eeec51d84d80077f438cdedf207d7f9ef6da699d4edd839de3337244ff36341a33143d0847ba7c881e83119a0b EBUILD mc-4.8.28-r10.ebuild 3511 BLAKE2B 94f4ca7ac151d445700cdd40939b51d083f236565362c5358d9e262d44d326260eada5470e501491d1b75bf59555584cfdf143aed22fdaf71858e6d5676a2b53 SHA512 de180744ef6a6afb4a9c1d38d5c7702903456bc9126a43790371bed6cecc703ea4444705dfe68ae1cde651065769bb8370f9771a3b9b3c37984b8f588126b133 +EBUILD mc-4.8.29-r10.ebuild 3418 BLAKE2B 63a4ddaf5cfcd3443a72e519d75c52e4557374289c571971d6da2e2b9b1a74262b6125260717bfd3cd762daabde9f35d902d4d34c6b7af5c7654b518238e5ed6 SHA512 082ec71d5207692ce3fac652ee2270e9dc3b8d29293c8618dfe0d6e612fa7847bfad3676d882b78db5c2a47ae942c94cecec52b577d9168442d65ba875c754ba diff --git a/app-misc/mc/files/mc-4.8.29-autoconf-c99.patch b/app-misc/mc/files/mc-4.8.29-autoconf-c99.patch new file mode 100644 index 0000000..f1577dd --- /dev/null +++ b/app-misc/mc/files/mc-4.8.29-autoconf-c99.patch @@ -0,0 +1,24 @@ +From a2dbad461b8a63630f9ad7cfa36b6613e85a91cb Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Sun, 5 Feb 2023 18:38:37 +0100 +Subject: [PATCH] autoconf: Fix C99 compatibility issue in mc_GET_FS_INFO check +Content-type: text/plain + +Include for the declaration of posix_fallocate. This +avoids an implicit function declaration and build issues with future +compilers. + +Signed-off-by: Florian Weimer +--- a/m4.include/mc-get-fs-info.m4 ++++ b/m4.include/mc-get-fs-info.m4 +@@ -8,6 +8,7 @@ AC_DEFUN([gl_POSIX_FALLOCATE], [ + AC_LINK_IFELSE([AC_LANG_PROGRAM([[ + #define _XOPEN_SOURCE 600 + #include ++ #include + #if defined(__GLIBC__) && (__GLIBC__ < 2 || __GLIBC_MINOR__ < 7) + possibly broken posix_fallocate + #endif +-- +2.39.1 + diff --git a/app-misc/mc/files/mc-4.8.29-gentoo-tools.patch b/app-misc/mc/files/mc-4.8.29-gentoo-tools.patch new file mode 100644 index 0000000..4c7ccfe --- /dev/null +++ b/app-misc/mc/files/mc-4.8.29-gentoo-tools.patch @@ -0,0 +1,11 @@ +--- a/misc/ext.d/video.sh ++++ b/misc/ext.d/video.sh +@@ -19,7 +19,7 @@ + elif which mpv_identify.sh >/dev/null 2>&1; then + mpv_identify.sh "${MC_EXT_FILENAME}" + else +- echo "Please install either mplayer or mpv to get information for this file" ++ echo "Please install either mplayer or mpv[tools] to get information for this file" + fi + ;; + esac diff --git a/app-misc/mc/mc-4.8.29-r10.ebuild b/app-misc/mc/mc-4.8.29-r10.ebuild new file mode 100644 index 0000000..3140952 --- /dev/null +++ b/app-misc/mc/mc-4.8.29-r10.ebuild @@ -0,0 +1,128 @@ +# Copyright 1999-2023 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 + https://raw.githubusercontent.com/gryf/uc1541/master/uc1541 + https://raw.githubusercontent.com/gryf/mc_ulha/master/ulha +" +KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris" + +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 )" + +RDEPEND=" + dev-python/extfslib + >=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 + ) +" +DEPEND="${RDEPEND}" +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 + "${FILESDIR}"/${PN}-4.8.29-autoconf-c99.patch +) + +src_prepare() { + default + # patch touches configure.ac + 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 + exeinto "/usr/libexec/mc/extfs.d/" + doexe "${DISTDIR}/ulha" + doexe "${DISTDIR}/uc1541" +} + +pkg_postinst() { + 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" +}