Rechercher une page de manuel
babel120
Langue: en
Version: 250761 (debian - 07/07/09)
Section: 1 (Commandes utilisateur)
NAME
babel - Babel compiler
SYNOPSIS
babel [-h | --help ] | [ -v | --version ] | [ [ -ctargetlanguage | --client=targetlanguage | -stargetlanguage | --server=targetlanguage | -x | --xml | -p | --parse-check | -ttargetform | --text=targetform | --generate-sidl-stdlib ] [ -ooutputdirectory | --output-directory=outputdirectory ] [ -eregexpression | --exclude=regexpression ] [ -g | -- generate-subdirs ] [ -Rurlpath | --repository-path=urlpath ] [ --suppress-timestamp] [ --no-default-repository ] sidlfilename1 [, sidlfilename2, ... ] ]
DESCRIPTION
Babel is a language interoperability tool intended for use by the high- performance scientific computing community. Developed by the Components project at Lawrence Livermore National Laboratory, Babel supports the Scientific Interface Definition Language (SIDL) for the language-independent declaration of interfaces associated with scientific software packages.
The Babel tool, applied to a SIDL file or the corresponding XML files, results in the automatic generation of the associated skeleton, stub, or text files. That is, source files for the client and/or server can be automatically generated. Alternatively, text files containing XML or SIDL can automatically be generated. For server side source code, the Babel user 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++, F77, F90, Java, and Python. On the client-side, Babel supports C, C++, F77, F90, and Python. The textual representations that can be generated from SIDL or XML are XML and SIDL.
OPTIONS
-ctargetlanguage | --client=targetlanguage Generate, in the specified language, only the client code (i.e., the stubs and ior headers). The targetlanguage can be one of C, C++, F77, Java, and Python.
-eregexpression | --exclude=regularexpression Do not generate code or text corresponding to the symbols matching the regular expression. This option requires JRE 1.4 virtual machine or higher.
--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.
-ttargetform | --text=targetform Generate text in the specified target format. The targetform can be one of XML and SIDL. If XML, the repository will be updated.
-v | --version Display the Babel compiler version before exiting.
-x | --xml DEPRECATED. Use --text=XML or -tXML instead. Generate SIDL's XML and update 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, -t, --text, -p, --parse-check, -h, --help, -v, --version.
EXAMPLES
The examples included here are taken from the Babel 101 tutorial and assume BABEL_HOME points to the directory into which you installed the Babel distribution.
% $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.
SEE ALSO
A tutorial on the use of Babel to create a "Hello World!" program using SIDL can be found in Babel 101. An example of a more involved SIDL file illustrating the interface for the hypre library is also available along with the SIDL grammar. Crash courses are also available on SIDL Arrays and Fortran 77.
Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre