config/companion_libs.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Aug 30 00:57:40 2009 +0200 (2009-08-30)
changeset 1495 2542421e3321
parent 1407 83083566fdd0
child 1496 75a766c20552
permissions -rw-r--r--
tools wrapper: introduce the silent WRAPPER_NEEDED config option

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