config/companion_libs.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Aug 30 01:00:19 2009 +0200 (2009-08-30)
changeset 1496 75a766c20552
parent 1495 2542421e3321
child 1515 545179329bc5
permissions -rw-r--r--
companion-libs: PPL/CLooG/MPC require GMP and MPFR

The PPL, CLoog/ppl and MPC libraries require GMP and MPFR.
Select GMP/MPFR appropriately.
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@1496
    36
    select GMP_MPFR
yann@1495
    37
    select WRAPPER_NEEDED
yann@1324
    38
    help
yann@1384
    39
      gcc-4.4.0 and above requires PPL and CLooG/PPL to build some parts
yann@1384
    40
      of the optimiser (GRAPHITE loop optimisation, to be precise).
yann@1384
    41
      
yann@1384
    42
      In addition to those, gcc-4.4 also optionally uses MPC to enable
yann@1384
    43
      additional optimisations on complex numbers. Although MPC is optional,
yann@1384
    44
      crosstool-NG requires it and uses it to build gcc >= 4.4.0.
yann@1324
    45
      
yann@1324
    46
      These will be automatically selected if you choose gcc>=4.4.0, but you
yann@1324
    47
      can say 'Y' here, although it is unknown yet if any other component
yann@1324
    48
      can use them.
yann@1324
    49
yann@1384
    50
if PPL_CLOOG_MPC
yann@1324
    51
source config/companion_libs/ppl.in
yann@1380
    52
source config/companion_libs/cloog.in
yann@1384
    53
source config/companion_libs/mpc.in
yann@1324
    54
endif
yann@1324
    55
yann@1398
    56
config FOO
yann@1398
    57
    bool
yann@1398
    58
yann@1398
    59
comment "Companion libraries common options"
yann@1386
    60
    depends on GMP_MPFR || PPL_CLOOG_MPC
yann@1386
    61
yann@1386
    62
config COMP_LIBS_CHECK
yann@1386
    63
    bool
yann@1398
    64
    prompt "|  Check the companion libraries builds (!!! READ HELP!!!)"
yann@1386
    65
    depends on GMP_MPFR || PPL_CLOOG_MPC
yann@1386
    66
    default n
yann@1386
    67
    help
yann@1386
    68
      It is highly recommended to check the newly built companion libraries.
yann@1386
    69
      Unfortunately, this is a very intensive task, and takes a loooong time.
Yann@1407
    70
      
yann@1386
    71
      Checking the newly built companion libraries is thus disabled by default,
yann@1388
    72
      but it is suggested that you check them at least once on your machine,
yann@1386
    73
      and if they work, disable the check on subsequent builds.
Yann@1407
    74
      
yann@1386
    75
      If you suspect that one (or more) of your companion libraries is the
yann@1386
    76
      cause for incorrectly generated code, you should answer 'Y' here.
yann@1386
    77
      Note however that this will take a really long time. For example,
yann@1386
    78
      building PPL on my machine takes roughly 1'40", while checking it takes
yann@1398
    79
      about 1h40'...
yann@1386
    80
yann@1386
    81
config COMP_LIBS_TARGET
yann@1386
    82
    bool
yann@1398
    83
    prompt "|  Build companion libraries for the target"
yann@1386
    84
    depends on GMP_MPFR || PPL_CLOOG_MPC
yann@1386
    85
    depends on ! BARE_METAL
yann@1386
    86
    default n
yann@1386
    87
    help
yann@1386
    88
      Also build companion libraries for the target. This can be usefull if
yann@1386
    89
      you want to later build a compiler that will run on the target, or if
yann@1386
    90
      you want to run gdb natively on the target.
yann@1386
    91
      
yann@1386
    92
      Please note that for now, crosstool-NG can only build GMP and MPFR so.
yann@1386
    93
yann@602
    94
endmenu