[FFmpeg-devel] doc/t2h.pm: change INLINE_CONTENTS to CONTENTS_OUTPUT_LOCATION

Gyan Doshi ffmpeg at gyani.pro
Sat Nov 13 08:52:53 EET 2021



On 2021-11-13 12:08 am, Matthew White wrote:
>> On 2021-11-12 11:00 am, Gyan Doshi wrote:
>>
>> Which version of texinfo are you using?
> texi2any (GNU texinfo) 6.8
> ffmpeg version 4.4 Copyright (c) 2000-2021 the FFmpeg developers
>   
>> With this patch, do you get any warnings or errors during build?
> Tests done after replacing INLINE_CONTENTS=1 with CONTENTS_OUTPUT_LOCATION=inline
> in doc/t2h.pm. Build outputs attached (build.output and build.output2), see below.
>
> $ ./configure --enable-doc --enable-htmlpages --enable-manpages
> $ make doc 2>&1 | tee ./build.output
> ...
> HTML	doc/ffmpeg.html
> makeinfo: warning: error loading ./doc/t2h.pm: Undefined subroutine &Texinfo::Config::carp called at /usr/share/texinfo/Texinfo/Convert/HTML.pm line 7308. Compilation
> failed in require at /usr/bin/makeinfo line 342.
> ...
>
> To fix the texinfo/makeinfo warning "HTML.pm line 7308" you may patch
> the installed texi2any, or apply the following patch before building
> texinfo, to enable Carp in the Texinfo::Config namespace:
>
> https://raw.githubusercontent.com/mehw/gentoo/429b46b0651ece562040756443b8acc23a4186dd/sys-apps/texinfo/files/texinfo-6.8-enable-Carp.patch
>
> diff -Nuar a/tp/texi2any.pl b/tp/texi2any.pl
> --- a/tp/texi2any.pl	2021-06-30 16:25:37.000000000 +0200
> +++ b/tp/texi2any.pl	2021-11-12 17:31:20.000000000 +0100
> @@ -322,7 +322,7 @@
>   {
>   package Texinfo::Config;
>   
> -#use Carp;
> +use Carp;
>   
>   # passed from main program
>   my $cmdline_options;
>
> $ ./configure --enable-doc --enable-htmlpages --enable-manpages
> $ make doc 2>&1 | tee ./build.output2
> ...
> HTML	doc/ffmpeg.html
> Unknown formatting type begin_file
>   at /usr/bin/makeinfo line 415.
> Unknown formatting type program_string
>   at /usr/bin/makeinfo line 415.
> Unknown formatting type end_file
>   at /usr/bin/makeinfo line 415.
> ...
>
>> Is the CSS applied in the html output?
> With and w/o the Carp patch, there're no 'href=file.css' lines, but
> in doc/ffmpeg.html, and in other .html files, there's the following:

> <style type="text/css">
> <!--
> a.copiable-anchor {visibility: hidden; text-decoration: none; line-height: 0em}
> a.summary-letter {text-decoration: none}
> blockquote.indentedblock {margin-right: 0em}
> div.display {margin-left: 3.2em}
> div.example {margin-left: 3.2em}
> kbd {font-style: oblique}
> pre.display {font-family: inherit}
> pre.format {font-family: inherit}
> pre.menu-comment {font-family: serif}
> pre.menu-preformatted {font-family: serif}
> span.nolinebreak {white-space: nowrap}
> span.roman {font-family: initial; font-weight: normal}
> span.sansserif {font-family: sans-serif; font-weight: normal}
> span:hover a.copiable-anchor {visibility: visible}
> ul.no-bullet {list-style: none}
> -->
> </style>

Those lines are commented out.

What's inserted with texinfo 6.7 and missing in 6.8 is

     <link rel="stylesheet" type="text/css" href="bootstrap.min.css">
     <link rel="stylesheet" type="text/css" href="style.min.css">

So, texinfo 6.7 renders the HTML as required with TOC and styling.
With 6.8 both are missing. Your patch restores the TOC.

Our server won't be running 6.8 so I'll wait till 6.8 is patched.

Thanks,
Gyan


More information about the ffmpeg-devel mailing list