From 73318be505bc35e10cd9b4ec43b04c38cdb7da2f Mon Sep 17 00:00:00 2001 From: Lars Wendler Date: Fri, 9 Jun 2017 01:21:43 +0200 Subject: sys-apps/util-linux: Bump to version 2.30. Removed old. Also fix pylibmount segfault with python3.6 (bug #621176). Package-Manager: Portage-2.3.6, Repoman-2.3.2 --- sys-apps/util-linux/Manifest | 2 +- .../util-linux-2.30-pylibmount_segfault.patch | 25 +++ sys-apps/util-linux/util-linux-2.30.ebuild | 208 +++++++++++++++++++++ sys-apps/util-linux/util-linux-2.30_rc2.ebuild | 202 -------------------- 4 files changed, 234 insertions(+), 203 deletions(-) create mode 100644 sys-apps/util-linux/files/util-linux-2.30-pylibmount_segfault.patch create mode 100644 sys-apps/util-linux/util-linux-2.30.ebuild delete mode 100644 sys-apps/util-linux/util-linux-2.30_rc2.ebuild (limited to 'sys-apps/util-linux') diff --git a/sys-apps/util-linux/Manifest b/sys-apps/util-linux/Manifest index cc57bb33ef81..21f4ab9dce9c 100644 --- a/sys-apps/util-linux/Manifest +++ b/sys-apps/util-linux/Manifest @@ -2,4 +2,4 @@ DIST util-linux-2.26.2.tar.xz 3863868 SHA256 0e29bda142528a48a0a953c39ff63093651 DIST util-linux-2.28.2.tar.xz 4149700 SHA256 b89d37146f20bede93a42c847bce881a17e6dbd8066ff2db2bee733fa409f0cd SHA512 ac1c2d4c92bbc4eabed464cb0334c1d9b21e58df0f07f0b26e7adcfa188879de8632d195b65a4358c5e11e14ac6e09a1c6206265bbf1fab4ce122414bee7e940 WHIRLPOOL 1735e33620dba30cc1f42e60b707adb72234006b7fea242ac98c389295617bd0225563bcffa76b9d0753dfa100775dd9a2b73614843645ce667db5536842e308 DIST util-linux-2.29.1.tar.xz 4278756 SHA256 0ce40600b934ec2fecfa6bfc4efe6982d051ba96c2832b05201347aec582f54f SHA512 221fc7651eb0534c55206eaf9184b2eb55d9f838cd0e1623cadac5d4ac57a118d96cdd770b6492b39381dd1316b81553866bc0f8c25dbb52dac9641f2fa0f7fa WHIRLPOOL d509168960b0ad54ade4d03dc39dca1dcf0bb0a5b51a594f04bc02ff3a6c89fc5966cff4653dfc826f75f8864497da600c7a86039099845b98e6f9d7981cff98 DIST util-linux-2.29.2.tar.xz 4277668 SHA256 accea4d678209f97f634f40a93b7e9fcad5915d1f4749f6c47bee6bf110fe8e3 SHA512 0a87e6758531f74276f3de7607ef545f324b9b36b444aa5d163140c5fb0f4f7602655d7ec9939f92550dcb320d922cd69521a2183199d463795e67d3c27fce79 WHIRLPOOL 1f45711e593c76c6e208a28892ed2bf2622adb5fa1334867e13c6bf775a8903c2f1ebf18c3238d96fe139c5b60d61abf496251cf594a339209ce044f2bb8c17a -DIST util-linux-2.30-rc2.tar.xz 4376864 SHA256 5cdb28f6221ab68cb593c5e3fb01bb7cce9466a42bad031411eea6b5adc08c5d SHA512 df03ca776af6838c06387e017fdf38abb29adc1d29df56ce7c55d1df5a5ab16d6123e649c63734e75a0239f89b994147f261edd5e78e16881fd5ec12a4365763 WHIRLPOOL 7961bbc51117dd7ee2768ecfaef20758db882bdd888ff0495cba41860caf91354a78332d5131bdedb0cbb7fa2380485e15bbbc80ee8cd6f927787816c9d04e83 +DIST util-linux-2.30.tar.xz 4478016 SHA256 c208a4ff6906cb7f57940aa5bc3a6eed146e50a7cc0a092f52ef2ab65057a08d SHA512 30e311768718508066829567200e975fd08a22360915b27c8839f368fe6d84c8eca6c2f69a60f113d934eea9934e49f05cd98c3db7fd6bc5ad8f7f770badbc97 WHIRLPOOL 11749d9842e6de9ba0b164b533ac6eeae26557eed8da601eedc1505c5da88d0a6ef25586efb17c68ba0644a5ba8110188587c197f360b75191f1d4f90691d23b diff --git a/sys-apps/util-linux/files/util-linux-2.30-pylibmount_segfault.patch b/sys-apps/util-linux/files/util-linux-2.30-pylibmount_segfault.patch new file mode 100644 index 000000000000..73fbc9949232 --- /dev/null +++ b/sys-apps/util-linux/files/util-linux-2.30-pylibmount_segfault.patch @@ -0,0 +1,25 @@ +https://bugs.gentoo.org/621176 + +From 29b721bc9d20ed44858017689ce1745c220bd0d4 Mon Sep 17 00:00:00 2001 +From: Zac Medico +Date: Wed, 7 Jun 2017 17:21:33 -0700 +Subject: [PATCH] pylibmount: NULL terminate kwlist in Context_init + +Fixes a segfault observed with python3.6. +--- + libmount/python/context.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libmount/python/context.c b/libmount/python/context.c +index 6d82e1432..982414d01 100644 +--- a/libmount/python/context.c ++++ b/libmount/python/context.c +@@ -90,7 +90,7 @@ static int Context_init(ContextObjext *self, PyObject *args, PyObject *kwds) + "source", "target", "fstype", + "options", "mflags", "fstype_pattern", + "options_pattern", "fs", "fstab", +- "optsmode" ++ "optsmode", NULL + }; + + if (!PyArg_ParseTupleAndKeywords( diff --git a/sys-apps/util-linux/util-linux-2.30.ebuild b/sys-apps/util-linux/util-linux-2.30.ebuild new file mode 100644 index 000000000000..b016bb8652f2 --- /dev/null +++ b/sys-apps/util-linux/util-linux-2.30.ebuild @@ -0,0 +1,208 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="5" + +PYTHON_COMPAT=( python2_7 python3_{4,5,6} ) + +inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \ + pam python-single-r1 multilib-minimal systemd + +MY_PV=${PV/_/-} +MY_P=${PN}-${MY_PV} + +if [[ ${PV} == 9999 ]] ; then + inherit git-2 autotools + EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git" +else + [[ "${PV}" = *_rc* ]] || \ + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux" + SRC_URI="mirror://kernel/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz" +fi + +DESCRIPTION="Various useful Linux utilities" +HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/" + +LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain" +SLOT="0" +IUSE="build caps +cramfs fdformat kill ncurses nls pam python +readline selinux slang static-libs +suid systemd test tty-helpers udev unicode" + +# Most lib deps here are related to programs rather than our libs, +# so we rarely need to specify ${MULTILIB_USEDEP}. +RDEPEND="caps? ( sys-libs/libcap-ng ) + cramfs? ( sys-libs/zlib ) + ncurses? ( >=sys-libs/ncurses-5.2-r2:0=[unicode?] ) + pam? ( sys-libs/pam ) + python? ( ${PYTHON_DEPS} ) + readline? ( sys-libs/readline:0= ) + selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] ) + slang? ( sys-libs/slang ) + !build? ( systemd? ( sys-apps/systemd ) ) + udev? ( virtual/libudev:= )" +DEPEND="${RDEPEND} + virtual/pkgconfig + nls? ( sys-devel/gettext ) + test? ( sys-devel/bc ) + virtual/os-headers" +RDEPEND+=" + kill? ( + !sys-apps/coreutils[kill] + !sys-process/procps[kill] + ) + !sys-process/schedutils + !sys-apps/setarch + ! "${T}"/fallocate.${ABI}.c + #define _GNU_SOURCE + #include + main() { return fallocate(0, 0, 0, 0); } + EOF + append-lfs-flags + $(tc-getCC) ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} "${T}"/fallocate.${ABI}.c -o /dev/null >/dev/null 2>&1 \ + || export ac_cv_func_fallocate=no + rm -f "${T}"/fallocate.${ABI}.c +} + +multilib_src_configure() { + lfs_fallocate_test + # The scanf test in a run-time test which fails while cross-compiling. + # Blindly assume a POSIX setup since we require libmount, and libmount + # itself fails when the scanf test fails. #531856 + tc-is-cross-compiler && export scanf_cv_alloc_modifier=ms + export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486 + export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam) #545042 + + local myeconfargs=( + --disable-chfn-chsh + --disable-login + --disable-nologin + --disable-reset + --disable-su + --docdir='${datarootdir}'/doc/${PF} + --enable-agetty + --enable-bash-completion + --enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" + --enable-line + --enable-partx + --enable-raw + --enable-rename + --enable-schedutils + --with-bashcompletiondir="$(get_bashcompdir)" + --with-systemdsystemunitdir=$(multilib_native_usex systemd "$(systemd_get_unitdir)" "no") + $(multilib_native_use_enable caps setpriv) + $(multilib_native_use_enable cramfs) + $(multilib_native_use_enable fdformat) + $(multilib_native_use_enable nls) + $(multilib_native_use_enable suid makeinstall-chown) + $(multilib_native_use_enable suid makeinstall-setuid) + $(multilib_native_use_enable tty-helpers mesg) + $(multilib_native_use_enable tty-helpers wall) + $(multilib_native_use_enable tty-helpers write) + $(multilib_native_use_with python) + $(multilib_native_use_with readline) + $(multilib_native_use_with slang) + $(multilib_native_use_with systemd) + $(multilib_native_use_with udev) + $(multilib_native_usex ncurses "$(use_with unicode ncursesw)" '--without-ncursesw') + $(multilib_native_usex ncurses "$(use_with !unicode ncurses)" '--without-ncurses') + $(tc-has-tls || echo --disable-tls) + $(use_enable unicode widechar) + $(use_enable kill) + $(use_enable static-libs static) + $(use_with selinux) + $(usex ncurses '' '--without-tinfo') + ) + ECONF_SOURCE=${S} \ + econf "${myeconfargs[@]}" +} + +multilib_src_compile() { + if multilib_is_native_abi; then + default + else + # build libraries only + emake -f Makefile -f - mylibs \ + <<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)' + fi +} + +multilib_src_test() { + multilib_is_native_abi && emake check +} + +multilib_src_install() { + if multilib_is_native_abi; then + default + else + emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \ + install-pkgconfigDATA install-uuidincHEADERS \ + install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \ + install-nodist_smartcolsincHEADERS install-nodist_fdiskincHEADERS + fi + + if multilib_is_native_abi; then + # need the libs in / + gen_usr_ldscript -a blkid mount smartcols uuid + + use python && python_optimize + fi +} + +multilib_src_install_all() { + dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*} + + # e2fsprogs-libs didnt install .la files, and .pc work fine + prune_libtool_files + + if use pam; then + newpamd "${FILESDIR}/runuser.pamd" runuser + newpamd "${FILESDIR}/runuser-l.pamd" runuser-l + fi +} + +pkg_postinst() { + if ! use tty-helpers; then + elog "The mesg/wall/write tools have been disabled due to USE=-tty-helpers." + fi + + if [[ -z ${REPLACING_VERSIONS} ]]; then + elog "The agetty util now clears the terminal by default. You" + elog "might want to add --noclear to your /etc/inittab lines." + fi +} diff --git a/sys-apps/util-linux/util-linux-2.30_rc2.ebuild b/sys-apps/util-linux/util-linux-2.30_rc2.ebuild deleted file mode 100644 index 37dbeaf6c985..000000000000 --- a/sys-apps/util-linux/util-linux-2.30_rc2.ebuild +++ /dev/null @@ -1,202 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="5" - -PYTHON_COMPAT=( python2_7 python3_{4,5,6} ) - -inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \ - pam python-single-r1 multilib-minimal systemd - -MY_PV=${PV/_/-} -MY_P=${PN}-${MY_PV} - -if [[ ${PV} == 9999 ]] ; then - inherit git-2 autotools - EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git" -else - [[ "${PV}" = *_rc* ]] || \ - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux" - SRC_URI="mirror://kernel/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz" -fi - -DESCRIPTION="Various useful Linux utilities" -HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/" - -LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain" -SLOT="0" -IUSE="build caps +cramfs fdformat kill ncurses nls pam python +readline selinux slang static-libs +suid systemd test tty-helpers udev unicode" - -# Most lib deps here are related to programs rather than our libs, -# so we rarely need to specify ${MULTILIB_USEDEP}. -RDEPEND="caps? ( sys-libs/libcap-ng ) - cramfs? ( sys-libs/zlib ) - ncurses? ( >=sys-libs/ncurses-5.2-r2:0=[unicode?] ) - pam? ( sys-libs/pam ) - python? ( ${PYTHON_DEPS} ) - readline? ( sys-libs/readline:0= ) - selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] ) - slang? ( sys-libs/slang ) - !build? ( systemd? ( sys-apps/systemd ) ) - udev? ( virtual/libudev:= )" -DEPEND="${RDEPEND} - virtual/pkgconfig - nls? ( sys-devel/gettext ) - test? ( sys-devel/bc ) - virtual/os-headers" -RDEPEND+=" - kill? ( - !sys-apps/coreutils[kill] - !sys-process/procps[kill] - ) - !sys-process/schedutils - !sys-apps/setarch - ! "${T}"/fallocate.${ABI}.c - #define _GNU_SOURCE - #include - main() { return fallocate(0, 0, 0, 0); } - EOF - append-lfs-flags - $(tc-getCC) ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} "${T}"/fallocate.${ABI}.c -o /dev/null >/dev/null 2>&1 \ - || export ac_cv_func_fallocate=no - rm -f "${T}"/fallocate.${ABI}.c -} - -multilib_src_configure() { - lfs_fallocate_test - # The scanf test in a run-time test which fails while cross-compiling. - # Blindly assume a POSIX setup since we require libmount, and libmount - # itself fails when the scanf test fails. #531856 - tc-is-cross-compiler && export scanf_cv_alloc_modifier=ms - export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486 - export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam) #545042 - - local myeconfargs=( - --disable-chfn-chsh - --disable-login - --disable-nologin - --disable-reset - --disable-su - --docdir='${datarootdir}'/doc/${PF} - --enable-agetty - --enable-bash-completion - --enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" - --enable-line - --enable-partx - --enable-raw - --enable-rename - --enable-schedutils - --with-bashcompletiondir="$(get_bashcompdir)" - --with-systemdsystemunitdir=$(multilib_native_usex systemd "$(systemd_get_unitdir)" "no") - $(multilib_native_use_enable caps setpriv) - $(multilib_native_use_enable cramfs) - $(multilib_native_use_enable fdformat) - $(multilib_native_use_enable nls) - $(multilib_native_use_enable suid makeinstall-chown) - $(multilib_native_use_enable suid makeinstall-setuid) - $(multilib_native_use_enable tty-helpers mesg) - $(multilib_native_use_enable tty-helpers wall) - $(multilib_native_use_enable tty-helpers write) - $(multilib_native_use_with python) - $(multilib_native_use_with readline) - $(multilib_native_use_with slang) - $(multilib_native_use_with systemd) - $(multilib_native_use_with udev) - $(multilib_native_usex ncurses "$(use_with unicode ncursesw)" '--without-ncursesw') - $(multilib_native_usex ncurses "$(use_with !unicode ncurses)" '--without-ncurses') - $(tc-has-tls || echo --disable-tls) - $(use_enable unicode widechar) - $(use_enable kill) - $(use_enable static-libs static) - $(use_with selinux) - $(usex ncurses '' '--without-tinfo') - ) - ECONF_SOURCE=${S} \ - econf "${myeconfargs[@]}" -} - -multilib_src_compile() { - if multilib_is_native_abi; then - default - else - # build libraries only - emake -f Makefile -f - mylibs \ - <<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)' - fi -} - -multilib_src_test() { - multilib_is_native_abi && emake check -} - -multilib_src_install() { - if multilib_is_native_abi; then - default - else - emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \ - install-pkgconfigDATA install-uuidincHEADERS \ - install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \ - install-nodist_smartcolsincHEADERS install-nodist_fdiskincHEADERS - fi - - if multilib_is_native_abi; then - # need the libs in / - gen_usr_ldscript -a blkid mount smartcols uuid - - use python && python_optimize - fi -} - -multilib_src_install_all() { - dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*} - - # e2fsprogs-libs didnt install .la files, and .pc work fine - prune_libtool_files - - if use pam; then - newpamd "${FILESDIR}/runuser.pamd" runuser - newpamd "${FILESDIR}/runuser-l.pamd" runuser-l - fi -} - -pkg_postinst() { - if ! use tty-helpers; then - elog "The mesg/wall/write tools have been disabled due to USE=-tty-helpers." - fi - - if [[ -z ${REPLACING_VERSIONS} ]]; then - elog "The agetty util now clears the terminal by default. You" - elog "might want to add --noclear to your /etc/inittab lines." - fi -} -- cgit v1.2.3-65-gdbad