build-error with texinfo 5.1

Bug #1181678 reported by Andreas Metzler on 2013-05-19
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Enblend
Low
Christoph Spiel
enblend (Gentoo Linux)
Fix Released
Medium

Bug Description

Hello,

documentation generation fails with texinfo 5.1. texinfo seems to have stopped supporting colons in variable names (@set <-> @value), causing errors like this one:
-----
doc/enfuse.texi:564: bad syntax for @value
-----

According to texinfo 5.1 documentation basically the only thing guaranteed to work are alpha-numericals:

Subsequent characters, if any, may not be whitespace, ‘@’, braces, angle brackets, or any of ‘~`^+|’; other characters, such as ‘%’, may work. However, it is best to use only letters and numerals in a flag name, not ‘-’ or ‘_’ or others—they will work in some contexts, but not all, due to limitations in TeX.

cu Andreas

See http://bugs.debian.org/708800 or https://bugzilla.redhat.com/show_bug.cgi?id=919935

Christoph Spiel (cspiel) wrote :

If you pull from the repo, you'll get pseudo-namespace free documentation,
for I dropped all prefixes "CFG::" and "src::". Maybe, crown-of-stupidity
Texinfo-5.x won't barf on this one.

OTOH, I'd rather replace Texinfo with Hevea than removing the dashes from
(Texinfo-)variable names like `visualize-state-space-unconverged-color' (and
another 97 like this one).

Hello,

thanks for trying, there is still some stuff texinfo fails on. - See attached log.

cu Andreas

Christoph Spiel (cspiel) wrote :

THX for feeding the doc into Texinfo-5.1 again.
I'm still on makeinfo-4.13, so I cannot check myself yet.
Thus, the problem will remain unless someone sends us a patch.

On a medium time-scale I'm inclined to switch to plain LaTeX
and drop Texinfo. The vast majority of users doesn't read the
documentation at all. The rest prefers PDF. Or whatever HTML,
if it only is on a public server.

Hello,

I have /somehow/ succeeded with these steps:
#1 Drop geq and leq macros from auxmac.texi.
#2 Make sure any macro-reference on a macro using a conditional is on a line of its own. (@classictimes, @semilog,
@inline*)
#3 Drop "export TEXINPUTS=$(top_builddir):$(srcdir)" from doc/Makefile.am

#1 should be safe to do, the macros are marked with "Required for older versions of makeinfo" anyway.
#3 Seems to be correct.

Regarding #2 the texinfo documentation says "Macros containing a command which must be on a line by itself, such as a conditional, cannot be invoked in the middle of a line." This breaks the formatting, though e.g. changing the input like this
-----------------------------
-@math{width}@classictimes{}@math{height}@tie{}pixels cannot be
+@math{width}
+@classictimes{}
+@math{height}@tie{}pixels cannot be
----------------------------
adds unwanted whitespace in the output:
---------------------------
-an image of widthxheight pixels cannot be
+an image of width xheight pixels cannot be
---------------------------
cu Andreas

Christoph Spiel (cspiel) wrote :

THX for tracking down the problems in detail.

#1: Patch in my local repo; probably will be applied.
#2: Screwing up the output is not the way to go. We can
    prevent unwanted whitespace from occurring by terminating
    the relevant lines with `@c', though:
        @classictimes{}@c
    thereby violating your rule "... line by itself".
#3: Breaks my build -- LOL.
    $ makeinfo --version
    makeinfo (GNU texinfo) 4.13

Changed in enblend:
status: New → Triaged
importance: Undecided → Low
Download full text (10.1 KiB)

media-gfx/enblend-4.1.1 fails to build its texinfo manual on my system. I guess that this is in part due to my using sys-apps/texinfo-5.1, but it would be good if someone could confirm this, so that we can add this problem here to the tracker bug #464362, and also report this upstream appropriately.

if /bin/sh /var/tmp/portage/media-gfx/enblend-4.1.1/work/enblend-enfuse-4.1.1/missing --run makeinfo -I .. -I . -I . \
 -o enblend.info enblend.texi; \
then \
  rc=0; \
  CDPATH="${ZSH_VERSION+.}:" && cd .; \
else \
  rc=$?; \
  CDPATH="${ZSH_VERSION+.}:" && cd . && \
  $restore $backupdir/* `echo "./enblend.info" | sed 's|[^/]*$||'`; \
fi; \
rm -rf $backupdir; exit $rc
./auxmac.texi:9: warning: redefining Texinfo language command: @dmn
./auxmac.texi:119: warning: redefining Texinfo language command: @geq
./auxmac.texi:136: warning: redefining Texinfo language command: @leq
enblend.texi:451: bad syntax for @value
enblend.texi:451: misplaced {
enblend.texi:451: misplaced }
enblend.texi:511: warning: @ifinfo should only appear at a line beginning (possibly involving @power)
enblend.texi:511: warning: unknown @end docbook-pixel (possibly involving @power)
enblend.texi:513: warning: @ifinfo should only appear at a line beginning (possibly involving @classictimes)
enblend.texi:513: warning: unknown @end docbookheight (possibly involving @classictimes)
enblend.texi:591: bad syntax for @value
enblend.texi:592: bad syntax for @value
enblend.texi:594: @item outside of table or list
enblend.texi:595: @itemx outside of table or list
enblend.texi:600: bad syntax for @value
enblend.texi:600: misplaced {
enblend.texi:600: misplaced }
enblend.texi:604: bad syntax for @value
enblend.texi:606: @item outside of table or list
enblend.texi:621: @item outside of table or list
enblend.texi:622: @itemx outside of table or list
enblend.texi:659: bad syntax for @value
enblend.texi:661: @item outside of table or list
enblend.texi:662: @itemx outside of table or list
enblend.texi:670: @item outside of table or list
enblend.texi:671: @itemx outside of table or list
enblend.texi:1075: @item outside of table or list
enblend.texi:1081: `@end' expected `docbook', but saw `table'
enblend.texi:1081: `@end' expected `docbook', but saw `table'
enblend.texi:1197: warning: @ifinfo should only appear at a line beginning (possibly involving @semilog)
enblend.texi:1199: warning: @ifinfo should only appear at a line beginning (possibly involving @semilog)
enblend.texi:1201: warning: @ifinfo should only appear at a line beginning (possibly involving @semilog)
enblend.texi:1213: warning: @ifinfo should only appear at a line beginning (possibly involving @semilog)
enblend.texi:1215: warning: @ifinfo should only appear at a line beginning (possibly involving @semilog)
enblend.texi:1217: warning: @ifinfo should only appear at a line beginning (possibly involving @semilog)
enblend.texi:1239: warning: @ifinfo should only appear at a line beginning (possibly involving @semilog)
enblend.texi:1241: warning: @ifinfo should only appear at a line beginning (possibly involving @semilog)
enblend.texi:1243: warning: @ifinfo should only appear at a line beginning (possibly involving @semilog)
enblend.te...

1) Please attach the entire build log to this bug report.
2) Please post your `emerge --info' output in a comment.

Created attachment 355274
build log

Download full text (8.1 KiB)

(In reply to Jeroen Roovers from comment #1)
> 1) Please attach the entire build log to this bug report.
> 2) Please post your `emerge --info' output in a comment.

Do you really want this stuff in a comment? I for one find these pastes very annoying when reading comments, since they are a lot of text with usually little useful information. If I were a dev, I'd want them as attachments, so that's usually what I do as a reporter as well. In this case I thought I knew the cause of the problem, and texinfo versions aren't even included in this report. But I'll play along if you insist.

$ emerge --info =media-gfx/enblend-4.1.1
Portage 2.2.0_alpha194 (default/linux/amd64/13.0/desktop/kde, gcc-4.7.3, glibc-2.17, 3.10.4-gentoo x86_64)
=================================================================
 System Settings
=================================================================
System uname: Linux-3.10.4-gentoo-x86_64-AMD_Phenom-tm-_II_X4_945_Processor-with-gentoo-2.2
KiB Mem: 15672916 total, 2637896 free
KiB Swap: 6836220 total, 6832880 free
Timestamp of tree: Tue, 06 Aug 2013 05:45:01 +0000
ld GNU ld (GNU Binutils) 2.23.2
distcc 3.1 x86_64-pc-linux-gnu [disabled]
ccache version 3.1.9 [disabled]
app-shells/bash: 4.2_p45
dev-java/java-config: 2.2.0::java
dev-lang/python: 2.5.4-r6, 2.6.8-r2, 2.7.5-r1, 3.1.5-r1, 3.2.5-r1, 3.3.2-r1
dev-util/ccache: 3.1.9
dev-util/cmake: 2.8.11.1
dev-util/pkgconfig: 0.28
sys-apps/baselayout: 2.2
sys-apps/openrc: 0.11.8
sys-apps/sandbox: 2.6-r1
sys-devel/autoconf: 2.13, 2.69
sys-devel/automake: 1.9.6-r3, 1.10.3, 1.11.6, 1.12.6, 1.13.4, 1.14
sys-devel/binutils: 2.23.2
sys-devel/gcc: 3.4.6-r2, 4.1.2, 4.5.4, 4.6.4, 4.7.3
sys-devel/gcc-config: 1.8
sys-devel/libtool: 2.4.2
sys-devel/make: 3.82-r4
sys-kernel/linux-headers: 3.9 (virtual/os-headers)
sys-libs/glibc: 2.17
Repositories: sunrise-enabled ldc bump gentoo java generated sage-on-gentoo bugfix mvg-java-experimental mvgLocal
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA dlj-1.1 sun-bcla-java-vm Oracle-BCLA-JavaSE skype-eula skype-4.0.0.7-copyright googleearth AdobeFlash-10.3 AdobeFlash-11.x PUEL"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=amdfam10 -O2 -ggdb -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/maven-bin-3.0/conf /usr/share/maven-bin-3.1/conf /usr/share/polkit-1/actions /usr/share/themes/oxygen-gtk/gtk-2.0 /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/apache2-php5.5/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cgi-php5.5/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/php/cli-php5.5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
C...

Read more...

Still happens with media-gfx/enblend-4.1.2. Can this please block #464362 ?

Created attachment 366370
Fix some of texinfo errors

This is proof of concept patch (hint what is wrong). Fix only half of the errors.
(Sorry I'm in hurry)

media-gfx/enblend-4.1.3 with sys-apps/texinfo-5.2 still broken.

Changed in enblend (Gentoo Linux):
importance: Unknown → Medium
status: Unknown → New

Looks like Fedora opted for workarounding this preventing the rebuilding of the files:
http://pkgs.fedoraproject.org/cgit/enblend.git/commit/?id=1cb4748809b1aaef6821d4d6186a56152e2a8b41

Look at:
+# set MAKEINFO to allow use of pregenerated .info files, and avoid
+# problems with texinfo-5.x ( see https://bugzilla.redhat.com/919935 )
+(cd doc && make pdf MAKEINFO=/bin/true )
+
+make %{?_smp_mflags}

Added workaround, keeping this bug open until upstream bug is fixed.

  22 Oct 2014; Markus Meier <email address hidden> enblend-4.1.3.ebuild:
  work around sys-apps/texinfo-5.1 incompatibility for bug #479978 and fix doc
  path

Changed in enblend (Gentoo Linux):
status: New → Unknown

*** Bug 555126 has been marked as a duplicate of this bug. ***

Christoph Spiel (cspiel) wrote :

Made to work again in the "Stable Branch" in rev 8387f0170f7b:
    http://hg.code.sf.net/p/enblend/code/rev/8387f0170f7b
Thus, the problem will be solved in the next patch-level,
i.e. version 4.1.4.

The issue does not apply to "Development Branch" because
Texinfo as source of the documentation was replaced with
pure LaTeX.

Changed in enblend:
status: Triaged → Fix Committed
assignee: nobody → Christoph Spiel (cspiel)

commit 13d95cfe56b912f73214117a4af28560370305a4
Author: Sebastian Pipping <email address hidden>
Date: Fri Aug 14 03:22:28 2015 +0200

    media-gfx/enblend: Fix texinfo compilation (bug #479978)

    Upstream patch (with version patching removed) from
    https://bugs.launchpad.net/enblend/+bug/1181678/comments/16
    http://hg.code.sf.net/p/enblend/code/rev/8387f0170f7b

    Signed-off-by: Sebastian Pipping <email address hidden>

 media-gfx/enblend/enblend-4.1.3-r1.ebuild | 79 +++
 .../files/enblend-4.1.3-texinfo-5-more.patch | 82 +++
 .../files/enblend-4.1.3-texinfo-5-upstream.patch | 633 +++++++++++++++++++++
 3 files changed, 794 insertions(+)

How do we proceed? Is a fix for 4.1.1 needed too or does stabilizing 4.1.3-r1 suffice? Is that an option?

commit add7eb2e0a138b25c98cbef9ce286ac830754faa
Author: Sebastian Pipping <email address hidden>
Date: Sun Aug 16 20:14:36 2015 +0200

    media-gfx/enblend: Fix texinfo compilation (bug #479978)

 media-gfx/enblend/enblend-4.1.1-r3.ebuild | 79 +++
 .../files/enblend-4.1.1-texinfo-5-upstream.patch | 617 +++++++++++++++++++++
 2 files changed, 696 insertions(+)

Christoph Spiel (cspiel) wrote :

Fixed in 4.1.4. Version 4.2 does not use Texinfo,
so the problem does not occur.

Changed in enblend:
status: Fix Committed → Fix Released
Changed in enblend (Gentoo Linux):
status: Unknown → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.