Provided by: chicken-bin_5.3.0-1.1build1_amd64 bug

NAME

       csc — driver program for the CHICKEN Scheme compiler

SYNOPSIS

       csc [OPTION ...] [FILENAME ...]

DESCRIPTION

       csc  is  a  program  that  invokes  the  CHICKEN  compiler and the host systems C compiler to generate an
       executable from a Scheme source file or C files generated by CHICKEN.

       FILENAME is a Scheme source file name with optional extension or a C/C++/Objective-C  source,  object  or
       library file name with extension.  OPTION may be one of the following:

       General options:

       -h, -help
               Display usage text and exit.

       -v, -verbose
               Show compiler notes and tool-invocations.

       -vv     Display information about translation progress.

       -vvv    Display information about all compilation stages.

       -version
               Display Scheme compiler version and exit.

       -release
               Display release number and exit.

       File and pathname options:

       -o FILENAME, -output-file FILENAME
               Specifies target executable name.

       -I PATHNAME, -include-path PATHNAME
               Specifies alternative path for included files.

       -to-stdout
               Write compiler to stdout (implies -t).

       -s, -shared, -dynamic
               Generate dynamically loadable shared object file.

       Language options:

       -D SYMBOL, -feature SYMBOL
               Register feature identifier.

       -no-feature SYMBOL
               Disable builtin feature identifier.

       -c++    Compile via a C++ source file (.cpp).

       -objc   Compile via Objective-C source file (.m).

       Syntax related options:

       -i, -case-insensitive
               Don't preserve case of read symbols.

       -K, -keyword-style STYLE
               Enable alternative keyword-syntax (prefix, suffix or none).

       -no-parentheses-synonyms
               Disables list delimiter synonyms.

       -no-symbol-escape
               Disables support for escaped symbols.

       -r5rs-syntax
               Disables the CHICKEN extensions to R5RS syntax.

       -compile-syntax
               Macros are made available at run-time.

       -j MODULE, -emit-import-library MODULE
               Write compile-time module information into separate file.

       -J, -emit-all-import-libraries
               Emit import-libraries for all defined modules.

       -no-compiler-syntax
               Disable expansion of compiler-macros.

       -m NAME, -module NAME
               Wrap compiled code in module of the given name.

       -M, -module-registration
               Always generate module registration code, even when import libraries are emitted.

       -N, -no-module-registration
               Do not generate module registration code. Overrides -module-registration.

       Translation options:

       -x, -explicit-use
               Do not use units ‘library’ and ‘eval’ by default.

       -P, -check-syntax
               Stop compilation after macro-expansion.

       -A, -analyze-only
               Stop compilation after first analysis pass.

       Debugging options:

       -w, -no-warnings
               Disable warnings.

       -d0, -d1, -d2, -d3, -debug-level NUMBER
               Set level of available debugging information.

       -no-trace
               Disable rudimentary debugging information.

       -profile
               Executable emits profiling information.

       -accumulate-profile
               Executable emits profiling information in append mode.

       -profile-name FILENAME
               Name of the generated profile information file.

       -types FILENAME
               Load additional type database.

       Optimization options:

       -O, -O0, -O1, -O2, -O3, -O4, -O5, -optimize-level NUMBER
               Enable certain sets of optimization options.

       -optimize-leaf-routines
               Enable leaf routine optimization.

       -no-usual-integrations
               Standard procedures may be redefined.

       -u, -unsafe
               Disable safety checks.

       -local  Assume globals are only modified in current file.

       -b, -block
               Enable block-compilation.

       -disable-interrupts
               Disable interrupts in compiled code.

       -f, -fixnum-arithmetic
               Assume all numbers are fixnums.

       -disable-stack-overflow-checks
               Disables detection of stack-overflows.

       -inline
               Enable inlining.

       -inline-limit LIMIT
               Set inlining threshold.

       -inline-global
               Enable cross-module inlining.

       -specialize
               Perform type-based specialization of primitive calls.

       -oi FILENAME, -emit-inline-file FILENAME
               Generate file with globally inlinable procedures (implies -inline -local).

       -consult-inline-file FILENAME
               Explicitly load inline file.

       -ot FILENAME, -emit-types-file FILENAME
               Write type-declaration information into file.

       -no-argc-checks
               Disable argument count checks.

       -no-bound-checks
               Disable bound variable checks.

       -no-procedure-checks
               Disable procedure call checks.

       -no-procedure-checks-for-usual-bindings
               Disable procedure call checks only for usual bindings.

       -no-procedure-checks-for-toplevel-bindings
               Disable procedure call checks for toplevel bindings.

       -strict-types
               Assume variable do not change their type.

       -clustering
               Combine groups of local procedures into dispatch loop.

       -lfa2   Perform additional lightweight flow-analysis pass.

       -unroll-limit LIMIT
               Specifies inlining limit for self-recursive calls.

       Configuration options:

       -unit NAME
               Compile file as a library unit.

       -uses NAME
               Declare library unit as used.

       -heap-size NUMBER
               Specifies heap-size of compiled executable.

       -nursery NUMBER -stack-size NUMBER
               Specifies nursery size of compiled executable.

       -X FILENAME, -extend FILENAME
               Load file before compilation commences.

       -prelude EXPRESSION
               Add expression to beginning of source file.

       -postlude EXPRESSION
               Add expression to end of source file.

       -prologue FILENAME
               Include file before main source file.

       -epilogue FILENAME
               Include file after main source file.

       -e, -embedded
               Compile as embedded (don't generate ‘main()’).

       -gui    Compile as GUI application.

       -link NAME
               Link extension with compiled executable (implies ‘-uses’).

       -R NAME, -require-extension NAME
               Require extension and import in compiled code.

       -dll, -library
               Compile multiple units into a dynamic library.

       -libdir DIRECTORY
               Override location of runtime library directory.

       Options to other passes:

       -C OPTION
               Pass option to C compiler.

       -L OPTION
               Pass option to linker.

       -I<DIR>
               Pass “-I<DIR>” to C compiler (add include path).

       -L<DIR>
               Pass “-L<DIR>” to linker (add library path).

       -k      Keep intermediate files.

       -c      Stop after compilation to object files.

       -t      Stop after translation to C.

       -cc COMPILER
               Select a C compiler other than the default.

       -cxx COMPILER
               Select a C++ compiler other than the default.

       -ld COMPILER
               Select a linker other than the default.

       -static
               Link with static CHICKEN libraries and extensions.

       -F<DIR>
               Pass “-F<DIR>” to C compiler (add framework header path on Mac OS X).

       -framework NAME
               Passed to linker on Mac OS X.

       -rpath PATHNAME
               Add directory to runtime library search path.

       -Wl,...
               Pass linker options.

       -strip  Strip resulting binary.

       Inquiry options:

       -home   Show home-directory (where support files go).

       -cflags
               Show required C-compiler flags and exit.

       -ldflags
               Show required linker flags and exit.

       -libs   Show required libraries and exit.

       -cc-name
               Show name of default C compiler used.

       -cxx-name
               Show name of default C++ compiler used.

       -ld-name
               Show name of default linker used.

       -dry-run
               Just show commands executed, don't run them (implies ‘-v’).

       Obscure options:

       -debug MODES
               Display debugging output for the given modes.

       -compiler PATHNAME
               Use a compiler other than the default ‘chicken’.

       -raw    Do not generate implicit init- and exit code.

       -emit-external-prototypes-first
               Emit prototypes for callbacks before foreign declarations.

       -regenerate-import-libraries
               Always emit import libraries, even when their contents haven't changed.  The default behaviour is
               to preserve existing import libraries.

       -ignore-repository
               Do not refer to repository for extensions.

       -keep-shadowed-macros
               Do not remove shadowed macros.

       -host   Compile for host when configured for cross-compiling.

       -private-repository
               Load extensions from executable path.

       -deployed
               Link  support  file to be used from a deployed executable (sets ‘rpath’ accordingly, if supported
               on this platform.)

       -no-elevation
               Embed manifest on Windows to supress elevation warnings for programs named ‘install’ or ‘setup’.

       Options can be collapsed if unambiguous, so “-vkfO” is the same as “-v -k -fixnum-arithmetic -optimize”.

ENVIRONMENT

       The following environment variables change the behaviour of csc:

       CSC_OPTIONS  Can hold default options that should be passed to every invocation of csc.

EXIT STATUS

       The csc utility exits 0 on success, and >0 if an error occurs.

SEE ALSO

       chicken(1)

       More information can be found in the CHICKEN User's Manual: http://wiki.call-cc.org/manual/index.

AUTHORS

       The CHICKEN Team

BUGS

       Submit bug reports by e-mail to chicken-janitors@nongnu.org

Debian                                            Apr 26, 2017                                            CSC(1)