config/companion_libs.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Aug 30 19:54:51 2009 +0200 (2009-08-30)
changeset 1503 7dcef3fb5e8f
parent 1407 83083566fdd0
child 1496 75a766c20552
permissions -rw-r--r--
tools wrapper: correctly install the C wrapper

When building the C wrapper, specify the source file to be compiled.
     1 # Companion libraries config options
     2 # Those libraries are required for different versions of gcc,
     3 # and can be used by binutils and gdb (maybe others as well).
     4 
     5 menu "Companion libraries"
     6 
     7 config WRAPPER_NEEDED
     8     bool
     9     default n
    10 
    11 config GMP_MPFR
    12     bool
    13     prompt "GMP and MPFR"
    14     select WRAPPER_NEEDED
    15     help
    16       gcc 4.3.0 and above requires both GMP and MPFR to build some frontends,
    17       and some other components can use them as well.
    18       
    19       These will be automatically selected if you choose gcc>=4.3.0, but you
    20       can say 'Y' here if you want to build those two libraries for the other
    21       components (that don't select them by default).
    22       
    23       The packages that can use GMP and MPFR are:
    24         - binutils
    25         - gcc
    26         - gdb
    27 
    28 if GMP_MPFR
    29 source config/companion_libs/gmp.in
    30 source config/companion_libs/mpfr.in
    31 endif
    32 
    33 config PPL_CLOOG_MPC
    34     bool
    35     prompt "PPL, GLooG/PPL and MPC"
    36     select WRAPPER_NEEDED
    37     help
    38       gcc-4.4.0 and above requires PPL and CLooG/PPL to build some parts
    39       of the optimiser (GRAPHITE loop optimisation, to be precise).
    40       
    41       In addition to those, gcc-4.4 also optionally uses MPC to enable
    42       additional optimisations on complex numbers. Although MPC is optional,
    43       crosstool-NG requires it and uses it to build gcc >= 4.4.0.
    44       
    45       These will be automatically selected if you choose gcc>=4.4.0, but you
    46       can say 'Y' here, although it is unknown yet if any other component
    47       can use them.
    48 
    49 if PPL_CLOOG_MPC
    50 source config/companion_libs/ppl.in
    51 source config/companion_libs/cloog.in
    52 source config/companion_libs/mpc.in
    53 endif
    54 
    55 config FOO
    56     bool
    57 
    58 comment "Companion libraries common options"
    59     depends on GMP_MPFR || PPL_CLOOG_MPC
    60 
    61 config COMP_LIBS_CHECK
    62     bool
    63     prompt "|  Check the companion libraries builds (!!! READ HELP!!!)"
    64     depends on GMP_MPFR || PPL_CLOOG_MPC
    65     default n
    66     help
    67       It is highly recommended to check the newly built companion libraries.
    68       Unfortunately, this is a very intensive task, and takes a loooong time.
    69       
    70       Checking the newly built companion libraries is thus disabled by default,
    71       but it is suggested that you check them at least once on your machine,
    72       and if they work, disable the check on subsequent builds.
    73       
    74       If you suspect that one (or more) of your companion libraries is the
    75       cause for incorrectly generated code, you should answer 'Y' here.
    76       Note however that this will take a really long time. For example,
    77       building PPL on my machine takes roughly 1'40", while checking it takes
    78       about 1h40'...
    79 
    80 config COMP_LIBS_TARGET
    81     bool
    82     prompt "|  Build companion libraries for the target"
    83     depends on GMP_MPFR || PPL_CLOOG_MPC
    84     depends on ! BARE_METAL
    85     default n
    86     help
    87       Also build companion libraries for the target. This can be usefull if
    88       you want to later build a compiler that will run on the target, or if
    89       you want to run gdb natively on the target.
    90       
    91       Please note that for now, crosstool-NG can only build GMP and MPFR so.
    92 
    93 endmenu