The idl command invokes the IDL compiler to convert an interface
definition, written in IDL, into output files. The output files include
a header file, server stub file, client stub file, and auxiliary files.
The compiler constructs the names of the output files by keeping the
basename of the interface definition source file but replacing the
filename extension with the new extension (or suffix and extension)
appropriate to the newly generated type of output file. For example,
math.idl could produce math_sstub.c or math_sstub.o for the server stub.
The idl command accepts the following input:
+ An interface definition filename.
+ Arguments to indicate either special actions to be performed by the
compiler, or special properties of the input or output files.
The IDL compiler searches through directories for any related ACF.
For example, if you compile a file named source.idl, the compiler
automatically searches for a file named source.acf. The compiler also
searches for any imported IDL file (and its related ACF). The compiler
searches for these files using the following order:
1. The current working directory. The compiler always searches this
directory unless you specify the -no_def_idir and -Idirectory
arguments together.
2. Any imported directory. The compiler searches each directory you
are specifying in the -Idirectory argument.
3. The system IDL directory. The compiler automatically imports
nbase.idl, which resides in the system IDL directory. The compiler
always searches this directory unless you specify the -no_def_idir
argument.
4. The directory specified in the source filename. If you explicitly
specify a directory in the source IDL pathname, then that directory
is searched for the corresponding ACF. For example,
$ idl usera:[my_dir]my_source.idl
causes the IDL compiler to look for usera:[my_dir]my_source.acf
if my_source.acf is not found in the directories in 1,2 and 3.
Note that this directory is not searched for any imported IDL file
or its corresponding ACF.
Restrictions
The following filenames are reserved by the IDL compiler. Naming an IDL
file with one of these names may result in unexpected behavior.
iovector.idl lbase.idl nbase.idl ncastat.idl
ndrold.idl rpc.idl rpcbase.idl rpcpvt.idl
rpcsts.idl rpctypes.idl twr.idl uuid.idl