In 5.7, there is only one program which has both cmd and inter
versions, namely g.mapsets, for which the inter version simply
executes etc/g.mapsets.tcl.
In light of this, I'd like to suggest eliminating front.end and the
etc/bin/{cmd,inter} directories, and putting the programs directly
into the bin directory.
In the case of g.mapsets, and any programs which may subsequently be
added which have separate cmd and inter versions, the cmd version
would be responsible for executing the inter version.
The change required to g.mapsets (and similar programs) would be
trivial, e.g.:
if (argc < 2)
execl("/bin/sh", "sh", "-c", "$GISBASE/etc/g.mapsets.tcl", NULL);
The only other changes would be to the build system; essentially,
changing Module.make plus a few Makefiles which have their own rules:
db/base/Makefile
display/d.frame/Makefile
general/manage/cmd/Makefile
raster/r.mapcalc/Makefile
raster/r.le/r.le.setup/polytocell/Makefile
raster/r.terraflow/Makefile
Oh; some the existing inter programs might need to perform the
no-arguments check ("This command must be run interactively")
themselves. Although there are only six of them in 5.7 (g.access,
g.mapsets, g.setproj, i.class, i.points, r.le.setup).
--
Glynn Clements <glynn.clements@virgin.net>