globus-wsrf-cgen — Generate Stubs/Skeletons in C



Tool description

This tool generates C bindings from a set of WSDL schema files. The tool is able to generate client bindings, service bindings, just types, or all three. The WSDL to C mapping document gives more information on how WSDL is mapped to the C programming language.

Command syntax

Run: globus-wsrf-cgen -help

globus-wsrf-cgen [-help][-s <package name>][-f <flavor>] \
                 [-p <prefix file>][-P <prefix>][-r <relative path>] \
                 [-d <output dir>][-N <namespace>][-n <file>] \
                 [-G <namespace>][-g <file>][-np][-nk][-nf <function>][-ns] \
                 <wsdl schema>

    This command generates client side bindings in C from a WSDL schema file.

    Optional arguments:

     -help, -usage          : displays this message
     -s <package name>      : name used to create the package.  Defaults to
                              the service name from the WSDL schema. This
                              argument is required, unless -no-package is
     -flavor <flavor>
     -fl <flavor>           : Specifies build flavor for the bindings package
                              e.g. gcc32dbg.  This option is required, unless
                              -no-package or -no-tarball is specified.
     -p <file>              : location of the Namespace to Prefix mappings
     -P <prefix map>        : additional Namespace to Prefix mapping specified
                              on the command line.  This argument should be
                              be formatted as <prefix>=<namespace>.
     -N <namespace>         : Namespace to generate types for.  -N arguments
                              limit which types are generated.  Multiple
                              -N arguments can be combined with -n args.
                              With -N or -n arguments, -G and -g arguments 
                              are ignored.
     -n <file>              : File with Namespaces to generate types for.
                              One namespace per line.  See -N for further info.
     -G <namespace>         : Namespace to NOT generate types for.  If -N
                              or -n are specified, -G arguments are ignored.
     -g <file>              : File with Namespaces to NOT generate types for.
                              If -N or -n are specified, -g arguments are 
     -r <relative path>     : the relative path where generated headers are
                              install into.  $GL/include/<flavor>/<relpath>
     -d <output dir>        : directory to put the generated files in
     -np                    : No package creation.  Just generate files.
     -nb                    : Package files are created, but no package 
                              tarball is generated.  -np implies -nt
     -no-func <func>
     -nf <func>             : No generation of the function <func>.  e.g.
                              wsnt_TopicExpressionType_deserialize.  This
                              option is useful if you want to write your
                              own marshalling functions for a given type.
     -nk                    : No skeleton source file generation
     -ns                    : No service.  Only generate client bindings 
                              and types.  -ns implies -nk.
     -nc                    : No client.  Only generate service bindings 
                              and types.  
     -nt                    : No types.  Only generate client and
                              service bindings.

    Required Argument:
     <wsdl schema>          : the WSDL schema to generate client side bindings


  • Only generates bindings from document/literal style WSDL schemas. For more information on WSDL schema styles, go here.
  • Only generates ANSI-C bindings. C++ bindings are not supported.