groff
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Groff] new groff directory structure


From: Eli Zaretskii
Subject: Re: [Groff] new groff directory structure
Date: Mon, 30 Oct 2000 19:43:19 +0200 (IST)

On Mon, 30 Oct 2000, Werner LEMBERG wrote:

> > > Maybe groff (the program) shall check how it is called.  If arg[0] is,
> > > say, groff-1.16.1, it takes the `-1.16.1' postfix and appends it to
> > > all programs it is calling, i.e., pic-1.16.1, grotty-1.16.1, etc.
> > 
> > I do NOT like the idea of groff checking how it is called. For one
> > thing, it complicates groff for unnecessary reasons.

Actually, modifying the program's behavior depending on argv[0] is 
against the current GNU coding standards.  I think standards.texi in its 
latest versions mentions this.

> For MSDOS (and Windows?) it might be necessary to replace the scripts
> with small binaries since batch files don't support pipes, AFAIK.

This depends on the implementation of the Groff pipeline and of the
library functions that are called when the pipeline is run by the groff 
driver.  For example, the DJGPP port of Groff will have no 
redirection-related problems with batch files, because it calls the shell 
to run each batch in sequence, and redirects the standard handles of the 
shell.

There is one problem with batch files, though: that they don't take a 
variable number of arguments too well.  So my vote would be against 
scripts and batch files.

> What about other packages with a couple of versioned binaries

GCC uses version-specific directories to find its subprograms (cc1, 
cc1plus, cpp, etc.).  So you have, say, gcc-2.7.2, gcc-2.8.1, and 
gcc-2.95.2 as 3 executables (one of them is typically hard-linked to 
gcc), and each one knows where to look for its subprograms.

However, there's a difference between GCC and Groff: GCC users never 
invoke cc1 or cc1plus from the command line.  So they don't need to be on 
your $PATH.  With Groff, this won't work, I think.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]