Skip to content

Help subsections

Jordy Aaldering requested to merge help-subsections into develop

sac2c -h and sac2c -help now provide the same debug information, instead of being different.

Namely, they print:

---------------------------------------------------------------------------
 SAC - Single Assignment C
---------------------------------------------------------------------------

Name:    sac2c
Version: 2.0.0-Tintigny-66-g15bb7-dirty

    The sac2c compiler transforms SAC source code into executable programs
    (SAC programs) or into a SAC specific library format (SAC module and
    class implementations), respectively.

    The compilation process is performed in 4 separate stages:
      1. sac2c uses any C preprocessor to preprocess the given SAC source;
         while doing so we expose some internals via debug-flags:
             SAC_BUILD_STYLE=<xyz>
             SAC_BACKEND_<xyz>
             SAC_BACKEND_STRING="<xyz>"
             SAC_TARGET_<xyz>
             SAC_TARGET_STRING="<xyz>"
             SAC_RC_<resource-entry>=<val> for all numeric entries
      2. sac2c itself transforms preprocessed SAC source code into C code;
      3. sac2c uses any C compiler to generate target machine code;
      4. sac2c uses any C linker to create an executable program
         or sac2c itself creates a SAC library file.

    When compiling a SAC program, sac2c stores the corresponding
    intermediate C code either in the file a.out.c in the current directory
    (default) or in the file <file>.c if <file> is specified using the -o
    option. Here, any absolute or relative path name may be used.
    The executable program is either written to the file a.out or to any
    file specified using the -o option.

    However, when compiling a SAC module/class implementation, the
    resulting SAC library is stored in the files <mod/class name>.a
    and  <mod/class name>.so in the current directory.
    In this case, the -o option may be used to specify a
    different directory but not a different file name.

HELP OPTIONS:

    -h desc         Print tool description.
    -h features     Print installation-specific feature set.
    -h options      Print general compiler options.
    -h typeinfer    Print type inferencing options.
    -h break        Print break options.
    -h print        Print printing options.
    -h fredfish     Print Fred Fish's debug options.
    -h debug        Print debug options.
    -h opt          Print optimization options.
    -h mt           Print multithreading options.
    -h cuda         Print CUDA options.
    -h distmem      Print distributed memory backend options (experimental).
    -h backend      Print backend options.
    -h feedback     Print compile-time feedback options.
    -h messaging    Print compile-time messaging options.
    -h rtcheck      Print runtime checking options.
    -h rttrace      Print runtime tracing options.
    -h rtprofile    Print runtime profiling options.
    -h cachesim     Print runtime cache simulation options.
    -h lib          Print library options.
    -h c            Print C compiler options.
    -h custom       Print customization options.
    -h env          Print environment variables.
    -h copyright    Print copyright information.
    -h contact      Print contact information.
    -h authors      Print authors.

CONTACT:

    WWW:    https://www.sac-home.org/
    E-Mail: info@sac-home.org

BUGS:

    Bugs??  We????

    SAC is a research project!

    SAC tools are platforms for scientific research rather than
    "products" for end users. Although we try to do our very best,
    you may well run into a compiler bug. So, we are happy to receive
    your bug reports (Well, not really "happy", but ...).

To print a specific subsection (help page), one can use sac2c -h thename or sac2c -help thename.

For example, features

---------------------------------------------------------------------------
 SAC - Single Assignment C
---------------------------------------------------------------------------

Name:    sac2c
Version: 2.0.0-Tintigny-66-g15bb7-dirty

INSTALLATION-SPECIFIC FEATURE SET:

 - default path to sac2crc:  /usr/local/share/sac2c/2.0.0-Tintigny-66-g15bb7-dirty/sac2crc_d
 - build path to sac2crc:    /home/jordy/Documents/sac2c/build_d/sac2crc_d
 - default path to libsac2c: /usr/local/libexec/sac2c/2.0.0-Tintigny-66-g15bb7-dirty
 - build path to libsac2c:   /home/jordy/Documents/sac2c/build_d/lib

Alternatively, sac2c -h all or sac2c -help all prints EVERYTHING.

Edited by Jordy Aaldering

Merge request reports