Bug 28144 - [2.37 regression] binutils build compile zero-sized mans (probably due to extra --no-split option)
Summary: [2.37 regression] binutils build compile zero-sized mans (probably due to ext...
Status: RESOLVED FIXED
Alias: None
Product: binutils
Classification: Unclassified
Component: binutils (show other bugs)
Version: 2.37
: P2 normal
Target Milestone: ---
Assignee: Alan Modra
URL:
Keywords:
: 28134 (view as bug list)
Depends on:
Blocks:
 
Reported: 2021-07-26 21:45 UTC by Sergei Trofimovich
Modified: 2021-11-02 09:42 UTC (History)
3 users (show)

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sergei Trofimovich 2021-07-26 21:45:56 UTC
It's a forward of downstream https://bugs.gentoo.org/804187

# LANG=C ls -lh /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/*
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/addr2line.1
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/ar.1
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/as.1
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/c++filt.1
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/dlltool.1
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/elfedit.1
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/gprof.1
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/ld.1
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/nm.1
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/objcopy.1
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/objdump.1
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/ranlib.1
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/readelf.1
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/size.1
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/strings.1
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/strip.1
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/windmc.1
-rw-r--r-- 1 root root 0 Jul 22 23:35 /usr/share/binutils-data/x86_64-pc-linux-gnu/2.37/man/man1/windres.1

Also reproducible on vanilla binutils-gdb. The main suspect of build log:

touch ar.1
perl ../../../binutils-gdb/binutils/../etc/texi2pod.pl -I "../../../binutils-gdb/binutils/doc" -I "../../../binutils-gdb/binutils/../libiberty" -I "../../../binutils-gdb/binutils/../bfd/doc" -I ../../bfd/doc --no-split -Dman -Dar < ../../../binutils-gdb/binutils/doc/binutils.texi > ar.pod
usage: ../../../binutils-gdb/binutils/../etc/texi2pod.pl [-D toggle...] [infile [outfile]]
make[3]: [Makefile:927: ar.1] Error 255 (ignored)
(pod2man --center="GNU Development Tools" --release="binutils-2.37.50" --section=1 ar.pod | sed -e '/^.if n .na/d' > ar.1.T$$ && \
        mv -f ar.1.T$$ ar.1) || (rm -f ar.1.T$$ && exit 1)
pod2man: unable to format ar.pod
rm -f ar.pod
make[3]: Leaving directory '/home/sl

Note that --no-split is not recognized by texi2pod.pl.

I suspect --no-split comes from.

commit 2faf902da5109e31ad08d84a24f827f0e6f60dc4
Author: Mike Frysinger <vapier@gentoo.org>
Date:   Sun May 2 12:09:00 2021 -0400

    generate single html manual page by default

    This better matches other GNU projects like autoconf/automake where
    the html manual is the single page form.  We'll support the multi-page
    form in a follow up change.
Comment 1 Sergei Trofimovich 2021-07-26 21:58:30 UTC
Sent https://sourceware.org/pipermail/binutils/2021-July/117503.html for review.
Comment 2 H.J. Lu 2021-07-26 23:35:10 UTC
*** Bug 28134 has been marked as a duplicate of this bug. ***
Comment 3 Sourceware Commits 2021-07-29 05:10:31 UTC
The binutils-2_37-branch branch has been updated by Alan Modra <amodra@sourceware.org>:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=2dad02b6d46eef438cbd14d8511487b056628a38

commit 2dad02b6d46eef438cbd14d8511487b056628a38
Author: Sergei Trofimovich <siarheit@google.com>
Date:   Mon Jul 26 22:51:18 2021 +0100

    texi2pod.pl: add no-op --no-split option support [PR28144]
    
    Change 2faf902da ("generate single html manual page by default")
    added use of --no-split option to makeinfo. binutils reuses
    makeinfo options for texi2pod.pl wrapper. Unsupported option
    led to silent manpage truncation.
    
    The change adds no-op option support.
    
    etc/
            PR 28144
            * texi2pod.pl: Handle no-op --no-split option.
    
    (cherry picked from commit 96a7037cd8573cf065aa6b12baca68696f96d9ca)
Comment 4 Alan Modra 2021-07-29 05:11:17 UTC
Fixed on the branch too.
Comment 5 Sourceware Commits 2021-08-31 10:20:40 UTC
The master branch has been updated by Nick Clifton <nickc@sourceware.org>:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=88ae41e17980533927f98339bcb40015522f06c4

commit 88ae41e17980533927f98339bcb40015522f06c4
Author: Nick Clifton <nickc@redhat.com>
Date:   Tue Aug 31 11:19:56 2021 +0100

    Update the how-to-make-a-release document so that a check for empty manual pages is included.  cf PR 28144