The Babel tool, applied to a SIDL file, results in
the automatic
generation of the associated skeleton and/or stub
source files. The
Babel user then need only add the necessary code
to the impl source
files to complete the provision of a language-independent
interface
to the package described by the SIDL file.
The languages currently
supported by Babel on the server-side are C, C++,
and F77. On the
client-side, Babel supports C, C++, F77, and Python.
-g | --generate-subdirs
Place the generated code
in subdirectories matching the package hierarchy rather
than in the current directory.
--generate-sidl-stdlib
Generate skeleton and impl
files for the SIDL base classes. It is used by Babel
developers to regenerate
the SIDL base classes in the runtime directory after
a change has been made to
sidl.sidl.
-h | --help
Default option. Display
the command line options before exiting.
--no-repository-default
Prohibit the use of the
repositoryDefault
in finding repositories to resolve symbols.
-ooutputdirectory |
--output-directory=outputdirectory
Identify the output directory
to be used as the root of the distribution. By default,
the output directory is
'.'.
-p | --parse-check
Only parse the specified
SIDL file. That is, do not generate the associated code.
-Rurlpath | --repository-path=urlpath
Set the search path for
symbol repositories to the specified, semicolon-separated
list of URLs. The
urlpath is used to search for repositories to resolve symbols.
-stargetlanguage |
--server=targetlanguage
Generate, in the specified
language, the server code (i.e., the stubs, iors, skeletons,
and impls). The targetlanguage
can be one of C, C++, F77, and Python.
--suppressTimestamp
Suppress timestamps on the
generated files. This feature is useful for avoiding
revisions based solely on
changes to the file generation timestamp embedded
within the generated source
codes.
-v | --version
Display the Babel compiler
version before exiting.
-x | --xml
Generate SIDL's XML.
This is used to update the XML in the repository.
Note: One and only one of the following options can be specified
on a given command line:
-c, --client, -s, --server, --generate-sidl-stdlib,
-x, --xml, -p, --parse-check,
-h, --help, -v, --version.
% $BABEL_HOME/babel/bin/babel
-sC++ ../hello.sidl
This generates the C++ server sources (i.e., -sC++) along
with the associated
makefile fragment, called babel.make, placing all of the generated
files in the
current directory. The SIDL file, called hello.sidl, is assumed
to be in the directory
immediately above the current one.
% $BABEL_HOME/babel/bin/babel
-cc hello.sidl
This generates the C client bindings (i.e., -cc) and the makefile
fragment, called
babel.make, associated with the C stub for the interface defined in
hello.sidl.