[NTG-pdftex] Changing the pdfTeX banner for Debian-specific changes
frank at debian.org
Fri Mar 24 09:57:33 CET 2006
this might already be resolved - we're still dealing with pdfTeX 1.21a
in teTeX -, but also not, and therefore interest you.
Julian Gilbey <jdg at polya.uklinux.net> wrote:
>> >> as requested by Martin Schr?der, the pdfTeX maintainer, I'd like to add
>> >> something about libpoppler to the "pdeftex --version" output or the
>> >> general banner, but I don't manage. According to him, it should be
>> >> sufficient to change texk/web2c/pdfetexdir/pdfetexextra.in, but that
>> >> doesn't have any effect here - probably we have such an ancient version
>> >> (1.20 instead of 1.40 in which he is thinking...).
>> > Just modifying the #define BANNER=... line in that file does it for
>> > me.
>> Strange - I tried and got funny results, e.g. after changing
>> #define BANNER "This is pdfeTeX, Version 3.141592-PDFTEX-VERSION-ETEX-VERSION"
>> #define BANNER "This is not pdfeTeX, Version 3.141592-PDFTEX-VERSION-ETEX-VERSION"
>> it printed "not pdfeTeX..." instead of "This is pdfeTeX..."
> With the normal version, compare:
> burnside:~ $ pdfetex --version
> pdfeTeX 3.141592-1.21a-2.2 (Web2C 7.5.4)
> kpathsea version 3.5.4
> Copyright (C) 1997-2004 Peter Breitenlohner (eTeX)/Han The Thanh (pdfTeX).
> Kpathsea is copyright (C) 1997-2004 Free Software Foundation, Inc.
> burnside:~ $ pdfetex
> This is pdfeTeX, Version 3.141592-1.21a-2.2 (Web2C 7.5.4)
> It turns out that when producing the version string for --version in
> lib/printversion.c, function printversionandexit, the leading prefix
> "This is " is stripped off from the banner name. Furthermore, the
> banner string is parsed like this:
> "This is pdfeTeX, Version 3.141592-PDFTEX-VERSION-ETEX-VERSION"
> ^^^^^^^^------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> stripped name progversion
> where "This is " is stripped, the prog name goes up to the first
> comma, and the progversion is everything after the final space; then
> the first line of the --version output is:
> name progversion (Web2C-version)
Therefore it is indeed hard to add information about local changes,
which naturally would be at the end (after an additional space).
> So if all is wanted is to tweak the banner line, there are two ways to
> do it:
> (1) Hackish: define BANNER to be something like:
> "This is pdfeTeX with Debian tweaks, Version 3.141592-PDFTEX-VERSION-ETEX-VERSION"
I'll go that way, but I'd appreciate if in future versions it would be
possible to just add a "local_changes_remark" at an appropriate place
(either the end of the line, or an additional line.
> (2) Actually modify the printversionandexit code in lib/printversion.c
> to output something like:
> string debianversion = "(Debian version blah)";
> len = prog_name_end - banner - sizeof ("This is") + sizeof(debianversion);
> prog_name = (string)xmalloc (len + 1);
> strncpy (prog_name, banner + sizeof ("This is"), len);
> prog_name[len] = 0;
> /* The Web2c version string starts with a space. */
> printf ("%s %s%s %s\n", prog_name, prog_version, versionstring, debianversion);
> and a similar change in one of the change files.
> But the latter seems like hard work :/
Should I open a feature request?
Single Molecule Spectroscopy, Protein Folding @ Inst. f. Biochemie, Univ. Zürich
Debian Developer (teTeX)
More information about the ntg-pdftex