On Sat, Nov 04, 2023 at 02:39:32PM +0100, Arsen Arsenović wrote:
> Afternoon,
> 
> Following changes in Texinfo 7.1 (uncertain which commit - haven't
> bisected) FFmpeg documentation no longer builds.  This is due to an init
> file (attached).  The following is a minimum reproducer:
> 
>   makeinfo --init-file=t2h.pm -o /dev/null /dev/null
> 
> The result:
> 
>   makeinfo: error parsing t2h.pm: Undefined subroutine
>   &Texinfo::Config::set_from_init_file called at t2h.pm line 24.

When I try to run it from within the texinfo-7.1 sources, I get another
error.  My guess is that the modules that is loaded corresponds to an
older version which did not have set_from_init_file, or where
set_from_init_file was called something else.


The error I get is:

~/src/texinfo-7.1/tp$ ./texi2any.pl --init-file=t2h.pm -o /dev/null /dev/null
texi2any: error parsing ./t2h.pm: Undefined subroutine 
&Texinfo::Config::get_conf called at ./t2h.pm line 130.

That's because since some versions, it is texinfo_get_conf that should
be used when directly called (not from a converter).  From within the
sources, when called as texi2any.pl, +dev is prepended, so here is how I
made it work:

my $texinfo_version = texinfo_get_conf('PACKAGE_VERSION');
$texinfo_version =~ s/\+dev$//;
# determine if texinfo is at least version 6.8
my $program_version_num = version->declare($texinfo_version)->numify;

-- 
Pat

Reply via email to