Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 876935 - sys-apps/man-pages-6.00 calls commands that do not exist: bc
Summary: sys-apps/man-pages-6.00 calls commands that do not exist: bc
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-10-13 06:51 UTC by Agostino Sarubbo
Modified: 2022-10-18 23:46 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,254.19 KB, text/plain)
2022-10-13 06:51 UTC, Agostino Sarubbo
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Agostino Sarubbo gentoo-dev 2022-10-13 06:51:46 UTC
https://blogs.gentoo.org/ago/2020/07/04/gentoo-tinderbox/

Issue: sys-apps/man-pages-6.00 calls commands that do not exist.
Discovered on: amd64 (internal ref: ci)

NOTE:
Please look for 'command not found' and/or 'no such file or directory'.
Comment 1 Agostino Sarubbo gentoo-dev 2022-10-13 06:51:49 UTC
Created attachment 823745 [details]
build.log

build log and emerge --info
Comment 2 Larry the Git Cow gentoo-dev 2022-10-13 19:06:17 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f9377b9fd97573f2ff13e03c645dd3484ba95dc6

commit f9377b9fd97573f2ff13e03c645dd3484ba95dc6
Author:     Mike Gilbert <floppym@gentoo.org>
AuthorDate: 2022-10-13 19:05:16 +0000
Commit:     Mike Gilbert <floppym@gentoo.org>
CommitDate: 2022-10-13 19:05:16 +0000

    sys-apps/man-pages: add sys-devel/bc to BDEPEND
    
    Closes: https://bugs.gentoo.org/876935
    Signed-off-by: Mike Gilbert <floppym@gentoo.org>

 sys-apps/man-pages/man-pages-6.00.ebuild | 3 +++
 sys-apps/man-pages/man-pages-9999.ebuild | 3 +++
 2 files changed, 6 insertions(+)
Comment 3 Alejandro Colomar 2022-10-13 23:45:59 UTC
Hi!

Sorry for not publishing a list of build dependencies.  I thought they might not be necessary, since most of the features are not expected to be used.  However, since the Makefile initializes many variables using some of those commands, it puts some stuff into stderr.

For a complete set of tools that the makefiles use, you can check cmd.mk:

```
$ cat lib/cmd.mk
########################################################################
# Copyright (C) 2022  Alejandro Colomar <alx.manpages@gmail.com>
# SPDX-License-Identifier:  GPL-2.0  OR  LGPL-2.0
########################################################################


ifndef MAKEFILE_CMD_INCLUDED
MAKEFILE_CMD_INCLUDED := 1


BC         := bc
ECHO       := echo
FIND       := find
GIT        := git
GREP       := grep
GZIP       := gzip
LOCALE     := locale
PKG-CONFIG := pkg-config
SED        := sed
SORT       := sort
TAC        := tac
TAR        := tar
XARGS      := xargs
XZ         := xz


endif  # MAKEFILE_CMD_INCLUDED
```


There are other tools used in the Makefiles, but they are used for linting, so I don't expect that they'll pose a problem.  I didn't want to publish those, as some are yet not even packaged by a distribution.

I hope this helps.

Cheers,
Alex
Comment 4 Alejandro Colomar 2022-10-13 23:51:46 UTC
From that list, the ones that will be necessary for everything are: bc, echo, find, git, grep, locale, sed, sort, and xargs.  The rest are only used within rules that won't be used normally by packagers (linters, mostly, and also 'make dist', but you already have the tarball at build-time, I guess).
Comment 5 Mike Gilbert gentoo-dev 2022-10-15 17:12:02 UTC
(In reply to Alejandro Colomar from comment #4)

Most of those tools are provided by packages in the @system set.

https://gitweb.gentoo.org/repo/gentoo.git/tree/profiles/base/packages

The one exception I see is git. Do we really need git to install man pages from a tarball?
Comment 6 Alejandro Colomar 2022-10-18 17:35:12 UTC
Nope, sorry.  Now that I remember, git is a special case:  stderr is redirected to /dev/null for this reason.

$ grep -rn GIT lib/
lib/version.mk:14:DISTNAME    := $(shell $(GIT) describe 2>/dev/null)
lib/cmd.mk:14:GIT        := git
lib/dist.mk:20:DISTFILES   := $(shell $(GIT) ls-files 2>/dev/null | $(SED) 's,^,$(srcdir)/,')
lib/dist.mk:44:	$(GIT) ls-files \


So you're fine without git(1).

However, there's one more dependency which I hadn't considered so far (don't worry too much, since that's a bug; I need to fix it soon): libbsd.  It's been reported a few minutes ago:

<https://bugzilla.kernel.org/show_bug.cgi?id=216602>

I fixed it in the master branch.  I'll soon release 6.01 with the fix.  If you have anything else that I should address before releasing, please tell me.
Comment 7 Alejandro Colomar 2022-10-18 18:52:57 UTC
man-pages-6.01 released.  It should fix similar issues from not having libbsd mentioned in my previous post.
Comment 8 Larry the Git Cow gentoo-dev 2022-10-18 23:46:20 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a8b188cde4f31d16875458ce0dac299c95459d35

commit a8b188cde4f31d16875458ce0dac299c95459d35
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2022-10-18 19:50:50 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2022-10-18 23:46:08 +0000

    sys-apps/man-pages: add 6.01, drop 6.00
    
    Closes: https://bugs.gentoo.org/876935
    Signed-off-by: Sam James <sam@gentoo.org>

 sys-apps/man-pages/Manifest                                       | 2 +-
 .../man-pages/{man-pages-6.00.ebuild => man-pages-6.01.ebuild}    | 8 ++------
 2 files changed, 3 insertions(+), 7 deletions(-)