Configure.pl - Parrot's Configuration Script
    % perl Configure.pl [options]
This is Parrot's configuration script. It should be run to create the necessary system-specific files before building Parrot.
General Options
--help 
- Prints out a description of the options and exits.
 
--version 
- Prints out the version number of Configure.pl and exits.
 
--verbose 
- Tells Configure.pl to output extra information about the configuration data it is setting.
 
--verbose=2 
- Tells Configure.pl to output information about i<every> setting added or changed.
 
--verbose-step={N|regex} 
- Run 
--verbose=2 for step number N or matching description. 
--nomanicheck 
- Tells Configure.pl not to run the MANIFEST check.
 
--prefix 
- Sets the location where parrot will be installed.
 
--ask 
- This turns on the user prompts.
 
Compile Options
You can add and remove option values with :rem{<opt>} and :add{<opt>}. For example:
    perl Configure.pl --ccflags=":rem{-g} :add{-O2}"
--debugging=0 
- Debugging is turned on by default. Use this to disable it.
 
--parrot_is_shared 
- Link parrot dynamically.
 
--profile 
- Turn on profiled compile (gcc only for now)
 
--optimize 
- Add perl5's $Config{optimize} to the compiler flags.
 
--optimize=flags 
- Add 
flags to the compiler flags. 
--inline 
- Tell Configure that the compiler supports 
inline. 
--cc=(compiler) 
- Specify which compiler to use.
 
--ccflags=(flags) 
- Use the given compiler flags.
 
--ccwarn=(flags) 
- Use the given compiler warning flags.
 
--cxx=(compiler) 
- Specify which C++ compiler to use (for ICU).
 
--libs=(libs) 
- Use the given libraries.
 
--link=(linker) 
- Specify which linker to use.
 
--linkflags=(flags) 
- Use the given linker flags
 
--ld=(linker) 
- Specify which loader to use for shared libraries.
 
--ldflags=(flags) 
- Use the given loader flags for shared libraries
 
--lex=(lexer) 
- Specify which lexer to use.
 
--yacc=(parser) 
- Specify which parser to use.
 
--define=val1[,val2] 
- Generate "#define PARROT_DEF_VAL1 1" ... entries in has_header.h. Currently needed to use inet_aton for systems that lack inet_pton:
 
  --define=inet_aton
Parrot Options
--intval=(type) 
- Use the given type for 
INTVAL. 
--floatval=(type) 
- Use the given type for 
FLOATVAL. 
--opcode=(type) 
- Use the given type for opcodes.
 
--ops=(files) 
- Use the given ops files.
 
--pmc=(files) 
- Use the given PMC files.
 
--cgoto=0 
- Don't build cgoto core. This is recommended when you are short of memory.
 
--jitcapable 
- Use JIT system.
 
--execcapable 
- Use JIT to emit a native executable.
 
--gc=(type) 
- Determine the type of garbage collection. The value for 
type should be one of: gc, libc, malloc or malloc-trace. The default is gc. 
ICU Options
--icu-config=/path/to/icu-config 
- Use the specified icu-config script to determine the necessary ICU options.
 
- Use --icu-config=none to disable the autodetect feature. Parrot will then be build without ICU.
 
- Note: If you specify another ICU option than --icu-config, the autodetection functionality will be disabled.
 
--icushared=(linkeroption) 
- Linker command to link against ICU library.
 
- E.g.
 
   --icushared='-L /opt/openoffice/program -licudata -licuuc'
- (The libs in openoffice are actually version 2.2 and do not work)
 
--icuheaders=(header_dir) 
- Location of ICU header files without the /unicode suffix.
 
- E.g.
 
- --icuheaders='/home/lt/icu/'
 
Other Options
--maintainer 
- Use this option if you want imcc's parser and lexer files to be generated. Needs a working parser and lexer.
 
--miniparrot 
- Build parrot assuming only pure ANSI C is available.
 
--expnetwork 
- Enable experimental networking. This is an unused option and should probably be removed.
 
config/init/data.pl, lib/Parrot/Configure/RunSteps.pm, lib/Parrot/Configure/Step.pm, docs/configuration.pod