diff options
author | 2015-05-08 03:22:04 +0000 | |
---|---|---|
committer | 2015-05-08 03:22:04 +0000 | |
commit | 16c991b07c66b0d950604005a461fef9dc344b8b (patch) | |
tree | 83ee69609ecdd65e41552edfab048726f6ed1407 /sys-apps | |
parent | Straight to stable on alpha, hppa, ia64, ppc, and ppc64, ditto libvncserver-0... (diff) | |
download | gentoo-2-16c991b07c66b0d950604005a461fef9dc344b8b.tar.gz gentoo-2-16c991b07c66b0d950604005a461fef9dc344b8b.tar.bz2 gentoo-2-16c991b07c66b0d950604005a461fef9dc344b8b.zip |
Avoid escape sequences with `echo` #523874 by Alex Xu.
(Portage version: 2.2.18/cvs/Linux x86_64, signed Manifest commit with key D2E96200)
Diffstat (limited to 'sys-apps')
-rw-r--r-- | sys-apps/man/ChangeLog | 14 | ||||
-rw-r--r-- | sys-apps/man/files/man-1.5p-defmanpath-symlinks.patch | 26 | ||||
-rw-r--r-- | sys-apps/man/files/man-1.5p-search-order.patch | 19 | ||||
-rw-r--r-- | sys-apps/man/files/man-1.6b-more-sections.patch | 13 | ||||
-rw-r--r-- | sys-apps/man/files/man-1.6d-fbsd.patch | 15 | ||||
-rw-r--r-- | sys-apps/man/files/man-1.6f-compress.patch | 42 | ||||
-rw-r--r-- | sys-apps/man/files/man-1.6f-xz.patch | 128 | ||||
-rw-r--r-- | sys-apps/man/files/man-1.6g-echo-escape.patch | 15 | ||||
-rw-r--r-- | sys-apps/man/man-1.6f-r4.ebuild | 130 | ||||
-rw-r--r-- | sys-apps/man/man-1.6g-r1.ebuild (renamed from sys-apps/man/man-1.6f-r5.ebuild) | 23 |
10 files changed, 37 insertions, 388 deletions
diff --git a/sys-apps/man/ChangeLog b/sys-apps/man/ChangeLog index dffee8963d4a..564352dbe7bb 100644 --- a/sys-apps/man/ChangeLog +++ b/sys-apps/man/ChangeLog @@ -1,6 +1,16 @@ # ChangeLog for sys-apps/man -# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/man/ChangeLog,v 1.178 2014/11/02 09:47:12 swift Exp $ +# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/man/ChangeLog,v 1.179 2015/05/08 03:22:04 vapier Exp $ + +*man-1.6g-r1 (08 May 2015) + + 08 May 2015; Mike Frysinger <vapier@gentoo.org> + +files/man-1.6g-echo-escape.patch, +man-1.6g-r1.ebuild, + -files/man-1.5p-defmanpath-symlinks.patch, -files/man-1.5p-search-order.patch, + -files/man-1.6b-more-sections.patch, -files/man-1.6d-fbsd.patch, + -files/man-1.6f-compress.patch, -files/man-1.6f-xz.patch, -man-1.6f-r4.ebuild, + -man-1.6f-r5.ebuild: + Avoid escape sequences with `echo` #523874 by Alex Xu. 02 Nov 2014; Sven Vermeulen <swift@gentoo.org> man-1.6g.ebuild: Remove sec-policy/selinux-* dependency from DEPEND but keep in RDEPEND (bug diff --git a/sys-apps/man/files/man-1.5p-defmanpath-symlinks.patch b/sys-apps/man/files/man-1.5p-defmanpath-symlinks.patch deleted file mode 100644 index f8ff4f445903..000000000000 --- a/sys-apps/man/files/man-1.5p-defmanpath-symlinks.patch +++ /dev/null @@ -1,26 +0,0 @@ -makewhatis traverses manpages twice, as default manpath contains two -directories that are symlinked together ... this isn't a real fix, just -a workaround that should be OK for the way Gentoo does things. a real -fix would be to filter out any directories which resolv to the same -directory ... - ---- man-1.5o2/src/makewhatis.sh -+++ man-1.5o2/src/makewhatis.sh -@@ -41,7 +41,7 @@ - # and should be first. - # It is a bug to add /var/cache/man to DEFCATPATH. - dm= --for d in /usr/man /usr/share/man /usr/X11R6/man /usr/local/man -+for d in /usr/local/man /usr/share/man - do - if [ -d $d ]; then - if [ x$dm = x ]; then dm=$d; else dm=$dm:$d; fi -@@ -49,7 +49,7 @@ - done - DEFMANPATH=$dm - dc= --for d in /usr/man/preformat /usr/man /usr/share/man/preformat /usr/share/man -+for d in /usr/local/man /usr/share/man - do - if [ -d $d ]; then - if [ x$dc = x ]; then dc=$d; else dc=$dc:$d; fi diff --git a/sys-apps/man/files/man-1.5p-search-order.patch b/sys-apps/man/files/man-1.5p-search-order.patch deleted file mode 100644 index b6603b6cf032..000000000000 --- a/sys-apps/man/files/man-1.5p-search-order.patch +++ /dev/null @@ -1,19 +0,0 @@ -Fix search order in man.conf so that system installed manpages -will be found first ... - ---- man-1.5p/src/man.conf.in -+++ man-1.5p/src/man.conf.in -@@ -36,11 +36,11 @@ - # - # Every automatically generated MANPATH includes these fields - # --MANPATH /usr/man - MANPATH /usr/share/man --MANPATH /usr/local/man - MANPATH /usr/local/share/man - MANPATH /usr/X11R6/man -+MANPATH /usr/local/man -+MANPATH /usr/man - # - # Uncomment if you want to include one of these by default - # diff --git a/sys-apps/man/files/man-1.6b-more-sections.patch b/sys-apps/man/files/man-1.6b-more-sections.patch deleted file mode 100644 index 9e13c09e8f4e..000000000000 --- a/sys-apps/man/files/man-1.6b-more-sections.patch +++ /dev/null @@ -1,13 +0,0 @@ -[1-8]x are for xorg man-pages - ---- configure -+++ configure -@@ -949,7 +949,7 @@ - - # What sections do we anticipate? - --tmpsections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o" -+tmpsections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o 1x 2x 3x 4x 5x 6x 7x 8x" - - if [ x$default = x ]; then - echo "" diff --git a/sys-apps/man/files/man-1.6d-fbsd.patch b/sys-apps/man/files/man-1.6d-fbsd.patch deleted file mode 100644 index 62189e0e85d0..000000000000 --- a/sys-apps/man/files/man-1.6d-fbsd.patch +++ /dev/null @@ -1,15 +0,0 @@ -Fixes compilation in FreeBSD - -http://bugs.gentoo.org/138123 - ---- man-1.6d/gencat/genlib.c -+++ man-1.6d/gencat/genlib.c -@@ -54,7 +54,7 @@ - #include <unistd.h> - #endif - --#ifndef __linux__ -+#if !defined(__linux__) && !defined(__FreeBSD__) - #include <memory.h> - static int bcopy(src, dst, length) - char *src, *dst; diff --git a/sys-apps/man/files/man-1.6f-compress.patch b/sys-apps/man/files/man-1.6f-compress.patch deleted file mode 100644 index f110acd806da..000000000000 --- a/sys-apps/man/files/man-1.6f-compress.patch +++ /dev/null @@ -1,42 +0,0 @@ ---- configure.orig 2008-12-26 23:59:40.779042906 -0600 -+++ configure 2008-12-27 00:13:15.265256215 -0600 -@@ -1012,20 +1012,25 @@ - if test "$ans" = "true" - then - DO_COMPRESSION=true -- compress= -- for i in lzma bzip2 gzip bzip tzip pack compress freeze yabba -- do -- eval F$i=missing -- for j in $DEFPATH -- do -- if test -f $j/$i -- then -- eval F$i=$j/$i -- if [ x$compress = x ]; then compress=$j/$i; fi -- break -- fi -- done -- done -+ if [ x$COMPRESS != x ]; then -+ compress=$COMPRESS -+ echo $compress -+ else -+ compress= -+ for i in lzma bzip2 gzip bzip tzip pack compress freeze yabba -+ do -+ eval F$i=missing -+ for j in $DEFPATH -+ do -+ if test -f $j/$i -+ then -+ eval F$i=$j/$i -+ if [ x$compress = x ]; then compress=$j/$i; fi -+ break -+ fi -+ done -+ done -+ fi - - if [ x$default = x ]; then - echo "" diff --git a/sys-apps/man/files/man-1.6f-xz.patch b/sys-apps/man/files/man-1.6f-xz.patch deleted file mode 100644 index 7b2ed9085766..000000000000 --- a/sys-apps/man/files/man-1.6f-xz.patch +++ /dev/null @@ -1,128 +0,0 @@ -add support for xz - -http://bugs.gentoo.org/302380 - ---- a/configure -+++ b/configure -@@ -1017,7 +1017,7 @@ - echo $compress - else - compress= -- for i in lzma bzip2 gzip bzip tzip pack compress freeze yabba -+ for i in xz lzma bzip2 gzip bzip tzip pack compress freeze yabba - do - eval F$i=missing - for j in $DEFPATH -@@ -1076,6 +1076,7 @@ - *gzip*) ext=".gz" ;; - *bzip*) ext=".bz" ;; - *tzip*) ext=".tz" ;; -+ *xz*) ext=".xz" ;; - *pack*) ext=".z" ;; - *compress*) ext=".Z" ;; - *freeze*) ext=".F" ;; -@@ -1114,7 +1115,7 @@ - fi - - # unconditionally handle uncompression --UNCOMPRESSORS="unlzma gunzip bzip2 pcat zcat fcat unyabba" -+UNCOMPRESSORS="unxz unlzma gunzip bzip2 pcat zcat fcat unyabba" - for i in $UNCOMPRESSORS - do - eval F$i=missing -@@ -1139,6 +1140,10 @@ - if [ $Funlzma != missing ]; then - unlzma="$Funlzma -c -d" - fi -+unxz=missing -+if [ $Funxz != missing ]; then -+ unxz="$Funxz -c -d" -+fi - pcat="$Fpcat" - zcat="$Fzcat" - fcat="$Ffcat" -@@ -1170,6 +1175,9 @@ - lzma) - echo "Command to use for .lzma files (standard lzma)" - echo $n "[`eval echo \\$$filter`] $c" ;; -+ xz) -+ echo "Command to use for .xz files (standard xz)" -+ echo $n "[`eval echo \\$$filter`] $c" ;; - pcat) - echo "Command to use for .z files (pack/unpack)" - echo $n "[`eval echo \\$$filter`] $c" ;; -@@ -1232,6 +1240,7 @@ - .gz) decompress=$gunzip ;; - .bz2) decompress=$bzip2 ;; - .lzma) decompress=$unlzma ;; -+ .xz) decompress=$unxz ;; - .z) decompress=$pcat ;; - .Z) decompress=$zcat ;; - .F) decompress=$fcat ;; -@@ -1325,6 +1334,7 @@ - s,@gunzip@,$gunzip, - s,@bzip2@,$bzip2, - s,@unlzma@,$unlzma, -+s,@unxz@,$unxz, - s,@unyabba@,$unyabba, - s,@compress@,$compress, - s,@compress_ext@,$compress_ext, ---- a/src/makewhatis.sh -+++ b/src/makewhatis.sh -@@ -230,7 +230,7 @@ - find $mandir/${pages}$i/. -name '*' $findarg0 $findarg -print | $AWK ' - - function readline() { -- if (use_zcat || use_bzcat || use_lzcat) { -+ if (use_zcat || use_bzcat || use_lzcat || use_xzcat) { - result = (pipe_cmd | getline); - if (result < 0) { - print "Pipe error: " pipe_cmd " " ERRNO > "/dev/stderr"; -@@ -245,7 +245,7 @@ - } - - function closeline() { -- if (use_zcat || use_bzcat || use_lzcat) { -+ if (use_zcat || use_bzcat || use_lzcat || use_xzcat) { - return close(pipe_cmd); - } else { - return close(filename); -@@ -266,7 +266,9 @@ - use_bzcat = match(filename,"\\.bz2"); - if(!use_bzcat) - use_lzcat = match(filename,"\\.lzma"); -- if (use_zcat || use_bzcat || use_lzcat ) { -+ if(!use_lzcat) -+ use_xzcat = match(filename,"\\.xz"); -+ if (use_zcat || use_bzcat || use_lzcat || use_xzcat) { - filename_no_gz = substr(filename, 0, RSTART - 1); - } else { - filename_no_gz = filename; -@@ -279,13 +281,15 @@ - actual_section = section; - } - sub(/\..*/, "", progname); -- if (use_zcat || use_bzcat || use_lzcat) { -+ if (use_zcat || use_bzcat || use_lzcat || use_xzcat) { - if (use_zcat) { - pipe_cmd = "zcat \"" filename "\""; - } else if (use_bzcat) { - pipe_cmd = "bzcat \"" filename "\""; -- } else { -+ } else if (use_lzcat) { - pipe_cmd = "lzcat \"" filename "\""; -+ } else { -+ pipe_cmd = "xzcat \"" filename "\""; - } - # try to avoid suspicious stuff - if (filename ~ /[;&|`$(]/) { ---- a/src/man.conf.in -+++ b/src/man.conf.in -@@ -133,6 +133,7 @@ - .gz @gunzip@ - .bz2 @bzip2@ - .lzma @unlzma@ -+.xz @unxz@ - .z @pcat@ - .Z @zcat@ - .F @fcat@ diff --git a/sys-apps/man/files/man-1.6g-echo-escape.patch b/sys-apps/man/files/man-1.6g-echo-escape.patch new file mode 100644 index 000000000000..96e950a51e86 --- /dev/null +++ b/sys-apps/man/files/man-1.6g-echo-escape.patch @@ -0,0 +1,15 @@ +avoid using escape sequences in echo as they're not portable + +https://bugs.gentoo.org/523874 + +--- a/src/man.c ++++ b/src/man.c +@@ -626,7 +626,7 @@ make_roff_command (const char *path, const char *file) { + the current position plus 10 lines. This plus setpl() + gives us a single page that just contains the whole + man page. (William Webber, wew@cs.rmit.edu.au) */ +- strcat(buft, "; echo \".\\\\\\\"\"; echo \".pl \\n(nlu+10\""); ++ strcat(buft, "; echo \".\\\\\\\"\"; echo \".pl \"; echo \"(nlu+10\""); + #if 0 + /* In case this doesnt work for some reason, + michaelkjohnson suggests: I've got a simple diff --git a/sys-apps/man/man-1.6f-r4.ebuild b/sys-apps/man/man-1.6f-r4.ebuild deleted file mode 100644 index ec66c5d1129d..000000000000 --- a/sys-apps/man/man-1.6f-r4.ebuild +++ /dev/null @@ -1,130 +0,0 @@ -# Copyright 1999-2014 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/man/man-1.6f-r4.ebuild,v 1.13 2014/01/16 18:19:15 vapier Exp $ - -EAPI="2" -inherit eutils toolchain-funcs user - -DESCRIPTION="Standard commands to read man pages" -HOMEPAGE="http://primates.ximian.com/~flucifredi/man/" -SRC_URI="http://primates.ximian.com/~flucifredi/man/${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd" -IUSE="lzma nls selinux" - -DEPEND="nls? ( sys-devel/gettext ) - selinux? ( sec-policy/selinux-makewhatis )" -RDEPEND="|| ( >=sys-apps/groff-1.19.2-r1 app-doc/heirloom-doctools ) - !sys-apps/man-db - !app-arch/lzma - lzma? ( app-arch/xz-utils ) - selinux? ( sec-policy/selinux-makewhatis )" - -pkg_setup() { - enewgroup man 15 - enewuser man 13 -1 /usr/share/man man -} - -src_prepare() { - epatch "${FILESDIR}"/man-1.6f-man2html-compression-2.patch - epatch "${FILESDIR}"/man-1.6-cross-compile.patch - epatch "${FILESDIR}"/man-1.5p-search-order.patch - epatch "${FILESDIR}"/man-1.6f-unicode.patch #146315 - epatch "${FILESDIR}"/man-1.5p-defmanpath-symlinks.patch - epatch "${FILESDIR}"/man-1.6b-more-sections.patch - epatch "${FILESDIR}"/man-1.6c-cut-duplicate-manpaths.patch - epatch "${FILESDIR}"/man-1.5m2-apropos.patch - epatch "${FILESDIR}"/man-1.6d-fbsd.patch - epatch "${FILESDIR}"/man-1.6e-headers.patch - epatch "${FILESDIR}"/man-1.6f-so-search-2.patch - epatch "${FILESDIR}"/man-1.6f-compress.patch - epatch "${FILESDIR}"/man-1.6f-parallel-build.patch #207148 #258916 - epatch "${FILESDIR}"/man-1.6f-xz.patch #302380 - # make sure `less` handles escape sequences #287183 - sed -i -e '/^DEFAULTLESSOPT=/s:"$:R":' configure -} - -echoit() { echo "$@" ; "$@" ; } -src_configure() { - strip-linguas $(eval $(grep ^LANGUAGES= configure) ; echo ${LANGUAGES//,/ }) - - unset NLSPATH #175258 - - tc-export CC BUILD_CC - - local mylang= - if use nls ; then - if [[ -z ${LINGUAS} ]] ; then - mylang="all" - else - mylang="${LINGUAS// /,}" - fi - else - mylang="none" - fi - export COMPRESS - if use lzma ; then - COMPRESS=/usr/bin/xz - else - COMPRESS=/bin/bzip2 - fi - echoit \ - ./configure \ - -confdir=/etc \ - +sgid +fhs \ - +lang ${mylang} \ - || die "configure failed" -} - -src_install() { - unset NLSPATH #175258 - - emake PREFIX="${D}" install || die "make install failed" - dosym man /usr/bin/manpath - - dodoc LSM README* TODO - - # makewhatis only adds man-pages from the last 24hrs - exeinto /etc/cron.daily - newexe "${FILESDIR}"/makewhatis.cron makewhatis - - keepdir /var/cache/man - diropts -m0775 -g man - local mansects=$(grep ^MANSECT "${D}"/etc/man.conf | cut -f2-) - for x in ${mansects//:/ } ; do - keepdir /var/cache/man/cat${x} - done -} - -pkg_postinst() { - einfo "Forcing sane permissions onto ${ROOT}var/cache/man (Bug #40322)" - chown -R root:man "${ROOT}"/var/cache/man - chmod -R g+w "${ROOT}"/var/cache/man - [[ -e ${ROOT}/var/cache/man/whatis ]] \ - && chown root:0 "${ROOT}"/var/cache/man/whatis - - echo - - local f files=$(ls "${ROOT}"/etc/cron.{daily,weekly}/makewhatis{,.cron} 2>/dev/null) - for f in ${files} ; do - [[ ${f} == */etc/cron.daily/makewhatis ]] && continue - [[ $(md5sum "${f}") == "8b2016cc778ed4e2570b912c0f420266 "* ]] \ - && rm -f "${f}" - done - files=$(ls "${ROOT}"etc/cron.{daily,weekly}/makewhatis{,.cron} 2>/dev/null) - if [[ ${files/$'\n'} != ${files} ]] ; then - ewarn "You have multiple makewhatis cron files installed." - ewarn "You might want to delete all but one of these:" - ewarn ${files} - fi - - if has_version app-doc/heirloom-doctools; then - ewarn "Please note that the /etc/man.conf file installed will not" - ewarn "work with heirloom's nroff by default (yet)." - ewarn "" - ewarn "Check app-doc/heirloom-doctools elog messages for the proper" - ewarn "configuration." - fi -} diff --git a/sys-apps/man/man-1.6f-r5.ebuild b/sys-apps/man/man-1.6g-r1.ebuild index 248497295ebb..58aad9fac1b1 100644 --- a/sys-apps/man/man-1.6f-r5.ebuild +++ b/sys-apps/man/man-1.6g-r1.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2012 Gentoo Foundation +# Copyright 1999-2015 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/man/man-1.6f-r5.ebuild,v 1.4 2012/12/15 12:53:52 swift Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-apps/man/man-1.6g-r1.ebuild,v 1.1 2015/05/08 03:22:04 vapier Exp $ -EAPI="2" +EAPI="4" inherit eutils toolchain-funcs user @@ -12,14 +12,13 @@ SRC_URI="http://primates.ximian.com/~flucifredi/man/${P}.tar.gz" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd" IUSE="+lzma nls selinux" -DEPEND="nls? ( sys-devel/gettext ) - selinux? ( sec-policy/selinux-makewhatis )" +DEPEND="nls? ( sys-devel/gettext )" RDEPEND="|| ( >=sys-apps/groff-1.19.2-r1 app-doc/heirloom-doctools ) !sys-apps/man-db - !app-arch/lzma + !<app-arch/lzma-4.63 lzma? ( app-arch/xz-utils ) selinux? ( sec-policy/selinux-makewhatis )" @@ -31,19 +30,17 @@ pkg_setup() { src_prepare() { epatch "${FILESDIR}"/man-1.6f-man2html-compression-2.patch epatch "${FILESDIR}"/man-1.6-cross-compile.patch - epatch "${FILESDIR}"/man-1.5p-search-order.patch epatch "${FILESDIR}"/man-1.6f-unicode.patch #146315 - epatch "${FILESDIR}"/man-1.5p-defmanpath-symlinks.patch - epatch "${FILESDIR}"/man-1.6b-more-sections.patch epatch "${FILESDIR}"/man-1.6c-cut-duplicate-manpaths.patch epatch "${FILESDIR}"/man-1.5m2-apropos.patch - epatch "${FILESDIR}"/man-1.6d-fbsd.patch + epatch "${FILESDIR}"/man-1.6g-fbsd.patch #138123 epatch "${FILESDIR}"/man-1.6e-headers.patch epatch "${FILESDIR}"/man-1.6f-so-search-2.patch - epatch "${FILESDIR}"/man-1.6f-compress.patch + epatch "${FILESDIR}"/man-1.6g-compress.patch #205147 epatch "${FILESDIR}"/man-1.6f-parallel-build.patch #207148 #258916 - epatch "${FILESDIR}"/man-1.6f-xz.patch #302380 + epatch "${FILESDIR}"/man-1.6g-xz.patch #302380 epatch "${FILESDIR}"/man-1.6f-makewhatis-compression-cleanup.patch #331979 + epatch "${FILESDIR}"/man-1.6g-echo-escape.patch #523874 # make sure `less` handles escape sequences #287183 sed -i -e '/^DEFAULTLESSOPT=/s:"$:R":' configure } |