complibs-use-distro-provided-libs
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jan 02 00:02:32 2011 +0100 (2011-01-02)
changeset 1 3c998003904c
permissions -rw-r--r--
MQ: add current state of changes

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     1 # HG changeset patch
     2 # Parent 23e27fc054b699f1f6530ef0458d990b1f834599
     3 # User "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     4 # Date 1284399119 -7200
     5 
     6 complibs: add option to use distro-provided libs
     7 
     8 Now that some distros are catching up (eg. Debian testing at least),
     9 add an option to use companion libs from the distro.
    10 
    11 Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
    12 
    13 diff --git a/config/companion_libs.in b/config/companion_libs.in
    14 --- a/config/companion_libs.in
    15 +++ b/config/companion_libs.in
    16 @@ -4,6 +4,42 @@
    17  
    18  menu "Companion libraries"
    19  
    20 +config COMPLIBS_DISTRO
    21 +    bool
    22 +    prompt "Trust companion libraries from the distro (READ HELP!)"
    23 +    default n
    24 +    depends on COMPLIBS_NEEDED
    25 +    depends on EXPERIMENTAL
    26 +    help
    27 +      Most of the distributions current as of this writing lack the proper
    28 +      version of the required companion libraries, or do not even package
    29 +      those.  For example Debian Lenny has too old a version for PPL, and
    30 +      does not provide MPC and CLooG.
    31 +      
    32 +      But now distributions are catching up, and some (most?) of them do
    33 +      package the proper versions of those libraries. For example again,
    34 +      Debian Squeeze (still in testing) has the proper versions now.
    35 +      
    36 +      If you want to trust your distribution for providing the companion
    37 +      libraries, say 'Y' here, or if you want crosstool-NG to build them
    38 +      for you, say 'N'.
    39 +      
    40 +      The default is 'N', to cope with stable productions systems that most
    41 +      probably are using proven-stable distributions, and can not upgrade.
    42 +      
    43 +      Also, this is still experimental, so you'd better say 'N' if you are
    44 +      not sure.
    45 +      
    46 +      Note-1: if you say 'Y' here, it is very probable that the libraries
    47 +      will be linked in dynamically, and not static. This is not an issue
    48 +      if you keep the toolchain on the machine where it was built, but can
    49 +      become one if you want to move the toolchain to another machine, with
    50 +      an older distro. You've been warned!
    51 +      
    52 +      Note-2: for now, this is an all-from-distro or all-from-crosstool-NG
    53 +      setting. You can't use one lib from the distro, and build another
    54 +      one from crosstool-NG.
    55 +
    56  config COMPLIBS_NEEDED
    57      bool
    58      default n
    59 @@ -11,37 +47,37 @@
    60  config GMP_NEEDED
    61      bool
    62      default n
    63 -    select GMP
    64 +    select GMP      if ! COMPLIBS_DISTRO
    65      select COMPLIBS_NEEDED
    66  
    67  config MPFR_NEEDED
    68      bool
    69      default n
    70 -    select MPFR
    71 +    select MPFR     if ! COMPLIBS_DISTRO
    72      select COMPLIBS_NEEDED
    73  
    74  config PPL_NEEDED
    75      bool
    76      default n
    77 -    select PPL
    78 +    select PPL      if ! COMPLIBS_DISTRO
    79      select COMPLIBS_NEEDED
    80  
    81  config CLOOG_NEEDED
    82      bool
    83      default n
    84 -    select CLOOG
    85 +    select CLOOG    if ! COMPLIBS_DISTRO
    86      select COMPLIBS_NEEDED
    87  
    88  config MPC_NEEDED
    89      bool
    90      default n
    91 -    select MPC
    92 +    select MPC      if ! COMPLIBS_DISTRO
    93      select COMPLIBS_NEEDED
    94  
    95  config LIBELF_NEEDED
    96      bool
    97      default n
    98 -    select LIBELF
    99 +    select LIBELF   if ! COMPLIBS_DISTRO
   100      select COMPLIBS_NEEDED
   101  
   102  config COMPLIBS