Provided by: nescc_1.3.5-1_amd64 bug

NAME

       nescc-ncg - extract constants from nesC files

SYNOPSIS

       nescc-ncg [any nescc option] [tool-specific options]
                 [-o output-file] [-nescc=driver]
                 tool nesC-file filenames-or-constant-names...

DESCRIPTION

       nescc-ncg  is a tool to extract constants from nesC files for use with other applications.
       It is typically used in conjunction with nescc-mig (which generates code to  process  nesC
       messages)  to  extract  constants  that  are  used in particular messages (e.g., constants
       representing various commands).

       The tool argument specifies what tool should be generated, the nesC-file specifies a  nesC
       file  which uses the constants you want to extract.  If your constants are all in a single
       .h file that does not depend on any other files, then you can specify the .h file directly
       as  the  msg-format-file. Note that if some of your constants are defined with unique(...)
       or uniqueCount(...), you must specify your whole application as the nesC-file, or you will
       not get the correct constant values.

       Each  filenames-or-constant-names  is  either  a  constant  name  (if  it consists only of
       letters, numbers and _) or a filename. In the former case, the specified constant will  be
       extracted,  in  the latter case all constants from the specified C file will be extracted.
       Only constants declared in C files will be found by nescc-ncg.

       The current tools are java, python and C, which generate java,  python  and  C  code  that
       contains the values of the requested constants.

OPTIONS

       You can pass any nescc option, as well as

       -o output-file
              Specify the file in which to output the generated code.

       -nescc=driver
              Use  driver  instead  of  nescc  to extract constants.  For example, if you specify
              -nescc=ncc, you can use nescc-ncg to extract  constants  from  TinyOS  applications
              (which are normally compiled with ncc).

       tool-specific options
              See below.

JAVA TOOL

       This  tool  generates  a  java  class  with  the values of the requested constants.  These
       constants will be public final static and have a type chosen from byte, short, char,  int,
       long (the chosen type will be the first one in this list that can hold the constants value
       - this reduces the need for casts).

       The java tool accepts the following options:

       -java-classname=full-class-name
              This option is required and specifies the package and name of the generated  class.
              If  the  full-class-name  has  no '.', then no package directive is included in the
              output.

       -java-extends=class-name
              Specify the class the generated class will extend. The default is Object.

PYTHON TOOL

       This tool generates a Python class with the values  of  the  requested  constants.   These
       constants will be class (rather than instance) variables.

       The Python tool accepts the following options:

       -python-classname=full-class-name
              This option is required and specifies the name of the generated class.

       -python-extends=class-name
              Specify  the  class  the  generated  class  will  extend.  The default is is to not
              inherit.

C TOOL

       This tool generates a C header file with the values of the requested constants (defined as
       enum constants).

       The C tool accepts the following option:

       -c-prefix=prefix
              This option specifies a prefix to attach to the generated constants.

ERRORS

       nescc-ncg reports an error if ncc cannot compile nesC-file.

SEE ALSO

       nescc(1), nescc-mig(1)

                                          April 27, 2004                             nescc-ncg(1)