
Ioctl extension. The idea is to have an easily extensible module for getting
the value of the C Ioctl constants. The .xs file is automatically rebuilt
from the Ioctl.def and xsproto file, and likewise the .pm file is generated
from Ioctl.def and pmproto. Any local additions that need to be included
should go in Ioctl.def (where, incidentally, they won't be wiped out if you
install a new version on top of this one.) Ioctl by default exports all of
it's symbols, so you probably should override this with the standard
modifier ("use Ioctl qw(TCFLSH TCXONC);".) You can directly refer to
unexported constants via "Ioctl::SymbolName". If you try to use a constant
that the local headers don't supply, Ioctl will die with a message about
"Your vendor doesn't supply `x'...". If, on the other hand, you ask for a
constant (either via a direct Ioctl:: reference or on the use line) that
Ioctl knows nothing about (that isn't present in genconst.pl or Ioctl.def),
then it will die with an error message stating the name of the unknown
constant, and give directions to where the Constants.def file is (assuming
the build location is still intact) and how to edit it to include the
constant.

Genconst.pl also supplies constants and preproccesor/C code. Any changes to
the master distribution will be made there, but any site local changes
should be made in Ioctl.def. This way, genconst.pl can be patched in future,
while leaving your local improvements/munging alone.

- Ken (kjahds@kjahds.com, CIS:70705,126)
