public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/man-db/, sys-apps/man-db/files/
@ 2018-02-06 14:56 Lars Wendler
  0 siblings, 0 replies; 11+ messages in thread
From: Lars Wendler @ 2018-02-06 14:56 UTC (permalink / raw
  To: gentoo-commits

commit:     3036a22411fb59d675268b3f945410d20c3c3e6a
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Feb  6 14:56:21 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Feb  6 14:56:35 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3036a224

sys-apps/man-db: Bump to version 2.8.0

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 sys-apps/man-db/Manifest                           |   1 +
 .../files/man-db-2.8.0-libseccomp_automagic.patch  |  45 ++++++++
 sys-apps/man-db/man-db-2.8.0.ebuild                | 128 +++++++++++++++++++++
 3 files changed, 174 insertions(+)

diff --git a/sys-apps/man-db/Manifest b/sys-apps/man-db/Manifest
index 591b7273dd2..05aa8e84537 100644
--- a/sys-apps/man-db/Manifest
+++ b/sys-apps/man-db/Manifest
@@ -1 +1,2 @@
 DIST man-db-2.7.6.1.tar.xz 1541316 BLAKE2B ea3aa7e90ea8af4882bd99d99374cc37d9c0c7f70bb970973eb3f2178aa4323bcdebc7f39f142ec0144dbe55a9f86aba15d9fe281d2662d280b8e6dca9452f24 SHA512 623c5e7f8b7c289908b2c926f8777293b8d39aeceef0d2509d701a8b0bfa81408650f655c8608318221786c751a79ee91124b07993de5298cd7fa6d8bb737301
+DIST man-db-2.8.0.tar.xz 1620344 BLAKE2B abb2879848f4db187d28bb3d8359ecfab0033ea3a5333ebd1a837733de563972d97153f11c08e8669553dc5cddea12ca774117985b32d218a30db407437717f3 SHA512 06f52ecd6e7ced858a32117ea4be3ed5fc3d4428cb810d31b85dd75556e999f5badc6eb81f642b56afe2a697462ccca9fd8cc5ecfbd40f132d5a74f84f316d39

diff --git a/sys-apps/man-db/files/man-db-2.8.0-libseccomp_automagic.patch b/sys-apps/man-db/files/man-db-2.8.0-libseccomp_automagic.patch
new file mode 100644
index 00000000000..333bc5fe295
--- /dev/null
+++ b/sys-apps/man-db/files/man-db-2.8.0-libseccomp_automagic.patch
@@ -0,0 +1,45 @@
+From c693c0d6c41e777def51984035710779697d1989 Mon Sep 17 00:00:00 2001
+From: Lars Wendler <polynomial-c@gentoo.org>
+Date: Tue, 6 Feb 2018 14:41:22 +0100
+Subject: [PATCH] Change libseccomp logic to not be automagic only.
+
+Introduce --with-libseccomp configure option so that users can disable
+seccomp even if libseccomp is available on the system.
+The default is unchanged to before this patch. If no --with(out)-libseccomp
+has been given on command line, the macro looks for presence of libseccomp
+and uses that if found.
+---
+ m4/man-libseccomp.m4 | 19 ++++++++++++++-----
+ 1 file changed, 14 insertions(+), 5 deletions(-)
+
+diff --git a/m4/man-libseccomp.m4 b/m4/man-libseccomp.m4
+index a9377317..17a52f72 100644
+--- a/m4/man-libseccomp.m4
++++ b/m4/man-libseccomp.m4
+@@ -1,9 +1,18 @@
+ # man-libseccomp.m4 serial 1
+ dnl MAN_LIBSECCOMP
+-dnl Check for the libseccomp library.
++dnl Add a --with-libseccomp option.
+ AC_DEFUN([MAN_LIBSECCOMP],
+-[PKG_CHECK_MODULES([libseccomp], [libseccomp],
+-	[AC_DEFINE([HAVE_LIBSECCOMP], [1],
+-		[Define to 1 if you have the `libseccomp' library.])],
+-	[:])
++	[AC_ARG_WITH([libseccomp],
++		[AS_HELP_STRING([--with-libseccomp],
++			       [use libseccomp to do most subprocessing])],
++		[],
++		[with_libseccomp=check])
++	if test "x$with_libseccomp" != "xno"; then
++		PKG_CHECK_MODULES([libseccomp], [libseccomp],
++			[AC_DEFINE([HAVE_LIBSECCOMP], [1],
++				[Define to 1 if you have the `libseccomp' library.])],
++			[if test "xyes" = "x$with_libseccomp"; then
++				AC_MSG_ERROR(--with-libseccomp given but cannot find libseccomp)
++			 fi])
++	fi
+ ]) # MAN_LIBSECCOMP
+-- 
+2.16.1
+

diff --git a/sys-apps/man-db/man-db-2.8.0.ebuild b/sys-apps/man-db/man-db-2.8.0.ebuild
new file mode 100644
index 00000000000..10c1e80763d
--- /dev/null
+++ b/sys-apps/man-db/man-db-2.8.0.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools ltprune user versionator
+
+DESCRIPTION="a man replacement that utilizes berkdb instead of flat files"
+HOMEPAGE="http://www.nongnu.org/man-db/"
+SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
+IUSE="berkdb +gdbm +manpager nls selinux static-libs zlib"
+
+CDEPEND="
+	!sys-apps/man
+	>=dev-libs/libpipeline-1.5.0
+	sys-apps/groff
+	berkdb? ( sys-libs/db:= )
+	gdbm? ( sys-libs/gdbm:= )
+	!berkdb? ( !gdbm? ( sys-libs/gdbm:= ) )
+	zlib? ( sys-libs/zlib )
+"
+DEPEND="
+	${CDEPEND}
+	app-arch/xz-utils
+	virtual/pkgconfig
+	nls? (
+		>=app-text/po4a-0.45
+		sys-devel/gettext
+	)
+"
+RDEPEND="
+	${CDEPEND}
+	selinux? ( sec-policy/selinux-mandb )
+"
+PDEPEND="manpager? ( app-text/manpager )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-2.8.0-libseccomp_automagic.patch"
+)
+
+pkg_setup() {
+	# Create user now as Makefile in src_install does setuid/chown
+	enewgroup man 15
+	enewuser man 13 -1 /usr/share/man man
+
+	if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150
+		ewarn "Defaulting to USE=gdbm due to ambiguous berkdb/gdbm USE flag settings"
+	fi
+}
+
+src_prepare() {
+	default
+	eautoreconf
+}
+
+src_configure() {
+	export ac_cv_lib_z_gzopen=$(usex zlib)
+	local myeconfargs=(
+		--docdir='$(datarootdir)'/doc/${PF}
+		--with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
+		--enable-setuid
+		--enable-cache-owner=man
+		--with-sections="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"
+		$(use_enable nls)
+		$(use_enable static-libs static)
+		# fails to show any man page with this error message:
+		# man: /usr/libexec/man-db/manconv -f UTF-8:ISO-8859-1 -t UTF-8//IGNORE: Bad system call
+		# This will be made optional or hard enabled once the issue has been resolved.
+		--without-libseccomp
+		--with-db=$(usex gdbm gdbm $(usex berkdb db gdbm))
+	)
+	econf "${myeconfargs[@]}"
+
+	# Disable color output from groff so that the manpager can add it. #184604
+	sed -i \
+		-e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
+		src/man_db.conf || die
+}
+
+src_install() {
+	default
+	dodoc docs/{HACKING,TODO}
+	prune_libtool_files
+
+	exeinto /etc/cron.daily
+	newexe "${FILESDIR}"/man-db.cron man-db #289884
+}
+
+pkg_preinst() {
+	local cachedir="${EROOT}var/cache/man"
+	# If the system was already exploited, and the attacker is hiding in the
+	# cachedir of the old man-db, let's wipe them out.
+	# see bug  #602588 comment 18
+	local _replacing_version=
+	local _setgid_vuln=0
+	for _replacing_version in ${REPLACING_VERSIONS}; do
+		if version_is_at_least '2.7.6.1-r2' "${_replacing_version}"; then
+			debug-print "Skipping security bug #602588 ... existing installation (${_replacing_version}) should not be affected!"
+		else
+			_setgid_vuln=1
+			debug-print "Applying cleanup for security bug #602588"
+		fi
+	done
+	[[ ${_setgid_vuln} -eq 1 ]] && rm -rf "${cachedir}"
+
+	# Fall back to recreating the cachedir
+	if [[ ! -d ${cachedir} ]] ; then
+		mkdir -p "${cachedir}" || die
+		chown man:man "${cachedir}" || die
+	fi
+
+	# Update the whatis cache
+	if [[ -f ${cachedir}/whatis ]] ; then
+		einfo "Cleaning ${cachedir} from sys-apps/man"
+		find "${cachedir}" -type f '!' '(' -name index.bt -o -name index.db ')' -delete
+	fi
+}
+
+pkg_postinst() {
+	if [[ $(get_version_component_range 2 ${REPLACING_VERSIONS}) -lt 7 ]] ; then
+		einfo "Rebuilding man-db from scratch with new database format!"
+		mandb --quiet --create
+	fi
+}


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/man-db/, sys-apps/man-db/files/
@ 2018-02-28 21:02 Lars Wendler
  0 siblings, 0 replies; 11+ messages in thread
From: Lars Wendler @ 2018-02-28 21:02 UTC (permalink / raw
  To: gentoo-commits

commit:     a5c681ca67e58d09aab9b5fa042962e52da24dbc
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 28 21:02:24 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Feb 28 21:02:24 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a5c681ca

sys-apps/man-db: Removed old.

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 sys-apps/man-db/Manifest                           |   1 -
 .../files/man-db-2.8.0-libseccomp_automagic.patch  | 110 -------------------
 sys-apps/man-db/man-db-2.8.0-r2.ebuild             | 120 ---------------------
 3 files changed, 231 deletions(-)

diff --git a/sys-apps/man-db/Manifest b/sys-apps/man-db/Manifest
index 6cb874011fe..b15f0dbb4d8 100644
--- a/sys-apps/man-db/Manifest
+++ b/sys-apps/man-db/Manifest
@@ -1,4 +1,3 @@
 DIST man-db-2.7.6.1.tar.xz 1541316 BLAKE2B ea3aa7e90ea8af4882bd99d99374cc37d9c0c7f70bb970973eb3f2178aa4323bcdebc7f39f142ec0144dbe55a9f86aba15d9fe281d2662d280b8e6dca9452f24 SHA512 623c5e7f8b7c289908b2c926f8777293b8d39aeceef0d2509d701a8b0bfa81408650f655c8608318221786c751a79ee91124b07993de5298cd7fa6d8bb737301
-DIST man-db-2.8.0.tar.xz 1620344 BLAKE2B abb2879848f4db187d28bb3d8359ecfab0033ea3a5333ebd1a837733de563972d97153f11c08e8669553dc5cddea12ca774117985b32d218a30db407437717f3 SHA512 06f52ecd6e7ced858a32117ea4be3ed5fc3d4428cb810d31b85dd75556e999f5badc6eb81f642b56afe2a697462ccca9fd8cc5ecfbd40f132d5a74f84f316d39
 DIST man-db-2.8.1.tar.xz 1621664 BLAKE2B 94496c1ca912e7cea2c98be8443d5b13dd685c5af86e9996b625fae44384f4cacf24a4196d77a080da10baa385b5e63d8b090c2bfcc492f2a41757d7a3840468 SHA512 82e75df32eb8575f47c3f36b5f2bbc827776747abfa39af589802e6566636c0771df0ee3197cb2bec3318c3055ff4e9d04c7da13b3bc6ea8a1ea1b1340554ef0
 DIST man-db-2.8.2.tar.xz 1622504 BLAKE2B fc551838488323914319cde2b4d0d724be63741a1e0ed816a67a26da89dfa84a7faf99a9aba20e0e254129aa0f26505b76f4ba6be6786281c4d105e96829e9ee SHA512 ffd6c3ba605da419c819dcad10edf713242074a035ce405f4c97dbbd2a7e9b253f82efae1022d08d9f04591014e752ff38a3f8727e5a5cf60d33a9167cc2d8fc

diff --git a/sys-apps/man-db/files/man-db-2.8.0-libseccomp_automagic.patch b/sys-apps/man-db/files/man-db-2.8.0-libseccomp_automagic.patch
deleted file mode 100644
index cf9c1257317..00000000000
--- a/sys-apps/man-db/files/man-db-2.8.0-libseccomp_automagic.patch
+++ /dev/null
@@ -1,110 +0,0 @@
-From 3d4ab15670079aa8e898f80a650b3be941230486 Mon Sep 17 00:00:00 2001
-From: Lars Wendler <polynomial-c@gentoo.org>
-Date: Tue, 6 Feb 2018 15:30:21 +0100
-Subject: [PATCH] Change libseccomp logic to not be automagic only
-
-Introduce --without-libseccomp configure option so that users can
-disable seccomp even if libseccomp is available on the system.
-
-The default is unchanged from before this patch.  If no
---with(out)-libseccomp has been given on the command line, the macro
-looks for presence of libseccomp and uses that if found.
-
-* m4/man-libseccomp.m4: Guard pkg-config test with a command-line
-option.
----
-
-diff --git a/configure b/configure
-index 3f949306..8eaca64e 100755
---- a/configure
-+++ b/configure
-@@ -1718,6 +1718,7 @@ with_included_regex
- enable_nls
- with_libiconv_prefix
- with_libintl_prefix
-+with_libseccomp
- '
-       ac_precious_vars='build_alias
- host_alias
-@@ -2459,6 +2460,7 @@ Optional Packages:
-   --without-libiconv-prefix     don't search for libiconv in includedir and libdir
-   --with-libintl-prefix[=DIR]  search for libintl in DIR/include and DIR/lib
-   --without-libintl-prefix     don't search for libintl in includedir and libdir
-+  --without-libseccomp    do not confine subprocesses using seccomp
- 
- Some influential environment variables:
-   CC          C compiler command
-@@ -47295,6 +47297,15 @@ fi
- 
- # Check for libseccomp library.
- 
-+# Check whether --with-libseccomp was given.
-+if test "${with_libseccomp+set}" = set; then :
-+  withval=$with_libseccomp;
-+else
-+  with_libseccomp=check
-+fi
-+
-+	if test "x$with_libseccomp" != "xno"; then
-+
- pkg_failed=no
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libseccomp" >&5
- $as_echo_n "checking for libseccomp... " >&6; }
-@@ -47353,11 +47364,15 @@ fi
- 	# Put the nasty error message in config.log where it belongs
- 	echo "$libseccomp_PKG_ERRORS" >&5
- 
--	:
-+	if test "x$with_libseccomp" = "xyes"; then
-+				as_fn_error $? "--with-libseccomp given but cannot find libseccomp" "$LINENO" 5
-+			 fi
- elif test $pkg_failed = untried; then
-      	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
- $as_echo "no" >&6; }
--	:
-+	if test "x$with_libseccomp" = "xyes"; then
-+				as_fn_error $? "--with-libseccomp given but cannot find libseccomp" "$LINENO" 5
-+			 fi
- else
- 	libseccomp_CFLAGS=$pkg_cv_libseccomp_CFLAGS
- 	libseccomp_LIBS=$pkg_cv_libseccomp_LIBS
-@@ -47367,6 +47382,7 @@ $as_echo "yes" >&6; }
- $as_echo "#define HAVE_LIBSECCOMP 1" >>confdefs.h
- 
- fi
-+	fi
- 
- 
- { $as_echo "$as_me:${as_lineno-$LINENO}: default CC = \"$CC\"" >&5
-diff --git a/m4/man-libseccomp.m4 b/m4/man-libseccomp.m4
-index a9377317..c90e3aa4 100644
---- a/m4/man-libseccomp.m4
-+++ b/m4/man-libseccomp.m4
-@@ -1,9 +1,18 @@
--# man-libseccomp.m4 serial 1
-+# man-libseccomp.m4 serial 2
- dnl MAN_LIBSECCOMP
--dnl Check for the libseccomp library.
-+dnl Add a --without-libseccomp option; check for the libseccomp library.
- AC_DEFUN([MAN_LIBSECCOMP],
--[PKG_CHECK_MODULES([libseccomp], [libseccomp],
--	[AC_DEFINE([HAVE_LIBSECCOMP], [1],
--		[Define to 1 if you have the `libseccomp' library.])],
--	[:])
-+	[AC_ARG_WITH([libseccomp],
-+		[AS_HELP_STRING([--without-libseccomp],
-+				[do not confine subprocesses using seccomp])],
-+		[],
-+		[with_libseccomp=check])
-+	if test "x$with_libseccomp" != "xno"; then
-+		PKG_CHECK_MODULES([libseccomp], [libseccomp],
-+			[AC_DEFINE([HAVE_LIBSECCOMP], [1],
-+				[Define to 1 if you have the `libseccomp' library.])],
-+			[if test "x$with_libseccomp" = "xyes"; then
-+				AC_MSG_ERROR([--with-libseccomp given but cannot find libseccomp])
-+			 fi])
-+	fi
- ]) # MAN_LIBSECCOMP
--- 
-2.16.1
-

diff --git a/sys-apps/man-db/man-db-2.8.0-r2.ebuild b/sys-apps/man-db/man-db-2.8.0-r2.ebuild
deleted file mode 100644
index cb7cf8d1c4e..00000000000
--- a/sys-apps/man-db/man-db-2.8.0-r2.ebuild
+++ /dev/null
@@ -1,120 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit ltprune user versionator
-
-DESCRIPTION="a man replacement that utilizes berkdb instead of flat files"
-HOMEPAGE="http://www.nongnu.org/man-db/"
-SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-IUSE="berkdb +gdbm +manpager nls selinux static-libs zlib"
-
-CDEPEND="
-	!sys-apps/man
-	>=dev-libs/libpipeline-1.5.0
-	sys-apps/groff
-	berkdb? ( sys-libs/db:= )
-	gdbm? ( sys-libs/gdbm:= )
-	!berkdb? ( !gdbm? ( sys-libs/gdbm:= ) )
-	zlib? ( sys-libs/zlib )
-"
-DEPEND="
-	${CDEPEND}
-	app-arch/xz-utils
-	virtual/pkgconfig
-	nls? (
-		>=app-text/po4a-0.45
-		sys-devel/gettext
-	)
-"
-RDEPEND="
-	${CDEPEND}
-	selinux? ( sec-policy/selinux-mandb )
-"
-PDEPEND="manpager? ( app-text/manpager )"
-
-PATCHES=(
-	"${FILESDIR}/${P}-libseccomp_automagic.patch"
-)
-
-pkg_setup() {
-	# Create user now as Makefile in src_install does setuid/chown
-	enewgroup man 15
-	enewuser man 13 -1 /usr/share/man man
-
-	if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150
-		ewarn "Defaulting to USE=gdbm due to ambiguous berkdb/gdbm USE flag settings"
-	fi
-}
-
-src_configure() {
-	export ac_cv_lib_z_gzopen=$(usex zlib)
-	local myeconfargs=(
-		--docdir='$(datarootdir)'/doc/${PF}
-		--with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
-		--enable-setuid
-		--enable-cache-owner=man
-		--with-sections="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"
-		$(use_enable nls)
-		$(use_enable static-libs static)
-		--without-libseccomp
-		--with-db=$(usex gdbm gdbm $(usex berkdb db gdbm))
-	)
-	econf "${myeconfargs[@]}"
-
-	# Disable color output from groff so that the manpager can add it. #184604
-	sed -i \
-		-e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
-		src/man_db.conf || die
-}
-
-src_install() {
-	default
-	dodoc docs/{HACKING,TODO}
-	prune_libtool_files
-
-	exeinto /etc/cron.daily
-	newexe "${FILESDIR}"/man-db.cron man-db #289884
-}
-
-pkg_preinst() {
-	local cachedir="${EROOT}var/cache/man"
-	# If the system was already exploited, and the attacker is hiding in the
-	# cachedir of the old man-db, let's wipe them out.
-	# see bug  #602588 comment 18
-	local _replacing_version=
-	local _setgid_vuln=0
-	for _replacing_version in ${REPLACING_VERSIONS}; do
-		if version_is_at_least '2.7.6.1-r2' "${_replacing_version}"; then
-			debug-print "Skipping security bug #602588 ... existing installation (${_replacing_version}) should not be affected!"
-		else
-			_setgid_vuln=1
-			debug-print "Applying cleanup for security bug #602588"
-		fi
-	done
-	[[ ${_setgid_vuln} -eq 1 ]] && rm -rf "${cachedir}"
-
-	# Fall back to recreating the cachedir
-	if [[ ! -d ${cachedir} ]] ; then
-		mkdir -p "${cachedir}" || die
-		chown man:man "${cachedir}" || die
-	fi
-
-	# Update the whatis cache
-	if [[ -f ${cachedir}/whatis ]] ; then
-		einfo "Cleaning ${cachedir} from sys-apps/man"
-		find "${cachedir}" -type f '!' '(' -name index.bt -o -name index.db ')' -delete
-	fi
-}
-
-pkg_postinst() {
-	if [[ $(get_version_component_range 2 ${REPLACING_VERSIONS}) -lt 7 ]] ; then
-		einfo "Rebuilding man-db from scratch with new database format!"
-		mandb --quiet --create
-	fi
-}


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/man-db/, sys-apps/man-db/files/
@ 2018-09-10 10:24 Thomas Deutschmann
  0 siblings, 0 replies; 11+ messages in thread
From: Thomas Deutschmann @ 2018-09-10 10:24 UTC (permalink / raw
  To: gentoo-commits

commit:     ed234fb21a833b47f3541c3385000bc045fa27d3
Author:     Conrad Kostecki <conrad <AT> kostecki <DOT> com>
AuthorDate: Mon Sep 10 10:24:03 2018 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Mon Sep 10 10:24:04 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ed234fb2

sys-apps/man-db: fix build with berkdb

Closes: https://github.com/gentoo/gentoo/pull/9546
Closes: https://bugs.gentoo.org/662588
Package-Manager: Portage-2.3.45, Repoman-2.3.10

 .../files/man-db-2.8.4-berkdb_build_fix.patch      | 27 ++++++++++++++++++++++
 sys-apps/man-db/man-db-2.8.4.ebuild                |  2 ++
 2 files changed, 29 insertions(+)

diff --git a/sys-apps/man-db/files/man-db-2.8.4-berkdb_build_fix.patch b/sys-apps/man-db/files/man-db-2.8.4-berkdb_build_fix.patch
new file mode 100644
index 00000000000..30052f26815
--- /dev/null
+++ b/sys-apps/man-db/files/man-db-2.8.4-berkdb_build_fix.patch
@@ -0,0 +1,27 @@
+From dd0f554b5c1d563f9ee625c19c8745d8982e00e3 Mon Sep 17 00:00:00 2001
+From: Colin Watson <cjwatson@debian.org>
+Date: Thu, 2 Aug 2018 10:34:00 +0100
+Subject: Fix build with Berkeley DB
+
+Fixes Savannah bug #54425.
+
+* libdb/db_btree.c: Include <stdlib.h> for free.
+---
+ libdb/db_btree.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/libdb/db_btree.c b/libdb/db_btree.c
+index fdd9b15..4469bf6 100644
+--- a/libdb/db_btree.c
++++ b/libdb/db_btree.c
+@@ -28,6 +28,7 @@
+ /* below this line are routines only useful for the BTREE interface */
+ #ifdef BTREE
+ 
++#include <stdlib.h>
+ #include <stdio.h>
+ #include <errno.h>
+ #include <string.h>
+-- 
+cgit v1.0-41-gc330
+

diff --git a/sys-apps/man-db/man-db-2.8.4.ebuild b/sys-apps/man-db/man-db-2.8.4.ebuild
index 670cbc0de53..42bdf6a7f67 100644
--- a/sys-apps/man-db/man-db-2.8.4.ebuild
+++ b/sys-apps/man-db/man-db-2.8.4.ebuild
@@ -44,6 +44,8 @@ RDEPEND="
 "
 PDEPEND="manpager? ( app-text/manpager )"
 
+PATCHES=( "${FILESDIR}"/${P}-berkdb_build_fix.patch )
+
 pkg_setup() {
 	# Create user now as Makefile in src_install does setuid/chown
 	enewgroup man 15


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/man-db/, sys-apps/man-db/files/
@ 2019-01-06 15:11 Lars Wendler
  0 siblings, 0 replies; 11+ messages in thread
From: Lars Wendler @ 2019-01-06 15:11 UTC (permalink / raw
  To: gentoo-commits

commit:     afd4c6fd6980ca985387496bfe16588e9a387d1c
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sun Jan  6 15:04:51 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sun Jan  6 15:11:40 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=afd4c6fd

sys-apps/man-db: Bump to version 2.8.5

Attempt to fix root privilege escalation.

Bug: https://bugs.gentoo.org/662438
Closes: https://bugs.gentoo.org/666404
Package-Manager: Portage-2.3.54, Repoman-2.3.12
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 sys-apps/man-db/Manifest             |   1 +
 sys-apps/man-db/files/man-db.cron-r1 |  11 ++++
 sys-apps/man-db/man-db-2.8.5.ebuild  | 121 +++++++++++++++++++++++++++++++++++
 3 files changed, 133 insertions(+)

diff --git a/sys-apps/man-db/Manifest b/sys-apps/man-db/Manifest
index 0b3bc1785ef..e4cc0f176a5 100644
--- a/sys-apps/man-db/Manifest
+++ b/sys-apps/man-db/Manifest
@@ -1,3 +1,4 @@
 DIST man-db-2.7.6.1.tar.xz 1541316 BLAKE2B ea3aa7e90ea8af4882bd99d99374cc37d9c0c7f70bb970973eb3f2178aa4323bcdebc7f39f142ec0144dbe55a9f86aba15d9fe281d2662d280b8e6dca9452f24 SHA512 623c5e7f8b7c289908b2c926f8777293b8d39aeceef0d2509d701a8b0bfa81408650f655c8608318221786c751a79ee91124b07993de5298cd7fa6d8bb737301
 DIST man-db-2.8.3.tar.xz 1624280 BLAKE2B 6158608a5a6ecd361391a17642a4bbc9275a8a3105a39d6f6c3971aceb275cfb16670c51dfa8f1d7fc0136fc1b5e96e39c88e8c1d91e9a47d7a1351d16623a93 SHA512 35d5dda7a2bda94978d10770d24d4c78b3c62c71a68cfeb400df61b0df289ed17aa8aa223d4ae3ffa094d76df8d9172b878230fd7b0397ce7728b9c8ac0b1745
 DIST man-db-2.8.4.tar.xz 1779488 BLAKE2B c5f9b06c4b24e046e4b8fbcf4f43015133d18d875edd79f0aad992d884e83fc28a8c3b7d82ded187293d858dfadae48eb088722c3ffc91eec64b71cdf46750be SHA512 3cc160a5a8a0a4e918f6f6546582d1e5fe9851a13c5bd8dc94e3fcbf4ec28cb3cd1524b1ae30722931c84981fa8ca9ac64c9c4d9544c2d0bea80ac9f39cb5e66
+DIST man-db-2.8.5.tar.xz 1787244 BLAKE2B b908a6fb0187d42f8d1f842063e0afdf1e052244ea727f0aaaf4d658bb8954a216c0555df5511b27246fd12c2a388c44dcfccf243449d25d6e741c5c3466d3be SHA512 8d1524c3b6459c9ac02d969149c18c198cb171bcd6acc493e863a466c01309958ee9f5ac52df4d7d27da29d35cb7c64132732f5b969181ab336500df2e6dad69

diff --git a/sys-apps/man-db/files/man-db.cron-r1 b/sys-apps/man-db/files/man-db.cron-r1
new file mode 100644
index 00000000000..7f7932360cb
--- /dev/null
+++ b/sys-apps/man-db/files/man-db.cron-r1
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+# Use same perms/settings as the ebuild.
+cachedir="/var/cache/man"
+if [ ! -d "${cachedir}" ]; then
+	mkdir -p "${cachedir}"
+	chown man:man "${cachedir}"
+	chmod 0755 "${cachedir}"
+fi
+
+exec su man -s /bin/sh -c 'nice mandb --quiet' 2>/dev/null

diff --git a/sys-apps/man-db/man-db-2.8.5.ebuild b/sys-apps/man-db/man-db-2.8.5.ebuild
new file mode 100644
index 00000000000..c6db5d3398e
--- /dev/null
+++ b/sys-apps/man-db/man-db-2.8.5.ebuild
@@ -0,0 +1,121 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit user eapi7-ver
+
+DESCRIPTION="a man replacement that utilizes berkdb instead of flat files"
+HOMEPAGE="http://www.nongnu.org/man-db/"
+if [[ "${PV}" = 9999* ]] ; then
+	inherit git-r3
+	EGIT_REPO_URI="https://git.savannah.gnu.org/git/man-db.git"
+else
+	SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="berkdb +gdbm +manpager nls +seccomp selinux static-libs zlib"
+
+CDEPEND="
+	!sys-apps/man
+	>=dev-libs/libpipeline-1.5.0
+	sys-apps/groff
+	berkdb? ( sys-libs/db:= )
+	gdbm? ( sys-libs/gdbm:= )
+	!berkdb? ( !gdbm? ( sys-libs/gdbm:= ) )
+	seccomp? ( sys-libs/libseccomp )
+	zlib? ( sys-libs/zlib )
+"
+DEPEND="
+	${CDEPEND}
+	app-arch/xz-utils
+	virtual/pkgconfig
+	nls? (
+		>=app-text/po4a-0.45
+		sys-devel/gettext
+	)
+"
+RDEPEND="
+	${CDEPEND}
+	selinux? ( sec-policy/selinux-mandb )
+"
+PDEPEND="manpager? ( app-text/manpager )"
+
+pkg_setup() {
+	# Create user now as Makefile in src_install does setuid/chown
+	enewgroup man 15
+	enewuser man 13 -1 /usr/share/man man
+
+	if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150
+		ewarn "Defaulting to USE=gdbm due to ambiguous berkdb/gdbm USE flag settings"
+	fi
+}
+
+src_configure() {
+	export ac_cv_lib_z_gzopen=$(usex zlib)
+	local myeconfargs=(
+		--with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
+		--disable-setuid #662438
+		--enable-cache-owner=man
+		--with-sections="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"
+		$(use_enable nls)
+		$(use_enable static-libs static)
+		$(use_with seccomp libseccomp)
+		--with-db=$(usex gdbm gdbm $(usex berkdb db gdbm))
+	)
+	econf "${myeconfargs[@]}"
+
+	# Disable color output from groff so that the manpager can add it. #184604
+	sed -i \
+		-e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
+		src/man_db.conf || die
+}
+
+src_install() {
+	default
+	dodoc docs/{HACKING,TODO}
+	find "${ED}" -name "*.la" -delete || die
+
+	exeinto /etc/cron.daily
+	newexe "${FILESDIR}"/man-db.cron-r1 man-db #289884
+}
+
+pkg_preinst() {
+	local cachedir="${EROOT}var/cache/man"
+	# If the system was already exploited, and the attacker is hiding in the
+	# cachedir of the old man-db, let's wipe them out.
+	# see bug  #602588 comment 18
+	local _replacing_version=
+	local _setgid_vuln=0
+	for _replacing_version in ${REPLACING_VERSIONS}; do
+		if version_is_at_least '2.7.6.1-r2' "${_replacing_version}"; then
+			debug-print "Skipping security bug #602588 ... existing installation (${_replacing_version}) should not be affected!"
+		else
+			_setgid_vuln=1
+			debug-print "Applying cleanup for security bug #602588"
+		fi
+	done
+	[[ ${_setgid_vuln} -eq 1 ]] && rm -rf "${cachedir}"
+
+	# Fall back to recreating the cachedir
+	if [[ ! -d ${cachedir} ]] ; then
+		mkdir -p "${cachedir}" || die
+		chown man:man "${cachedir}" || die
+	fi
+
+	# Update the whatis cache
+	if [[ -f ${cachedir}/whatis ]] ; then
+		einfo "Cleaning ${cachedir} from sys-apps/man"
+		find "${cachedir}" -type f '!' '(' -name index.bt -o -name index.db ')' -delete
+	fi
+}
+
+pkg_postinst() {
+	if [[ $(ver_cut 2 ${REPLACING_VERSIONS}) -lt 7 ]] ; then
+		einfo "Rebuilding man-db from scratch with new database format!"
+		su man -s /bin/sh -c 'mandb --quiet --create' 2>/dev/null
+	fi
+}


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/man-db/, sys-apps/man-db/files/
@ 2019-08-03 19:37 Lars Wendler
  0 siblings, 0 replies; 11+ messages in thread
From: Lars Wendler @ 2019-08-03 19:37 UTC (permalink / raw
  To: gentoo-commits

commit:     5e5e5187d865b419f7b4f6c6981844416df9ac77
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sat Aug  3 19:36:51 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sat Aug  3 19:37:08 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5e5e5187

sys-apps/man-db: Removed old.

Package-Manager: Portage-2.3.70, Repoman-2.3.16
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 sys-apps/man-db/Manifest                           |   1 -
 .../files/man-db-2.8.4-berkdb_build_fix.patch      |  27 -----
 sys-apps/man-db/man-db-2.8.4.ebuild                | 124 ---------------------
 3 files changed, 152 deletions(-)

diff --git a/sys-apps/man-db/Manifest b/sys-apps/man-db/Manifest
index 53c5fc6b5f7..da0a1bd8217 100644
--- a/sys-apps/man-db/Manifest
+++ b/sys-apps/man-db/Manifest
@@ -1,4 +1,3 @@
 DIST man-db-2.7.6.1.tar.xz 1541316 BLAKE2B ea3aa7e90ea8af4882bd99d99374cc37d9c0c7f70bb970973eb3f2178aa4323bcdebc7f39f142ec0144dbe55a9f86aba15d9fe281d2662d280b8e6dca9452f24 SHA512 623c5e7f8b7c289908b2c926f8777293b8d39aeceef0d2509d701a8b0bfa81408650f655c8608318221786c751a79ee91124b07993de5298cd7fa6d8bb737301
-DIST man-db-2.8.4.tar.xz 1779488 BLAKE2B c5f9b06c4b24e046e4b8fbcf4f43015133d18d875edd79f0aad992d884e83fc28a8c3b7d82ded187293d858dfadae48eb088722c3ffc91eec64b71cdf46750be SHA512 3cc160a5a8a0a4e918f6f6546582d1e5fe9851a13c5bd8dc94e3fcbf4ec28cb3cd1524b1ae30722931c84981fa8ca9ac64c9c4d9544c2d0bea80ac9f39cb5e66
 DIST man-db-2.8.5.tar.xz 1787244 BLAKE2B b908a6fb0187d42f8d1f842063e0afdf1e052244ea727f0aaaf4d658bb8954a216c0555df5511b27246fd12c2a388c44dcfccf243449d25d6e741c5c3466d3be SHA512 8d1524c3b6459c9ac02d969149c18c198cb171bcd6acc493e863a466c01309958ee9f5ac52df4d7d27da29d35cb7c64132732f5b969181ab336500df2e6dad69
 DIST man-db-2.8.6.tar.xz 1829188 BLAKE2B d6bc48515e81084562577f86312235f8c7c2805ca8a645373c3f157c218aaa69bd491e6d111282e3d17112cf4b9869bad1516cfee29034f50bda71e38a2cd9d6 SHA512 95ceda7aee43030bb7928294414d89535740b4146af887642343096df242e231f99850cd460fa9bb336644b147bcb8c81715619bcee0368b57a22e1de411fc1b

diff --git a/sys-apps/man-db/files/man-db-2.8.4-berkdb_build_fix.patch b/sys-apps/man-db/files/man-db-2.8.4-berkdb_build_fix.patch
deleted file mode 100644
index 30052f26815..00000000000
--- a/sys-apps/man-db/files/man-db-2.8.4-berkdb_build_fix.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From dd0f554b5c1d563f9ee625c19c8745d8982e00e3 Mon Sep 17 00:00:00 2001
-From: Colin Watson <cjwatson@debian.org>
-Date: Thu, 2 Aug 2018 10:34:00 +0100
-Subject: Fix build with Berkeley DB
-
-Fixes Savannah bug #54425.
-
-* libdb/db_btree.c: Include <stdlib.h> for free.
----
- libdb/db_btree.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/libdb/db_btree.c b/libdb/db_btree.c
-index fdd9b15..4469bf6 100644
---- a/libdb/db_btree.c
-+++ b/libdb/db_btree.c
-@@ -28,6 +28,7 @@
- /* below this line are routines only useful for the BTREE interface */
- #ifdef BTREE
- 
-+#include <stdlib.h>
- #include <stdio.h>
- #include <errno.h>
- #include <string.h>
--- 
-cgit v1.0-41-gc330
-

diff --git a/sys-apps/man-db/man-db-2.8.4.ebuild b/sys-apps/man-db/man-db-2.8.4.ebuild
deleted file mode 100644
index 1fc95e763ef..00000000000
--- a/sys-apps/man-db/man-db-2.8.4.ebuild
+++ /dev/null
@@ -1,124 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit ltprune user versionator
-
-DESCRIPTION="a man replacement that utilizes berkdb instead of flat files"
-HOMEPAGE="http://www.nongnu.org/man-db/"
-if [[ "${PV}" = 9999* ]] ; then
-	inherit git-r3
-	EGIT_REPO_URI="https://git.savannah.gnu.org/git/man-db.git"
-else
-	SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
-fi
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="berkdb +gdbm +manpager nls seccomp selinux static-libs zlib"
-
-CDEPEND="
-	!sys-apps/man
-	>=dev-libs/libpipeline-1.5.0
-	sys-apps/groff
-	berkdb? ( sys-libs/db:= )
-	gdbm? ( sys-libs/gdbm:= )
-	!berkdb? ( !gdbm? ( sys-libs/gdbm:= ) )
-	seccomp? ( sys-libs/libseccomp )
-	zlib? ( sys-libs/zlib )
-"
-DEPEND="
-	${CDEPEND}
-	app-arch/xz-utils
-	virtual/pkgconfig
-	nls? (
-		>=app-text/po4a-0.45
-		sys-devel/gettext
-	)
-"
-RDEPEND="
-	${CDEPEND}
-	selinux? ( sec-policy/selinux-mandb )
-"
-PDEPEND="manpager? ( app-text/manpager )"
-
-PATCHES=( "${FILESDIR}"/${P}-berkdb_build_fix.patch )
-
-pkg_setup() {
-	# Create user now as Makefile in src_install does setuid/chown
-	enewgroup man 15
-	enewuser man 13 -1 /usr/share/man man
-
-	if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150
-		ewarn "Defaulting to USE=gdbm due to ambiguous berkdb/gdbm USE flag settings"
-	fi
-}
-
-src_configure() {
-	export ac_cv_lib_z_gzopen=$(usex zlib)
-	local myeconfargs=(
-		--docdir='$(datarootdir)'/doc/${PF}
-		--with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
-		--enable-setuid
-		--enable-cache-owner=man
-		--with-sections="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"
-		$(use_enable nls)
-		$(use_enable static-libs static)
-		$(use_with seccomp libseccomp)
-		--with-db=$(usex gdbm gdbm $(usex berkdb db gdbm))
-	)
-	econf "${myeconfargs[@]}"
-
-	# Disable color output from groff so that the manpager can add it. #184604
-	sed -i \
-		-e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
-		src/man_db.conf || die
-}
-
-src_install() {
-	default
-	dodoc docs/{HACKING,TODO}
-	prune_libtool_files
-
-	exeinto /etc/cron.daily
-	newexe "${FILESDIR}"/man-db.cron man-db #289884
-}
-
-pkg_preinst() {
-	local cachedir="${EROOT}var/cache/man"
-	# If the system was already exploited, and the attacker is hiding in the
-	# cachedir of the old man-db, let's wipe them out.
-	# see bug  #602588 comment 18
-	local _replacing_version=
-	local _setgid_vuln=0
-	for _replacing_version in ${REPLACING_VERSIONS}; do
-		if version_is_at_least '2.7.6.1-r2' "${_replacing_version}"; then
-			debug-print "Skipping security bug #602588 ... existing installation (${_replacing_version}) should not be affected!"
-		else
-			_setgid_vuln=1
-			debug-print "Applying cleanup for security bug #602588"
-		fi
-	done
-	[[ ${_setgid_vuln} -eq 1 ]] && rm -rf "${cachedir}"
-
-	# Fall back to recreating the cachedir
-	if [[ ! -d ${cachedir} ]] ; then
-		mkdir -p "${cachedir}" || die
-		chown man:man "${cachedir}" || die
-	fi
-
-	# Update the whatis cache
-	if [[ -f ${cachedir}/whatis ]] ; then
-		einfo "Cleaning ${cachedir} from sys-apps/man"
-		find "${cachedir}" -type f '!' '(' -name index.bt -o -name index.db ')' -delete
-	fi
-}
-
-pkg_postinst() {
-	if [[ $(get_version_component_range 2 ${REPLACING_VERSIONS}) -lt 7 ]] ; then
-		einfo "Rebuilding man-db from scratch with new database format!"
-		mandb --quiet --create
-	fi
-}


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/man-db/, sys-apps/man-db/files/
@ 2020-08-29 14:04 Thomas Deutschmann
  0 siblings, 0 replies; 11+ messages in thread
From: Thomas Deutschmann @ 2020-08-29 14:04 UTC (permalink / raw
  To: gentoo-commits

commit:     d830027af9804bfd752cbf95e85bfaccda556fc2
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 29 14:03:22 2020 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Sat Aug 29 14:04:35 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d830027a

sys-apps/man-db: skip man-deleted-directory test under sandbox

Closes: https://bugs.gentoo.org/699466
Package-Manager: Portage-3.0.4, Repoman-3.0.1
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 sys-apps/man-db/files/man-db-2.9.3-sandbox-env-tests.patch | 11 +++++++++++
 sys-apps/man-db/man-db-2.9.3.ebuild                        |  2 ++
 sys-apps/man-db/man-db-9999.ebuild                         |  2 ++
 3 files changed, 15 insertions(+)

diff --git a/sys-apps/man-db/files/man-db-2.9.3-sandbox-env-tests.patch b/sys-apps/man-db/files/man-db-2.9.3-sandbox-env-tests.patch
new file mode 100644
index 00000000000..8b2ad26d0e6
--- /dev/null
+++ b/sys-apps/man-db/files/man-db-2.9.3-sandbox-env-tests.patch
@@ -0,0 +1,11 @@
+--- a/src/tests/man-deleted-directory
++++ b/src/tests/man-deleted-directory
+@@ -8,6 +8,8 @@
+ 
+ : ${MAN=man}
+ 
++test -n "$SANDBOX_ACTIVE" && skip "Gentoo: Test known bad under sandbox (#699466)"
++
+ init
+ echo "MANDATORY_MANPATH $abstmpdir/usr/share/man" >"$tmpdir/manpath.config"
+ MANPATH="$abstmpdir/usr/share/man"

diff --git a/sys-apps/man-db/man-db-2.9.3.ebuild b/sys-apps/man-db/man-db-2.9.3.ebuild
index 45fd312f00a..2b2c69c3b82 100644
--- a/sys-apps/man-db/man-db-2.9.3.ebuild
+++ b/sys-apps/man-db/man-db-2.9.3.ebuild
@@ -46,6 +46,8 @@ RDEPEND="
 "
 PDEPEND="manpager? ( app-text/manpager )"
 
+PATCHES=( "${FILESDIR}"/${PN}-2.9.3-sandbox-env-tests.patch )
+
 pkg_setup() {
 	if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150
 		ewarn "Defaulting to USE=gdbm due to ambiguous berkdb/gdbm USE flag settings"

diff --git a/sys-apps/man-db/man-db-9999.ebuild b/sys-apps/man-db/man-db-9999.ebuild
index 8ad0f47c856..25d02ea5f57 100644
--- a/sys-apps/man-db/man-db-9999.ebuild
+++ b/sys-apps/man-db/man-db-9999.ebuild
@@ -46,6 +46,8 @@ RDEPEND="
 "
 PDEPEND="manpager? ( app-text/manpager )"
 
+PATCHES=( "${FILESDIR}"/${PN}-2.9.3-sandbox-env-tests.patch )
+
 pkg_setup() {
 	if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150
 		ewarn "Defaulting to USE=gdbm due to ambiguous berkdb/gdbm USE flag settings"


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/man-db/, sys-apps/man-db/files/
@ 2020-12-23 19:15 Mike Gilbert
  0 siblings, 0 replies; 11+ messages in thread
From: Mike Gilbert @ 2020-12-23 19:15 UTC (permalink / raw
  To: gentoo-commits

commit:     de6efe6b3e28eea299401244e7b506a6f9c22d51
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 23 19:13:51 2020 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Wed Dec 23 19:13:51 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=de6efe6b

sys-apps/man-db: allow clock_gettime64 syscall

Closes: https://bugs.gentoo.org/744712
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 .../files/man-db-2.9.3-clock_gettime64.patch       | 44 ++++++++++++++++++++++
 .../{man-db-9999.ebuild => man-db-2.9.3-r1.ebuild} |  5 ++-
 sys-apps/man-db/man-db-9999.ebuild                 |  4 +-
 3 files changed, 51 insertions(+), 2 deletions(-)

diff --git a/sys-apps/man-db/files/man-db-2.9.3-clock_gettime64.patch b/sys-apps/man-db/files/man-db-2.9.3-clock_gettime64.patch
new file mode 100644
index 00000000000..0da1b2c5b2b
--- /dev/null
+++ b/sys-apps/man-db/files/man-db-2.9.3-clock_gettime64.patch
@@ -0,0 +1,44 @@
+From 7315a9475d8fa37af49e9e7ed11e1534f23ef70b Mon Sep 17 00:00:00 2001
+From: "S. Gilles" <sgilles@umd.edu>
+Date: Wed, 12 Aug 2020 16:40:07 -0400
+Subject: Allow clock_gettime64; return ENOSYS so libcs can engage fallbacks
+
+libcs such as musl expect ENOSYS to be returned (not EPERM) in their
+fallback code, so change the seccomp filter to be more agreeable to
+them.
+
+At the same time, clock_gettime is permitted in the filter, so permit
+clock_gettime64 as well -- it will be needed by 2038 in any case.
+
+* lib/sandbox.c (make_seccomp_filter): Set default action to
+SCMP_ACT_ERRNO (ENOSYS).  Allow clock_gettime64.
+* NEWS: Document this.
+---
+ NEWS          | 9 +++++++++
+ lib/sandbox.c | 3 ++-
+ 2 files changed, 11 insertions(+), 1 deletion(-)
+
+diff --git a/lib/sandbox.c b/lib/sandbox.c
+index 21ec28aa..d934a0f9 100644
+--- a/lib/sandbox.c
++++ b/lib/sandbox.c
+@@ -232,7 +232,7 @@ static scmp_filter_ctx make_seccomp_filter (int permissive)
+ 		;
+ 
+ 	debug ("initialising seccomp filter (permissive: %d)\n", permissive);
+-	ctx = seccomp_init (SCMP_ACT_ERRNO (EPERM));
++	ctx = seccomp_init (SCMP_ACT_ERRNO (ENOSYS));
+ 	if (!ctx)
+ 		error (FATAL, errno, "can't initialise seccomp filter");
+ 
+@@ -271,6 +271,7 @@ static scmp_filter_ctx make_seccomp_filter (int permissive)
+ 	/* systemd: SystemCallFilter=@default */
+ 	SC_ALLOW ("clock_getres");
+ 	SC_ALLOW ("clock_gettime");
++	SC_ALLOW ("clock_gettime64");
+ 	SC_ALLOW ("clock_nanosleep");
+ 	SC_ALLOW ("execve");
+ 	SC_ALLOW ("exit");
+-- 
+cgit v1.2.1
+

diff --git a/sys-apps/man-db/man-db-9999.ebuild b/sys-apps/man-db/man-db-2.9.3-r1.ebuild
similarity index 97%
copy from sys-apps/man-db/man-db-9999.ebuild
copy to sys-apps/man-db/man-db-2.9.3-r1.ebuild
index 25d02ea5f57..35e2bb5d6ce 100644
--- a/sys-apps/man-db/man-db-9999.ebuild
+++ b/sys-apps/man-db/man-db-2.9.3-r1.ebuild
@@ -46,7 +46,10 @@ RDEPEND="
 "
 PDEPEND="manpager? ( app-text/manpager )"
 
-PATCHES=( "${FILESDIR}"/${PN}-2.9.3-sandbox-env-tests.patch )
+PATCHES=(
+	"${FILESDIR}"/${PN}-2.9.3-sandbox-env-tests.patch
+	"${FILESDIR}"/man-db-2.9.3-clock_gettime64.patch
+)
 
 pkg_setup() {
 	if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150

diff --git a/sys-apps/man-db/man-db-9999.ebuild b/sys-apps/man-db/man-db-9999.ebuild
index 25d02ea5f57..cf3711365b0 100644
--- a/sys-apps/man-db/man-db-9999.ebuild
+++ b/sys-apps/man-db/man-db-9999.ebuild
@@ -46,7 +46,9 @@ RDEPEND="
 "
 PDEPEND="manpager? ( app-text/manpager )"
 
-PATCHES=( "${FILESDIR}"/${PN}-2.9.3-sandbox-env-tests.patch )
+PATCHES=(
+	"${FILESDIR}"/man-db-2.9.3-sandbox-env-tests.patch
+)
 
 pkg_setup() {
 	if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/man-db/, sys-apps/man-db/files/
@ 2021-02-05 14:09 Fabian Groffen
  0 siblings, 0 replies; 11+ messages in thread
From: Fabian Groffen @ 2021-02-05 14:09 UTC (permalink / raw
  To: gentoo-commits

commit:     cee69b8f71b0bde09a4e74e9a8190c69feb80289
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Fri Feb  5 14:08:33 2021 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Fri Feb  5 14:08:54 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cee69b8f

sys-apps/man-db-2.9.3-r2: revbump for Prefix

Package-Manager: Portage-3.0.13, Repoman-3.0.2
Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>

 .../files/man-db-2.9.3-darwin-libdb-intl.patch     | 28 +++++++++++++
 .../{man-db-9999.ebuild => man-db-2.9.3-r2.ebuild} | 49 +++++++++++++++++++---
 sys-apps/man-db/man-db-9999.ebuild                 | 42 ++++++++++++++++++-
 3 files changed, 112 insertions(+), 7 deletions(-)

diff --git a/sys-apps/man-db/files/man-db-2.9.3-darwin-libdb-intl.patch b/sys-apps/man-db/files/man-db-2.9.3-darwin-libdb-intl.patch
new file mode 100644
index 00000000000..a7df3c62fd0
--- /dev/null
+++ b/sys-apps/man-db/files/man-db-2.9.3-darwin-libdb-intl.patch
@@ -0,0 +1,28 @@
+libdb: link against libintl
+
+necessary since gettext is used for translations
+
+Signed-off-by: Fabian Groffen <grobian@gentoo.org>
+
+--- a/libdb/Makefile.am
++++ b/libdb/Makefile.am
+@@ -43,7 +43,7 @@
+ 	db_xdbm.h \
+ 	mydbm.h
+ 
+-libmandb_la_LIBADD = ../lib/libman.la $(DBLIBS)
++libmandb_la_LIBADD = ../lib/libman.la $(DBLIBS) $(LIBINTL)
+ 
+ libmandb_la_LDFLAGS = \
+ 	-avoid-version -release $(VERSION) -rpath $(pkglibdir) -no-undefined
+--- a/libdb/Makefile.in
++++ b/libdb/Makefile.in
+@@ -1541,7 +1541,7 @@
+ 	db_xdbm.h \
+ 	mydbm.h
+ 
+-libmandb_la_LIBADD = ../lib/libman.la $(DBLIBS)
++libmandb_la_LIBADD = ../lib/libman.la $(DBLIBS) $(LIBINTL)
+ libmandb_la_LDFLAGS = \
+ 	-avoid-version -release $(VERSION) -rpath $(pkglibdir) -no-undefined
+ 

diff --git a/sys-apps/man-db/man-db-9999.ebuild b/sys-apps/man-db/man-db-2.9.3-r2.ebuild
similarity index 73%
copy from sys-apps/man-db/man-db-9999.ebuild
copy to sys-apps/man-db/man-db-2.9.3-r2.ebuild
index cf3711365b0..fc6eaf54888 100644
--- a/sys-apps/man-db/man-db-9999.ebuild
+++ b/sys-apps/man-db/man-db-2.9.3-r2.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
 
-inherit systemd
+inherit systemd prefix
 
 DESCRIPTION="a man replacement that utilizes berkdb instead of flat files"
 HOMEPAGE="http://www.nongnu.org/man-db/"
@@ -12,7 +12,7 @@ if [[ "${PV}" = 9999* ]] ; then
 	EGIT_REPO_URI="https://git.savannah.gnu.org/git/man-db.git"
 else
 	SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
 fi
 
 LICENSE="GPL-3"
@@ -36,6 +36,8 @@ BDEPEND="
 	nls? (
 		>=app-text/po4a-0.45
 		sys-devel/gettext
+		virtual/libiconv
+		virtual/libintl
 	)
 "
 RDEPEND="
@@ -47,7 +49,9 @@ RDEPEND="
 PDEPEND="manpager? ( app-text/manpager )"
 
 PATCHES=(
-	"${FILESDIR}"/man-db-2.9.3-sandbox-env-tests.patch
+	"${FILESDIR}"/${PN}-2.9.3-sandbox-env-tests.patch
+	"${FILESDIR}"/man-db-2.9.3-clock_gettime64.patch
+	"${FILESDIR}"/man-db-2.9.3-darwin-libdb-intl.patch
 )
 
 pkg_setup() {
@@ -84,21 +88,56 @@ src_prepare() {
 
 		eautoreconf
 	fi
+
+	hprefixify src/man_db.conf.in
+	if use prefix ; then
+		{
+			echo "#"
+			echo "# Added settings for Gentoo Prefix"
+			[[ ${CHOST} == *-darwin* ]] && \
+				echo "MANDATORY_MANPATH ${EPREFIX}/MacOSX.sdk/usr/share/man"
+			echo "MANDATORY_MANPATH /usr/share/man"
+		} >> src/man_db.conf.in
+	fi
 }
 
 src_configure() {
+	# set sections we want to search by default
+	local sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o"
+	sections+=" 1x 2x 3x 4x 5x 6x 7x 8x"
+	case ${CHOST} in
+		*-solaris*)
+			# Solaris tends to use sections named after the pkgs that
+			# owns them, in particular for libc functions we want those
+			# sections
+			local s
+			for s in $(cd /usr/share/man/ && echo man*) ; do
+				s=${s#man}
+				[[ " ${sections} " != *" ${s} "* ]] && sections+=" ${s}"
+			done
+			;;
+	esac
+
 	export ac_cv_lib_z_gzopen=$(usex zlib)
 	local myeconfargs=(
 		--with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
 		--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
 		--disable-setuid #662438
 		--enable-cache-owner=man
-		--with-sections="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"
+		--with-sections="${sections}"
 		$(use_enable nls)
 		$(use_enable static-libs static)
 		$(use_with seccomp libseccomp)
 		--with-db=$(usex gdbm gdbm $(usex berkdb db gdbm))
 	)
+	case ${CHOST} in
+		*-solaris*|*-darwin*)
+			myeconfargs+=(
+				$(use_with nls libiconv-prefix ${EPREFIX}/usr)
+				$(use_with nls libintl-prefix ${EPREFIX}/usr)
+			)
+			;;
+	esac
 	econf "${myeconfargs[@]}"
 
 	# Disable color output from groff so that the manpager can add it. #184604

diff --git a/sys-apps/man-db/man-db-9999.ebuild b/sys-apps/man-db/man-db-9999.ebuild
index cf3711365b0..fd450d16d1a 100644
--- a/sys-apps/man-db/man-db-9999.ebuild
+++ b/sys-apps/man-db/man-db-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -36,6 +36,8 @@ BDEPEND="
 	nls? (
 		>=app-text/po4a-0.45
 		sys-devel/gettext
+		virtual/libiconv
+		virtual/libintl
 	)
 "
 RDEPEND="
@@ -48,6 +50,7 @@ PDEPEND="manpager? ( app-text/manpager )"
 
 PATCHES=(
 	"${FILESDIR}"/man-db-2.9.3-sandbox-env-tests.patch
+	"${FILESDIR}"/man-db-2.9.3-darwin-libdb-intl.patch
 )
 
 pkg_setup() {
@@ -84,21 +87,56 @@ src_prepare() {
 
 		eautoreconf
 	fi
+
+	hprefixify src/man_db.conf.in
+	if use prefix ; then
+		{
+			echo "#"
+			echo "# Added settings for Gentoo Prefix"
+			[[ ${CHOST} == *-darwin* ]] && \
+				echo "MANDATORY_MANPATH ${EPREFIX}/MacOSX.sdk/usr/share/man"
+			echo "MANDATORY_MANPATH /usr/share/man"
+		} >> src/man_db.conf.in
+	fi
 }
 
 src_configure() {
+	# set sections we want to search by default
+	local sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o"
+	sections+=" 1x 2x 3x 4x 5x 6x 7x 8x"
+	case ${CHOST} in
+		*-solaris*)
+			# Solaris tends to use sections named after the pkgs that
+			# owns them, in particular for libc functions we want those
+			# sections
+			local s
+			for s in $(cd /usr/share/man/ && echo man*) ; do
+				s=${s#man}
+				[[ " ${sections} " != *" ${s} "* ]] && sections+=" ${s}"
+			done
+			;;
+	esac
+
 	export ac_cv_lib_z_gzopen=$(usex zlib)
 	local myeconfargs=(
 		--with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
 		--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
 		--disable-setuid #662438
 		--enable-cache-owner=man
-		--with-sections="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"
+		--with-sections="${sections}"
 		$(use_enable nls)
 		$(use_enable static-libs static)
 		$(use_with seccomp libseccomp)
 		--with-db=$(usex gdbm gdbm $(usex berkdb db gdbm))
 	)
+	case ${CHOST} in
+		*-solaris*|*-darwin*)
+			myeconfargs+=(
+				$(use_with nls libiconv-prefix ${EPREFIX}/usr)
+				$(use_with nls libintl-prefix ${EPREFIX}/usr)
+			)
+			;;
+	esac
 	econf "${myeconfargs[@]}"
 
 	# Disable color output from groff so that the manpager can add it. #184604


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/man-db/, sys-apps/man-db/files/
@ 2021-05-15  0:07 David Seifert
  0 siblings, 0 replies; 11+ messages in thread
From: David Seifert @ 2021-05-15  0:07 UTC (permalink / raw
  To: gentoo-commits

commit:     38ca8533c440558118b9b9b71c2196c6983a005a
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Sat May 15 00:07:10 2021 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sat May 15 00:07:10 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=38ca8533

sys-apps/man-db: drop 2.9.3-r1, 2.9.3-r2

Signed-off-by: David Seifert <soap <AT> gentoo.org>

 sys-apps/man-db/Manifest                           |   1 -
 .../files/man-db-2.9.3-clock_gettime64.patch       |  44 -----
 sys-apps/man-db/man-db-2.9.3-r1.ebuild             | 162 -----------------
 sys-apps/man-db/man-db-2.9.3-r2.ebuild             | 200 ---------------------
 4 files changed, 407 deletions(-)

diff --git a/sys-apps/man-db/Manifest b/sys-apps/man-db/Manifest
index b8b41064b44..1125c257db2 100644
--- a/sys-apps/man-db/Manifest
+++ b/sys-apps/man-db/Manifest
@@ -1,2 +1 @@
-DIST man-db-2.9.3.tar.xz 1885840 BLAKE2B 6163660af60a2900220d7b1de74caa9cb9e5764cc5da20469a8fb08e19ee1948937916664fdc493b89da8fd829aa512877892245fabc00fb586c7754c0da3d53 SHA512 ca1c1214753483f6e22efe69a9df9852e0de01a9ad3b9950dcbbc9f38e6060100b98a84333256f8c734002e66e2fd6256bc017a31bd9acfc42002dca2c0f879b
 DIST man-db-2.9.4.tar.xz 1909020 BLAKE2B 43427e851f0e661ca1cee55211dd7636f4ffde067c75de7715f525029b22c205728f8e86ac49abff60e47a4a4c9e1fbd78e2c87e70bd37778b88594a3897275f SHA512 169f091dd0a1d0dbd1583366f8257afb8f57e030d0f7d4213c14ce0b1fc5debf8b9cf2731de503830cb2826b3a22b3cff7da993d44ec18557935bd293529133c

diff --git a/sys-apps/man-db/files/man-db-2.9.3-clock_gettime64.patch b/sys-apps/man-db/files/man-db-2.9.3-clock_gettime64.patch
deleted file mode 100644
index 0da1b2c5b2b..00000000000
--- a/sys-apps/man-db/files/man-db-2.9.3-clock_gettime64.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 7315a9475d8fa37af49e9e7ed11e1534f23ef70b Mon Sep 17 00:00:00 2001
-From: "S. Gilles" <sgilles@umd.edu>
-Date: Wed, 12 Aug 2020 16:40:07 -0400
-Subject: Allow clock_gettime64; return ENOSYS so libcs can engage fallbacks
-
-libcs such as musl expect ENOSYS to be returned (not EPERM) in their
-fallback code, so change the seccomp filter to be more agreeable to
-them.
-
-At the same time, clock_gettime is permitted in the filter, so permit
-clock_gettime64 as well -- it will be needed by 2038 in any case.
-
-* lib/sandbox.c (make_seccomp_filter): Set default action to
-SCMP_ACT_ERRNO (ENOSYS).  Allow clock_gettime64.
-* NEWS: Document this.
----
- NEWS          | 9 +++++++++
- lib/sandbox.c | 3 ++-
- 2 files changed, 11 insertions(+), 1 deletion(-)
-
-diff --git a/lib/sandbox.c b/lib/sandbox.c
-index 21ec28aa..d934a0f9 100644
---- a/lib/sandbox.c
-+++ b/lib/sandbox.c
-@@ -232,7 +232,7 @@ static scmp_filter_ctx make_seccomp_filter (int permissive)
- 		;
- 
- 	debug ("initialising seccomp filter (permissive: %d)\n", permissive);
--	ctx = seccomp_init (SCMP_ACT_ERRNO (EPERM));
-+	ctx = seccomp_init (SCMP_ACT_ERRNO (ENOSYS));
- 	if (!ctx)
- 		error (FATAL, errno, "can't initialise seccomp filter");
- 
-@@ -271,6 +271,7 @@ static scmp_filter_ctx make_seccomp_filter (int permissive)
- 	/* systemd: SystemCallFilter=@default */
- 	SC_ALLOW ("clock_getres");
- 	SC_ALLOW ("clock_gettime");
-+	SC_ALLOW ("clock_gettime64");
- 	SC_ALLOW ("clock_nanosleep");
- 	SC_ALLOW ("execve");
- 	SC_ALLOW ("exit");
--- 
-cgit v1.2.1
-

diff --git a/sys-apps/man-db/man-db-2.9.3-r1.ebuild b/sys-apps/man-db/man-db-2.9.3-r1.ebuild
deleted file mode 100644
index 2dc1438844d..00000000000
--- a/sys-apps/man-db/man-db-2.9.3-r1.ebuild
+++ /dev/null
@@ -1,162 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd
-
-DESCRIPTION="a man replacement that utilizes berkdb instead of flat files"
-HOMEPAGE="http://www.nongnu.org/man-db/"
-if [[ "${PV}" = 9999* ]] ; then
-	inherit autotools git-r3
-	EGIT_REPO_URI="https://git.savannah.gnu.org/git/man-db.git"
-else
-	SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
-	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
-fi
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="berkdb +gdbm +manpager nls +seccomp selinux static-libs zlib"
-
-CDEPEND="
-	!sys-apps/man
-	>=dev-libs/libpipeline-1.5.0
-	sys-apps/groff
-	gdbm? ( sys-libs/gdbm:= )
-	!gdbm? ( berkdb? ( sys-libs/db:= ) )
-	!berkdb? ( !gdbm? ( sys-libs/gdbm:= ) )
-	seccomp? ( sys-libs/libseccomp )
-	zlib? ( sys-libs/zlib )
-"
-DEPEND="${CDEPEND}"
-BDEPEND="
-	app-arch/xz-utils
-	virtual/pkgconfig
-	nls? (
-		>=app-text/po4a-0.45
-		sys-devel/gettext
-	)
-"
-RDEPEND="
-	${CDEPEND}
-	acct-group/man
-	acct-user/man
-	selinux? ( sec-policy/selinux-mandb )
-"
-PDEPEND="manpager? ( app-text/manpager )"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-2.9.3-sandbox-env-tests.patch
-	"${FILESDIR}"/man-db-2.9.3-clock_gettime64.patch
-)
-
-pkg_setup() {
-	if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150
-		ewarn "Defaulting to USE=gdbm due to ambiguous berkdb/gdbm USE flag settings"
-	fi
-}
-
-src_unpack() {
-	if [[ "${PV}" == *9999 ]] ; then
-		git-r3_src_unpack
-
-		# We need to mess with gnulib :-/
-		EGIT_REPO_URI="https://git.savannah.gnu.org/r/gnulib.git" \
-		EGIT_CHECKOUT_DIR="${WORKDIR}/gnulib" \
-		git-r3_src_unpack
-	else
-		default
-	fi
-}
-
-src_prepare() {
-	default
-	if [[ "${PV}" == *9999 ]] ; then
-		local bootstrap_opts=(
-			--gnulib-srcdir=../gnulib
-			--no-bootstrap-sync
-			--copy
-			--no-git
-		)
-		AUTORECONF="/bin/true" \
-		LIBTOOLIZE="/bin/true" \
-		sh ./bootstrap "${bootstrap_opts[@]}" || die
-
-		eautoreconf
-	fi
-}
-
-src_configure() {
-	export ac_cv_lib_z_gzopen=$(usex zlib)
-	local myeconfargs=(
-		--with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
-		--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
-		--disable-setuid #662438
-		--enable-cache-owner=man
-		--with-sections="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"
-		$(use_enable nls)
-		$(use_enable static-libs static)
-		$(use_with seccomp libseccomp)
-		--with-db=$(usex gdbm gdbm $(usex berkdb db gdbm))
-	)
-	econf "${myeconfargs[@]}"
-
-	# Disable color output from groff so that the manpager can add it. #184604
-	sed -i \
-		-e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
-		src/man_db.conf || die
-
-	cat > 15man-db <<-EOF || die
-	SANDBOX_PREDICT="/var/cache/man"
-	EOF
-}
-
-src_install() {
-	default
-	dodoc docs/{HACKING,TODO}
-	find "${ED}" -type f -name "*.la" -delete || die
-
-	exeinto /etc/cron.daily
-	newexe "${FILESDIR}"/man-db.cron-r1 man-db #289884
-
-	insinto /etc/sandbox.d
-	doins 15man-db
-}
-
-pkg_preinst() {
-	local cachedir="${EROOT}/var/cache/man"
-	# If the system was already exploited, and the attacker is hiding in the
-	# cachedir of the old man-db, let's wipe them out.
-	# see bug  #602588 comment 18
-	local _replacing_version=
-	local _setgid_vuln=0
-	for _replacing_version in ${REPLACING_VERSIONS}; do
-		if ver_test '2.7.6.1-r2' -le "${_replacing_version}"; then
-			debug-print "Skipping security bug #602588 ... existing installation (${_replacing_version}) should not be affected!"
-		else
-			_setgid_vuln=1
-			debug-print "Applying cleanup for security bug #602588"
-		fi
-	done
-	[[ ${_setgid_vuln} -eq 1 ]] && rm -rf "${cachedir}"
-
-	# Fall back to recreating the cachedir
-	if [[ ! -d ${cachedir} ]] ; then
-		mkdir -p "${cachedir}" || die
-		chown man:man "${cachedir}" || die
-	fi
-
-	# Update the whatis cache
-	if [[ -f ${cachedir}/whatis ]] ; then
-		einfo "Cleaning ${cachedir} from sys-apps/man"
-		find "${cachedir}" -type f '!' '(' -name index.bt -o -name index.db ')' -delete
-	fi
-}
-
-pkg_postinst() {
-	if [[ $(ver_cut 2 ${REPLACING_VERSIONS}) -lt 7 ]] ; then
-		einfo "Rebuilding man-db from scratch with new database format!"
-		su man -s /bin/sh -c 'mandb --quiet --create' 2>/dev/null
-	fi
-}

diff --git a/sys-apps/man-db/man-db-2.9.3-r2.ebuild b/sys-apps/man-db/man-db-2.9.3-r2.ebuild
deleted file mode 100644
index fc6eaf54888..00000000000
--- a/sys-apps/man-db/man-db-2.9.3-r2.ebuild
+++ /dev/null
@@ -1,200 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd prefix
-
-DESCRIPTION="a man replacement that utilizes berkdb instead of flat files"
-HOMEPAGE="http://www.nongnu.org/man-db/"
-if [[ "${PV}" = 9999* ]] ; then
-	inherit autotools git-r3
-	EGIT_REPO_URI="https://git.savannah.gnu.org/git/man-db.git"
-else
-	SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="berkdb +gdbm +manpager nls +seccomp selinux static-libs zlib"
-
-CDEPEND="
-	!sys-apps/man
-	>=dev-libs/libpipeline-1.5.0
-	sys-apps/groff
-	gdbm? ( sys-libs/gdbm:= )
-	!gdbm? ( berkdb? ( sys-libs/db:= ) )
-	!berkdb? ( !gdbm? ( sys-libs/gdbm:= ) )
-	seccomp? ( sys-libs/libseccomp )
-	zlib? ( sys-libs/zlib )
-"
-DEPEND="${CDEPEND}"
-BDEPEND="
-	app-arch/xz-utils
-	virtual/pkgconfig
-	nls? (
-		>=app-text/po4a-0.45
-		sys-devel/gettext
-		virtual/libiconv
-		virtual/libintl
-	)
-"
-RDEPEND="
-	${CDEPEND}
-	acct-group/man
-	acct-user/man
-	selinux? ( sec-policy/selinux-mandb )
-"
-PDEPEND="manpager? ( app-text/manpager )"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-2.9.3-sandbox-env-tests.patch
-	"${FILESDIR}"/man-db-2.9.3-clock_gettime64.patch
-	"${FILESDIR}"/man-db-2.9.3-darwin-libdb-intl.patch
-)
-
-pkg_setup() {
-	if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150
-		ewarn "Defaulting to USE=gdbm due to ambiguous berkdb/gdbm USE flag settings"
-	fi
-}
-
-src_unpack() {
-	if [[ "${PV}" == *9999 ]] ; then
-		git-r3_src_unpack
-
-		# We need to mess with gnulib :-/
-		EGIT_REPO_URI="https://git.savannah.gnu.org/r/gnulib.git" \
-		EGIT_CHECKOUT_DIR="${WORKDIR}/gnulib" \
-		git-r3_src_unpack
-	else
-		default
-	fi
-}
-
-src_prepare() {
-	default
-	if [[ "${PV}" == *9999 ]] ; then
-		local bootstrap_opts=(
-			--gnulib-srcdir=../gnulib
-			--no-bootstrap-sync
-			--copy
-			--no-git
-		)
-		AUTORECONF="/bin/true" \
-		LIBTOOLIZE="/bin/true" \
-		sh ./bootstrap "${bootstrap_opts[@]}" || die
-
-		eautoreconf
-	fi
-
-	hprefixify src/man_db.conf.in
-	if use prefix ; then
-		{
-			echo "#"
-			echo "# Added settings for Gentoo Prefix"
-			[[ ${CHOST} == *-darwin* ]] && \
-				echo "MANDATORY_MANPATH ${EPREFIX}/MacOSX.sdk/usr/share/man"
-			echo "MANDATORY_MANPATH /usr/share/man"
-		} >> src/man_db.conf.in
-	fi
-}
-
-src_configure() {
-	# set sections we want to search by default
-	local sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o"
-	sections+=" 1x 2x 3x 4x 5x 6x 7x 8x"
-	case ${CHOST} in
-		*-solaris*)
-			# Solaris tends to use sections named after the pkgs that
-			# owns them, in particular for libc functions we want those
-			# sections
-			local s
-			for s in $(cd /usr/share/man/ && echo man*) ; do
-				s=${s#man}
-				[[ " ${sections} " != *" ${s} "* ]] && sections+=" ${s}"
-			done
-			;;
-	esac
-
-	export ac_cv_lib_z_gzopen=$(usex zlib)
-	local myeconfargs=(
-		--with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
-		--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
-		--disable-setuid #662438
-		--enable-cache-owner=man
-		--with-sections="${sections}"
-		$(use_enable nls)
-		$(use_enable static-libs static)
-		$(use_with seccomp libseccomp)
-		--with-db=$(usex gdbm gdbm $(usex berkdb db gdbm))
-	)
-	case ${CHOST} in
-		*-solaris*|*-darwin*)
-			myeconfargs+=(
-				$(use_with nls libiconv-prefix ${EPREFIX}/usr)
-				$(use_with nls libintl-prefix ${EPREFIX}/usr)
-			)
-			;;
-	esac
-	econf "${myeconfargs[@]}"
-
-	# Disable color output from groff so that the manpager can add it. #184604
-	sed -i \
-		-e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
-		src/man_db.conf || die
-
-	cat > 15man-db <<-EOF || die
-	SANDBOX_PREDICT="/var/cache/man"
-	EOF
-}
-
-src_install() {
-	default
-	dodoc docs/{HACKING,TODO}
-	find "${ED}" -type f -name "*.la" -delete || die
-
-	exeinto /etc/cron.daily
-	newexe "${FILESDIR}"/man-db.cron-r1 man-db #289884
-
-	insinto /etc/sandbox.d
-	doins 15man-db
-}
-
-pkg_preinst() {
-	local cachedir="${EROOT}/var/cache/man"
-	# If the system was already exploited, and the attacker is hiding in the
-	# cachedir of the old man-db, let's wipe them out.
-	# see bug  #602588 comment 18
-	local _replacing_version=
-	local _setgid_vuln=0
-	for _replacing_version in ${REPLACING_VERSIONS}; do
-		if ver_test '2.7.6.1-r2' -le "${_replacing_version}"; then
-			debug-print "Skipping security bug #602588 ... existing installation (${_replacing_version}) should not be affected!"
-		else
-			_setgid_vuln=1
-			debug-print "Applying cleanup for security bug #602588"
-		fi
-	done
-	[[ ${_setgid_vuln} -eq 1 ]] && rm -rf "${cachedir}"
-
-	# Fall back to recreating the cachedir
-	if [[ ! -d ${cachedir} ]] ; then
-		mkdir -p "${cachedir}" || die
-		chown man:man "${cachedir}" || die
-	fi
-
-	# Update the whatis cache
-	if [[ -f ${cachedir}/whatis ]] ; then
-		einfo "Cleaning ${cachedir} from sys-apps/man"
-		find "${cachedir}" -type f '!' '(' -name index.bt -o -name index.db ')' -delete
-	fi
-}
-
-pkg_postinst() {
-	if [[ $(ver_cut 2 ${REPLACING_VERSIONS}) -lt 7 ]] ; then
-		einfo "Rebuilding man-db from scratch with new database format!"
-		su man -s /bin/sh -c 'mandb --quiet --create' 2>/dev/null
-	fi
-}


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/man-db/, sys-apps/man-db/files/
@ 2022-02-07  2:08 Sam James
  0 siblings, 0 replies; 11+ messages in thread
From: Sam James @ 2022-02-07  2:08 UTC (permalink / raw
  To: gentoo-commits

commit:     4fed9a6d9b0ae81fff6b7a7390fea76e8e59d826
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Feb  7 01:51:11 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Feb  7 02:07:53 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4fed9a6d

sys-apps/man-db: add 2.10.0

Now defaults to gdbm, but can use berkdb to switch back to that
instead if desired.

This doesn't change the default for anybody as USE="+gdbm" has
been in profiles for a long time and we dropped USE="+berkdb" in profiles
a while ago. Plus, when in doubt, the ebuild used to go for USE=gdbm when
both were set. So, this is just a cleanup of the existing logic.

Closes: https://bugs.gentoo.org/830565
Closes: https://bugs.gentoo.org/697796
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/man-db/Manifest                           |  1 +
 .../files/man-db-2.10.0-fix-build-clang.patch      | 44 ++++++++++++++
 .../files/man-db-2.9.3-darwin-libdb-intl.patch     |  2 +
 .../{man-db-9999.ebuild => man-db-2.10.0.ebuild}   | 69 ++++++++++------------
 sys-apps/man-db/man-db-9999.ebuild                 | 67 ++++++++++-----------
 5 files changed, 109 insertions(+), 74 deletions(-)

diff --git a/sys-apps/man-db/Manifest b/sys-apps/man-db/Manifest
index 1125c257db2f..f1ed8e06a426 100644
--- a/sys-apps/man-db/Manifest
+++ b/sys-apps/man-db/Manifest
@@ -1 +1,2 @@
+DIST man-db-2.10.0.tar.xz 1888196 BLAKE2B 02aed8a8d490b4e481c42790b8783768bf4adcab1430f2e06d2a1b22a4c769dd3978800e609d221da1dcc25032e096ad9ba8580e2ff8a72e8b19dbda573562b4 SHA512 de9c9f3dd9e6a578eb99aca0d04ce5c98cf6733e83e3be5299b6cafc4aad202896429a263a34111529eccdf07c353438afdade278818fc5d884471df7a4816c9
 DIST man-db-2.9.4.tar.xz 1909020 BLAKE2B 43427e851f0e661ca1cee55211dd7636f4ffde067c75de7715f525029b22c205728f8e86ac49abff60e47a4a4c9e1fbd78e2c87e70bd37778b88594a3897275f SHA512 169f091dd0a1d0dbd1583366f8257afb8f57e030d0f7d4213c14ce0b1fc5debf8b9cf2731de503830cb2826b3a22b3cff7da993d44ec18557935bd293529133c

diff --git a/sys-apps/man-db/files/man-db-2.10.0-fix-build-clang.patch b/sys-apps/man-db/files/man-db-2.10.0-fix-build-clang.patch
new file mode 100644
index 000000000000..2896301008ad
--- /dev/null
+++ b/sys-apps/man-db/files/man-db-2.10.0-fix-build-clang.patch
@@ -0,0 +1,44 @@
+https://gitlab.com/cjwatson/man-db/-/commit/f4f94402834f20b9da730aeca5daa465be38efdf
+https://gitlab.com/cjwatson/man-db/-/issues/2
+
+From f4f94402834f20b9da730aeca5daa465be38efdf Mon Sep 17 00:00:00 2001
+From: Colin Watson <cjwatson@debian.org>
+Date: Sun, 6 Feb 2022 12:37:01 +0000
+Subject: [PATCH] Revert "Reduce indentation depth using C99"
+
+This reverts commit c4d20840f3487588c4a0da4397b1acb6dc83a1e5.  Even in
+C99, a declaration isn't valid immediately after a label; this didn't
+become valid until C2x, although gcc allows it as an extension.
+
+Fixes https://gitlab.com/cjwatson/man-db/-/issues/2.
+
+* src/man.c (parse_opt): Restore enclosing block for OPT_WARNINGS.
+--- a/src/man.c
++++ b/src/man.c
+@@ -383,15 +383,18 @@ static error_t parse_opt (int key, char *arg, struct argp_state *state)
+ 
+ 		case OPT_WARNINGS:
+ #ifdef NROFF_WARNINGS
+-			char *s = xstrdup (arg ? arg : default_roff_warnings);
+-			const char *warning;
++			{
++				char *s = xstrdup
++					(arg ? arg : default_roff_warnings);
++				const char *warning;
+ 
+-			for (warning = strtok (s, ","); warning;
+-			     warning = strtok (NULL, ","))
+-				gl_list_add_last (roff_warnings,
+-						  xstrdup (warning));
++				for (warning = strtok (s, ","); warning;
++				     warning = strtok (NULL, ","))
++					gl_list_add_last (roff_warnings,
++							  xstrdup (warning));
+ 
+-			free (s);
++				free (s);
++			}
+ #endif /* NROFF_WARNINGS */
+ 			return 0;
+ 
+GitLab

diff --git a/sys-apps/man-db/files/man-db-2.9.3-darwin-libdb-intl.patch b/sys-apps/man-db/files/man-db-2.9.3-darwin-libdb-intl.patch
index a7df3c62fd06..71cbb1c20df6 100644
--- a/sys-apps/man-db/files/man-db-2.9.3-darwin-libdb-intl.patch
+++ b/sys-apps/man-db/files/man-db-2.9.3-darwin-libdb-intl.patch
@@ -1,3 +1,5 @@
+https://gitlab.com/cjwatson/man-db/-/merge_requests/3
+
 libdb: link against libintl
 
 necessary since gettext is used for translations

diff --git a/sys-apps/man-db/man-db-9999.ebuild b/sys-apps/man-db/man-db-2.10.0.ebuild
similarity index 78%
copy from sys-apps/man-db/man-db-9999.ebuild
copy to sys-apps/man-db/man-db-2.10.0.ebuild
index e673f4391432..6948c20167a5 100644
--- a/sys-apps/man-db/man-db-9999.ebuild
+++ b/sys-apps/man-db/man-db-2.10.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -6,64 +6,54 @@ EAPI=7
 inherit systemd prefix tmpfiles
 
 DESCRIPTION="A man replacement that utilizes berkdb instead of flat files"
-HOMEPAGE="http://www.nongnu.org/man-db/"
-if [[ "${PV}" = 9999* ]] ; then
+HOMEPAGE="https://gitlab.com/cjwatson/man-db https://www.nongnu.org/man-db/"
+if [[ ${PV} == *9999 ]] ; then
 	inherit autotools git-r3
-	EGIT_REPO_URI="https://git.savannah.gnu.org/git/man-db.git"
+	EGIT_REPO_URI="https://gitlab.com/cjwatson/man-db.git"
 else
+	# TODO: Change tarballs to gitlab too...?
 	SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
 fi
 
 LICENSE="GPL-3"
 SLOT="0"
-IUSE="berkdb +gdbm +manpager nls +seccomp selinux static-libs zlib"
+IUSE="berkdb +manpager nls +seccomp selinux static-libs zlib"
 
-CDEPEND="
-	!sys-apps/man
+CDEPEND="!sys-apps/man
 	>=dev-libs/libpipeline-1.5.0
 	sys-apps/groff
-	gdbm? ( sys-libs/gdbm:= )
-	!gdbm? ( berkdb? ( sys-libs/db:= ) )
-	!berkdb? ( !gdbm? ( sys-libs/gdbm:= ) )
+	!berkdb? ( sys-libs/gdbm:= )
+	berkdb? ( sys-libs/db:= )
 	seccomp? ( sys-libs/libseccomp )
-	zlib? ( sys-libs/zlib )
-"
+	zlib? ( sys-libs/zlib )"
 DEPEND="${CDEPEND}"
-BDEPEND="
-	app-arch/xz-utils
+BDEPEND="app-arch/xz-utils
 	virtual/pkgconfig
 	nls? (
 		>=app-text/po4a-0.45
 		sys-devel/gettext
 		virtual/libiconv
 		virtual/libintl
-	)
-"
-RDEPEND="
-	${CDEPEND}
+	)"
+RDEPEND="${CDEPEND}
 	acct-group/man
 	acct-user/man
-	selinux? ( sec-policy/selinux-mandb )
-"
+	selinux? ( sec-policy/selinux-mandb )"
 PDEPEND="manpager? ( app-text/manpager )"
 
 PATCHES=(
 	"${FILESDIR}"/man-db-2.9.3-sandbox-env-tests.patch
 	"${FILESDIR}"/man-db-2.9.3-darwin-libdb-intl.patch
-)
 
-pkg_setup() {
-	if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150
-		ewarn "Defaulting to USE=gdbm due to ambiguous berkdb/gdbm USE flag settings"
-	fi
-}
+	"${FILESDIR}"/${P}-fix-build-clang.patch
+)
 
 src_unpack() {
-	if [[ "${PV}" == *9999 ]] ; then
+	if [[ ${PV} == *9999 ]] ; then
 		git-r3_src_unpack
 
-		# We need to mess with gnulib :-/
+		# We need to mess with gnulib
 		EGIT_REPO_URI="https://git.savannah.gnu.org/r/gnulib.git" \
 		EGIT_CHECKOUT_DIR="${WORKDIR}/gnulib" \
 		git-r3_src_unpack
@@ -74,6 +64,7 @@ src_unpack() {
 
 src_prepare() {
 	default
+
 	if [[ "${PV}" == *9999 ]] ; then
 		local bootstrap_opts=(
 			--gnulib-srcdir=../gnulib
@@ -101,7 +92,7 @@ src_prepare() {
 }
 
 src_configure() {
-	# set sections we want to search by default
+	# Set sections we want to search by default
 	local sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o"
 	sections+=" 1x 2x 3x 4x 5x 6x 7x 8x"
 	case ${CHOST} in
@@ -121,25 +112,29 @@ src_configure() {
 	local myeconfargs=(
 		--with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
 		--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
-		--disable-setuid #662438
+		--disable-setuid # bug #662438
 		--enable-cache-owner=man
 		--with-sections="${sections}"
+
 		$(use_enable nls)
 		$(use_enable static-libs static)
 		$(use_with seccomp libseccomp)
-		--with-db=$(usex gdbm gdbm $(usex berkdb db gdbm))
+
+		--with-db=$(usex berkdb db gdbm)
 	)
+
 	case ${CHOST} in
 		*-solaris*|*-darwin*)
 			myeconfargs+=(
-				$(use_with nls libiconv-prefix ${EPREFIX}/usr)
-				$(use_with nls libintl-prefix ${EPREFIX}/usr)
+				$(use_with nls libiconv-prefix "${EPREFIX}"/usr)
+				$(use_with nls libintl-prefix "${EPREFIX}"/usr)
 			)
 			;;
 	esac
+
 	econf "${myeconfargs[@]}"
 
-	# Disable color output from groff so that the manpager can add it. #184604
+	# Disable color output from groff so that the manpager can add it. bug #184604
 	sed -i \
 		-e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
 		src/man_db.conf || die
@@ -151,11 +146,11 @@ src_configure() {
 
 src_install() {
 	default
-	dodoc docs/{HACKING,TODO}
+	dodoc docs/{HACKING.md,TODO}
 	find "${ED}" -type f -name "*.la" -delete || die
 
 	exeinto /etc/cron.daily
-	newexe "${FILESDIR}"/man-db.cron-r1 man-db #289884
+	newexe "${FILESDIR}"/man-db.cron-r1 man-db # bug #289884
 
 	insinto /etc/sandbox.d
 	doins 15man-db

diff --git a/sys-apps/man-db/man-db-9999.ebuild b/sys-apps/man-db/man-db-9999.ebuild
index e673f4391432..c0406d043a09 100644
--- a/sys-apps/man-db/man-db-9999.ebuild
+++ b/sys-apps/man-db/man-db-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -6,46 +6,40 @@ EAPI=7
 inherit systemd prefix tmpfiles
 
 DESCRIPTION="A man replacement that utilizes berkdb instead of flat files"
-HOMEPAGE="http://www.nongnu.org/man-db/"
-if [[ "${PV}" = 9999* ]] ; then
+HOMEPAGE="https://gitlab.com/cjwatson/man-db https://www.nongnu.org/man-db/"
+if [[ ${PV} == *9999 ]] ; then
 	inherit autotools git-r3
-	EGIT_REPO_URI="https://git.savannah.gnu.org/git/man-db.git"
+	EGIT_REPO_URI="https://gitlab.com/cjwatson/man-db.git"
 else
+	# TODO: Change tarballs to gitlab too...?
 	SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
 fi
 
 LICENSE="GPL-3"
 SLOT="0"
-IUSE="berkdb +gdbm +manpager nls +seccomp selinux static-libs zlib"
+IUSE="berkdb +manpager nls +seccomp selinux static-libs zlib"
 
-CDEPEND="
-	!sys-apps/man
+CDEPEND="!sys-apps/man
 	>=dev-libs/libpipeline-1.5.0
 	sys-apps/groff
-	gdbm? ( sys-libs/gdbm:= )
-	!gdbm? ( berkdb? ( sys-libs/db:= ) )
-	!berkdb? ( !gdbm? ( sys-libs/gdbm:= ) )
+	!berkdb? ( sys-libs/gdbm:= )
+	berkdb? ( sys-libs/db:= )
 	seccomp? ( sys-libs/libseccomp )
-	zlib? ( sys-libs/zlib )
-"
+	zlib? ( sys-libs/zlib )"
 DEPEND="${CDEPEND}"
-BDEPEND="
-	app-arch/xz-utils
+BDEPEND="app-arch/xz-utils
 	virtual/pkgconfig
 	nls? (
 		>=app-text/po4a-0.45
 		sys-devel/gettext
 		virtual/libiconv
 		virtual/libintl
-	)
-"
-RDEPEND="
-	${CDEPEND}
+	)"
+RDEPEND="${CDEPEND}
 	acct-group/man
 	acct-user/man
-	selinux? ( sec-policy/selinux-mandb )
-"
+	selinux? ( sec-policy/selinux-mandb )"
 PDEPEND="manpager? ( app-text/manpager )"
 
 PATCHES=(
@@ -53,17 +47,11 @@ PATCHES=(
 	"${FILESDIR}"/man-db-2.9.3-darwin-libdb-intl.patch
 )
 
-pkg_setup() {
-	if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150
-		ewarn "Defaulting to USE=gdbm due to ambiguous berkdb/gdbm USE flag settings"
-	fi
-}
-
 src_unpack() {
-	if [[ "${PV}" == *9999 ]] ; then
+	if [[ ${PV} == *9999 ]] ; then
 		git-r3_src_unpack
 
-		# We need to mess with gnulib :-/
+		# We need to mess with gnulib
 		EGIT_REPO_URI="https://git.savannah.gnu.org/r/gnulib.git" \
 		EGIT_CHECKOUT_DIR="${WORKDIR}/gnulib" \
 		git-r3_src_unpack
@@ -74,6 +62,7 @@ src_unpack() {
 
 src_prepare() {
 	default
+
 	if [[ "${PV}" == *9999 ]] ; then
 		local bootstrap_opts=(
 			--gnulib-srcdir=../gnulib
@@ -101,7 +90,7 @@ src_prepare() {
 }
 
 src_configure() {
-	# set sections we want to search by default
+	# Set sections we want to search by default
 	local sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o"
 	sections+=" 1x 2x 3x 4x 5x 6x 7x 8x"
 	case ${CHOST} in
@@ -121,25 +110,29 @@ src_configure() {
 	local myeconfargs=(
 		--with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
 		--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
-		--disable-setuid #662438
+		--disable-setuid # bug #662438
 		--enable-cache-owner=man
 		--with-sections="${sections}"
+
 		$(use_enable nls)
 		$(use_enable static-libs static)
 		$(use_with seccomp libseccomp)
-		--with-db=$(usex gdbm gdbm $(usex berkdb db gdbm))
+
+		--with-db=$(usex berkdb db gdbm)
 	)
+
 	case ${CHOST} in
 		*-solaris*|*-darwin*)
 			myeconfargs+=(
-				$(use_with nls libiconv-prefix ${EPREFIX}/usr)
-				$(use_with nls libintl-prefix ${EPREFIX}/usr)
+				$(use_with nls libiconv-prefix "${EPREFIX}"/usr)
+				$(use_with nls libintl-prefix "${EPREFIX}"/usr)
 			)
 			;;
 	esac
+
 	econf "${myeconfargs[@]}"
 
-	# Disable color output from groff so that the manpager can add it. #184604
+	# Disable color output from groff so that the manpager can add it. bug #184604
 	sed -i \
 		-e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
 		src/man_db.conf || die
@@ -151,11 +144,11 @@ src_configure() {
 
 src_install() {
 	default
-	dodoc docs/{HACKING,TODO}
+	dodoc docs/{HACKING.md,TODO}
 	find "${ED}" -type f -name "*.la" -delete || die
 
 	exeinto /etc/cron.daily
-	newexe "${FILESDIR}"/man-db.cron-r1 man-db #289884
+	newexe "${FILESDIR}"/man-db.cron-r1 man-db # bug #289884
 
 	insinto /etc/sandbox.d
 	doins 15man-db


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/man-db/, sys-apps/man-db/files/
@ 2022-04-19 13:12 Sam James
  0 siblings, 0 replies; 11+ messages in thread
From: Sam James @ 2022-04-19 13:12 UTC (permalink / raw
  To: gentoo-commits

commit:     e886defc739295dc2fb50b2619b53a05f24e766d
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 19 13:12:18 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Apr 19 13:12:18 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e886defc

sys-apps/man-db: drop 2.9.4-r1, 2.10.1

Bug: https://bugs.gentoo.org/839021
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/man-db/Manifest                           |   2 -
 .../files/man-db-2.9.3-darwin-libdb-intl.patch     |  30 ---
 sys-apps/man-db/man-db-2.10.1.ebuild               | 202 ---------------------
 sys-apps/man-db/man-db-2.9.4-r1.ebuild             | 201 --------------------
 4 files changed, 435 deletions(-)

diff --git a/sys-apps/man-db/Manifest b/sys-apps/man-db/Manifest
index 47fcf4b1a730..ac1a6f7a5112 100644
--- a/sys-apps/man-db/Manifest
+++ b/sys-apps/man-db/Manifest
@@ -1,3 +1 @@
-DIST man-db-2.10.1.tar.xz 1890536 BLAKE2B b052a7006e1d47dfe7b82f82b6e6e47500ca1c8fa20716af7d3d4193ebde0b109f13f4ed3148c5e4bbc76f34d457ec71bf93ed88f9ab0f5da5b5e1c9066e6d70 SHA512 25a3c4e3d7b171faf0771885a7a7d502c4af801881777231c79d7ee9768c2e48e44afbf5603af13f5ac63e6981cfdb8e36ba8a33d5f926d8122635cf45fcff7a
 DIST man-db-2.10.2.tar.xz 1902840 BLAKE2B 8d1748503cdf66a613d7544a27b42df9436bdf4e07ccb130d2fa62343488d2c4ab791238c348236a253abddb564db9d1bb851249da9911737ff822d822819599 SHA512 5ad7a7b601aadf4d2d7cc068881fffe3d91dc85fcf4c17e66fbe6e2b04bb1c46f5ba5d4bc7f6ab3f39e00065be39061b101d3064c12b1e89f0fee61c088611bf
-DIST man-db-2.9.4.tar.xz 1909020 BLAKE2B 43427e851f0e661ca1cee55211dd7636f4ffde067c75de7715f525029b22c205728f8e86ac49abff60e47a4a4c9e1fbd78e2c87e70bd37778b88594a3897275f SHA512 169f091dd0a1d0dbd1583366f8257afb8f57e030d0f7d4213c14ce0b1fc5debf8b9cf2731de503830cb2826b3a22b3cff7da993d44ec18557935bd293529133c

diff --git a/sys-apps/man-db/files/man-db-2.9.3-darwin-libdb-intl.patch b/sys-apps/man-db/files/man-db-2.9.3-darwin-libdb-intl.patch
deleted file mode 100644
index 71cbb1c20df6..000000000000
--- a/sys-apps/man-db/files/man-db-2.9.3-darwin-libdb-intl.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-https://gitlab.com/cjwatson/man-db/-/merge_requests/3
-
-libdb: link against libintl
-
-necessary since gettext is used for translations
-
-Signed-off-by: Fabian Groffen <grobian@gentoo.org>
-
---- a/libdb/Makefile.am
-+++ b/libdb/Makefile.am
-@@ -43,7 +43,7 @@
- 	db_xdbm.h \
- 	mydbm.h
- 
--libmandb_la_LIBADD = ../lib/libman.la $(DBLIBS)
-+libmandb_la_LIBADD = ../lib/libman.la $(DBLIBS) $(LIBINTL)
- 
- libmandb_la_LDFLAGS = \
- 	-avoid-version -release $(VERSION) -rpath $(pkglibdir) -no-undefined
---- a/libdb/Makefile.in
-+++ b/libdb/Makefile.in
-@@ -1541,7 +1541,7 @@
- 	db_xdbm.h \
- 	mydbm.h
- 
--libmandb_la_LIBADD = ../lib/libman.la $(DBLIBS)
-+libmandb_la_LIBADD = ../lib/libman.la $(DBLIBS) $(LIBINTL)
- libmandb_la_LDFLAGS = \
- 	-avoid-version -release $(VERSION) -rpath $(pkglibdir) -no-undefined
- 

diff --git a/sys-apps/man-db/man-db-2.10.1.ebuild b/sys-apps/man-db/man-db-2.10.1.ebuild
deleted file mode 100644
index 10986291516d..000000000000
--- a/sys-apps/man-db/man-db-2.10.1.ebuild
+++ /dev/null
@@ -1,202 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd prefix tmpfiles
-
-DESCRIPTION="A man replacement that utilizes berkdb instead of flat files"
-HOMEPAGE="https://gitlab.com/cjwatson/man-db https://www.nongnu.org/man-db/"
-if [[ ${PV} == *9999 ]] ; then
-	inherit autotools git-r3
-	EGIT_REPO_URI="https://gitlab.com/cjwatson/man-db.git"
-else
-	# TODO: Change tarballs to gitlab too...?
-	SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="berkdb +manpager nls +seccomp selinux static-libs zlib"
-
-CDEPEND="!sys-apps/man
-	>=dev-libs/libpipeline-1.5.0
-	sys-apps/groff
-	!berkdb? ( sys-libs/gdbm:= )
-	berkdb? ( sys-libs/db:= )
-	seccomp? ( sys-libs/libseccomp )
-	zlib? ( sys-libs/zlib )"
-DEPEND="${CDEPEND}"
-BDEPEND="app-arch/xz-utils
-	virtual/pkgconfig
-	nls? (
-		>=app-text/po4a-0.45
-		sys-devel/gettext
-		virtual/libiconv
-		virtual/libintl
-	)"
-RDEPEND="${CDEPEND}
-	acct-group/man
-	acct-user/man
-	selinux? ( sec-policy/selinux-mandb )"
-PDEPEND="manpager? ( app-text/manpager )"
-
-PATCHES=(
-	"${FILESDIR}"/man-db-2.9.3-sandbox-env-tests.patch
-)
-
-src_unpack() {
-	if [[ ${PV} == *9999 ]] ; then
-		git-r3_src_unpack
-
-		# We need to mess with gnulib
-		EGIT_REPO_URI="https://git.savannah.gnu.org/r/gnulib.git" \
-		EGIT_CHECKOUT_DIR="${WORKDIR}/gnulib" \
-		git-r3_src_unpack
-	else
-		default
-	fi
-}
-
-src_prepare() {
-	default
-
-	if [[ "${PV}" == *9999 ]] ; then
-		local bootstrap_opts=(
-			--gnulib-srcdir=../gnulib
-			--no-bootstrap-sync
-			--copy
-			--no-git
-		)
-		AUTORECONF="/bin/true" \
-		LIBTOOLIZE="/bin/true" \
-		sh ./bootstrap "${bootstrap_opts[@]}" || die
-
-		eautoreconf
-	fi
-
-	hprefixify src/man_db.conf.in
-	if use prefix ; then
-		{
-			echo "#"
-			echo "# Added settings for Gentoo Prefix"
-			[[ ${CHOST} == *-darwin* ]] && \
-				echo "MANDATORY_MANPATH ${EPREFIX}/MacOSX.sdk/usr/share/man"
-			echo "MANDATORY_MANPATH /usr/share/man"
-		} >> src/man_db.conf.in
-	fi
-}
-
-src_configure() {
-	# Set sections we want to search by default
-	local sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o"
-	sections+=" 1x 2x 3x 4x 5x 6x 7x 8x"
-	case ${CHOST} in
-		*-solaris*)
-			# Solaris tends to use sections named after the pkgs that
-			# owns them, in particular for libc functions we want those
-			# sections
-			local s
-			for s in $(cd /usr/share/man/ && echo man*) ; do
-				s=${s#man}
-				[[ " ${sections} " != *" ${s} "* ]] && sections+=" ${s}"
-			done
-			;;
-	esac
-
-	export ac_cv_lib_z_gzopen=$(usex zlib)
-	local myeconfargs=(
-		--with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
-		--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
-		--disable-setuid # bug #662438
-		--enable-cache-owner=man
-		--with-sections="${sections}"
-
-		$(use_enable nls)
-		$(use_enable static-libs static)
-		$(use_with seccomp libseccomp)
-
-		--with-db=$(usex berkdb db gdbm)
-	)
-
-	case ${CHOST} in
-		*-solaris*|*-darwin*)
-			myeconfargs+=(
-				$(use_with nls libiconv-prefix "${EPREFIX}"/usr)
-				$(use_with nls libintl-prefix "${EPREFIX}"/usr)
-			)
-			;;
-	esac
-
-	econf "${myeconfargs[@]}"
-
-	# Disable color output from groff so that the manpager can add it. bug #184604
-	sed -i \
-		-e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
-		src/man_db.conf || die
-
-	cat > 15man-db <<-EOF || die
-	SANDBOX_PREDICT="/var/cache/man"
-	EOF
-}
-
-src_install() {
-	default
-	dodoc docs/{HACKING.md,TODO}
-	find "${ED}" -type f -name "*.la" -delete || die
-
-	exeinto /etc/cron.daily
-	newexe "${FILESDIR}"/man-db.cron-r1 man-db # bug #289884
-
-	insinto /etc/sandbox.d
-	doins 15man-db
-}
-
-pkg_preinst() {
-	local cachedir="${EROOT}/var/cache/man"
-	# If the system was already exploited, and the attacker is hiding in the
-	# cachedir of the old man-db, let's wipe them out.
-	# see bug  #602588 comment 18
-	local _replacing_version=
-	local _setgid_vuln=0
-	for _replacing_version in ${REPLACING_VERSIONS} ; do
-		if ver_test '2.7.6.1-r2' -le "${_replacing_version}" ; then
-			debug-print "Skipping security bug #602588 ... existing installation (${_replacing_version}) should not be affected!"
-		else
-			_setgid_vuln=1
-			debug-print "Applying cleanup for security bug #602588"
-		fi
-	done
-	[[ ${_setgid_vuln} -eq 1 ]] && rm -rf "${cachedir}"
-
-	# Fall back to recreating the cachedir
-	if [[ ! -d ${cachedir} ]] ; then
-		mkdir -p "${cachedir}" || die
-		chown man:man "${cachedir}" || die
-	fi
-
-	# Update the whatis cache
-	if [[ -f ${cachedir}/whatis ]] ; then
-		einfo "Cleaning ${cachedir} from sys-apps/man"
-		find "${cachedir}" -type f '!' '(' -name index.bt -o -name index.db ')' -delete
-	fi
-}
-
-pkg_postinst() {
-	tmpfiles_process man-db.conf
-
-	if [[ -n "${REPLACING_VERSIONS}" ]] ; then
-		local _replacing_version=
-
-		for _replacing_version in ${REPLACING_VERSIONS} ; do
-			if [[ $(ver_cut 2 ${_replacing_version}) -lt 7 ]] ; then
-				einfo "Rebuilding man-db from scratch with new database format!"
-				su man -s /bin/sh -c 'mandb --quiet --create' 2>/dev/null
-
-				# No need to run it again if we hit one
-				break
-			fi
-		done
-	fi
-}

diff --git a/sys-apps/man-db/man-db-2.9.4-r1.ebuild b/sys-apps/man-db/man-db-2.9.4-r1.ebuild
deleted file mode 100644
index 4dd59206d9d6..000000000000
--- a/sys-apps/man-db/man-db-2.9.4-r1.ebuild
+++ /dev/null
@@ -1,201 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd prefix tmpfiles
-
-DESCRIPTION="A man replacement that utilizes berkdb instead of flat files"
-HOMEPAGE="http://www.nongnu.org/man-db/"
-if [[ "${PV}" = 9999* ]] ; then
-	inherit autotools git-r3
-	EGIT_REPO_URI="https://git.savannah.gnu.org/git/man-db.git"
-else
-	SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
-	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="berkdb +gdbm +manpager nls +seccomp selinux static-libs zlib"
-
-CDEPEND="
-	!sys-apps/man
-	>=dev-libs/libpipeline-1.5.0
-	sys-apps/groff
-	gdbm? ( sys-libs/gdbm:= )
-	!gdbm? ( berkdb? ( sys-libs/db:= ) )
-	!berkdb? ( !gdbm? ( sys-libs/gdbm:= ) )
-	seccomp? ( sys-libs/libseccomp )
-	zlib? ( sys-libs/zlib )
-"
-DEPEND="${CDEPEND}"
-BDEPEND="
-	app-arch/xz-utils
-	virtual/pkgconfig
-	nls? (
-		>=app-text/po4a-0.45
-		sys-devel/gettext
-		virtual/libiconv
-		virtual/libintl
-	)
-"
-RDEPEND="
-	${CDEPEND}
-	acct-group/man
-	acct-user/man
-	selinux? ( sec-policy/selinux-mandb )
-"
-PDEPEND="manpager? ( app-text/manpager )"
-
-PATCHES=(
-	"${FILESDIR}"/man-db-2.9.3-sandbox-env-tests.patch
-	"${FILESDIR}"/man-db-2.9.3-darwin-libdb-intl.patch
-)
-
-pkg_setup() {
-	if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150
-		ewarn "Defaulting to USE=gdbm due to ambiguous berkdb/gdbm USE flag settings"
-	fi
-}
-
-src_unpack() {
-	if [[ "${PV}" == *9999 ]] ; then
-		git-r3_src_unpack
-
-		# We need to mess with gnulib :-/
-		EGIT_REPO_URI="https://git.savannah.gnu.org/r/gnulib.git" \
-		EGIT_CHECKOUT_DIR="${WORKDIR}/gnulib" \
-		git-r3_src_unpack
-	else
-		default
-	fi
-}
-
-src_prepare() {
-	default
-	if [[ "${PV}" == *9999 ]] ; then
-		local bootstrap_opts=(
-			--gnulib-srcdir=../gnulib
-			--no-bootstrap-sync
-			--copy
-			--no-git
-		)
-		AUTORECONF="/bin/true" \
-		LIBTOOLIZE="/bin/true" \
-		sh ./bootstrap "${bootstrap_opts[@]}" || die
-
-		eautoreconf
-	fi
-
-	hprefixify src/man_db.conf.in
-	if use prefix ; then
-		{
-			echo "#"
-			echo "# Added settings for Gentoo Prefix"
-			[[ ${CHOST} == *-darwin* ]] && \
-				echo "MANDATORY_MANPATH ${EPREFIX}/MacOSX.sdk/usr/share/man"
-			echo "MANDATORY_MANPATH /usr/share/man"
-		} >> src/man_db.conf.in
-	fi
-}
-
-src_configure() {
-	# set sections we want to search by default
-	local sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o"
-	sections+=" 1x 2x 3x 4x 5x 6x 7x 8x"
-	case ${CHOST} in
-		*-solaris*)
-			# Solaris tends to use sections named after the pkgs that
-			# owns them, in particular for libc functions we want those
-			# sections
-			local s
-			for s in $(cd /usr/share/man/ && echo man*) ; do
-				s=${s#man}
-				[[ " ${sections} " != *" ${s} "* ]] && sections+=" ${s}"
-			done
-			;;
-	esac
-
-	export ac_cv_lib_z_gzopen=$(usex zlib)
-	local myeconfargs=(
-		--with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
-		--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
-		--disable-setuid #662438
-		--enable-cache-owner=man
-		--with-sections="${sections}"
-		$(use_enable nls)
-		$(use_enable static-libs static)
-		$(use_with seccomp libseccomp)
-		--with-db=$(usex gdbm gdbm $(usex berkdb db gdbm))
-	)
-	case ${CHOST} in
-		*-solaris*|*-darwin*)
-			myeconfargs+=(
-				$(use_with nls libiconv-prefix ${EPREFIX}/usr)
-				$(use_with nls libintl-prefix ${EPREFIX}/usr)
-			)
-			;;
-	esac
-	econf "${myeconfargs[@]}"
-
-	# Disable color output from groff so that the manpager can add it. #184604
-	sed -i \
-		-e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
-		src/man_db.conf || die
-
-	cat > 15man-db <<-EOF || die
-	SANDBOX_PREDICT="/var/cache/man"
-	EOF
-}
-
-src_install() {
-	default
-	dodoc docs/{HACKING,TODO}
-	find "${ED}" -type f -name "*.la" -delete || die
-
-	exeinto /etc/cron.daily
-	newexe "${FILESDIR}"/man-db.cron-r1 man-db #289884
-
-	insinto /etc/sandbox.d
-	doins 15man-db
-}
-
-pkg_preinst() {
-	local cachedir="${EROOT}/var/cache/man"
-	# If the system was already exploited, and the attacker is hiding in the
-	# cachedir of the old man-db, let's wipe them out.
-	# see bug  #602588 comment 18
-	local _replacing_version=
-	local _setgid_vuln=0
-	for _replacing_version in ${REPLACING_VERSIONS}; do
-		if ver_test '2.7.6.1-r2' -le "${_replacing_version}"; then
-			debug-print "Skipping security bug #602588 ... existing installation (${_replacing_version}) should not be affected!"
-		else
-			_setgid_vuln=1
-			debug-print "Applying cleanup for security bug #602588"
-		fi
-	done
-	[[ ${_setgid_vuln} -eq 1 ]] && rm -rf "${cachedir}"
-
-	# Fall back to recreating the cachedir
-	if [[ ! -d ${cachedir} ]] ; then
-		mkdir -p "${cachedir}" || die
-		chown man:man "${cachedir}" || die
-	fi
-
-	# Update the whatis cache
-	if [[ -f ${cachedir}/whatis ]] ; then
-		einfo "Cleaning ${cachedir} from sys-apps/man"
-		find "${cachedir}" -type f '!' '(' -name index.bt -o -name index.db ')' -delete
-	fi
-}
-
-pkg_postinst() {
-	tmpfiles_process man-db.conf
-
-	if [[ $(ver_cut 2 ${REPLACING_VERSIONS}) -lt 7 ]] ; then
-		einfo "Rebuilding man-db from scratch with new database format!"
-		su man -s /bin/sh -c 'mandb --quiet --create' 2>/dev/null
-	fi
-}


^ permalink raw reply related	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2022-04-19 13:12 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-02-06 14:56 [gentoo-commits] repo/gentoo:master commit in: sys-apps/man-db/, sys-apps/man-db/files/ Lars Wendler
  -- strict thread matches above, loose matches on Subject: below --
2018-02-28 21:02 Lars Wendler
2018-09-10 10:24 Thomas Deutschmann
2019-01-06 15:11 Lars Wendler
2019-08-03 19:37 Lars Wendler
2020-08-29 14:04 Thomas Deutschmann
2020-12-23 19:15 Mike Gilbert
2021-02-05 14:09 Fabian Groffen
2021-05-15  0:07 David Seifert
2022-02-07  2:08 Sam James
2022-04-19 13:12 Sam James

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox