configure
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Wed Jan 13 20:46:01 2010 +0100 (2010-01-13)
changeset 1732 6b2ae7804c6f
parent 1660 991fc21dd3cf
child 1739 3dd3b6279985
permissions -rwxr-xr-x
debug/gdb: staticaly link to ncurses for the native gdb

Staticaly link the native gdb (the one that runs on the target,
not the cross one that runs on the host) to ncurses.
yann@182
     1
#!/bin/sh
yann@182
     2
yann@1311
     3
myname="${0##*/}"
yann@1311
     4
yann@1105
     5
VERSION=$( cat .version )
yann@1105
     6
DATE=$( date +%Y%m%d )
yann@182
     7
yann@183
     8
PREFIX_DEFAULT=/usr/local
yann@182
     9
yann@182
    10
BINDIR_set=
yann@182
    11
LIBDIR_set=
yann@182
    12
DOCDIR_set=
yann@182
    13
MANDIR_set=
yann@285
    14
LOCAL_set=
yann@1311
    15
FORCE=
yann@182
    16
yann@641
    17
do_quit=
yann@614
    18
yann@673
    19
# Simply print the error message, and exit. Obvious, he?
yann@673
    20
do_error() {
yann@1333
    21
    printf "${myname}: ${@}\n"
yann@673
    22
    exit 1
yann@673
    23
}
yann@673
    24
yann@641
    25
# Given an option string and the following argument,
yann@641
    26
# echoes the value of the option.
yann@641
    27
# If --var=val => echoes val and returns 0, meaning second arg was not consumed
yann@641
    28
# If --var val => echoes val and returns non null, meaning second arg was used
yann@182
    29
get_optval(){
yann@182
    30
    case "$1" in
yann@182
    31
        --*=?*)
yann@1333
    32
            printf "${1#*=}"
yann@1105
    33
            return 0
yann@182
    34
            ;;
yann@182
    35
        *)
yann@1333
    36
            printf "${2}"
yann@1105
    37
            return 1
yann@182
    38
            ;;
yann@182
    39
    esac
yann@182
    40
}
yann@182
    41
yann@641
    42
# The set_xxx functions will set the corresponding configuration variable
yann@641
    43
# They return 0 if second arg was not consumed, and non-zero if it was consumed.
yann@182
    44
set_prefix() {
yann@1105
    45
    PREFIX="$( get_optval "$1" "$2" )"
yann@182
    46
}
yann@182
    47
set_bindir() {
yann@376
    48
    BINDIR_set=1
yann@1105
    49
    BINDIR="$( get_optval "$1" "$2" )"
yann@182
    50
}
yann@182
    51
set_libdir() {
yann@376
    52
    LIBDIR_set=1
yann@1105
    53
    LIBDIR="$( get_optval "$1" "$2" )"
yann@182
    54
}
yann@182
    55
set_docdir() {
yann@376
    56
    DOCDIR_set=1
yann@1105
    57
    DOCDIR="$( get_optval "$1" "$2" )"
yann@182
    58
}
yann@182
    59
set_mandir() {
yann@376
    60
    MANDIR_set=1
yann@1105
    61
    MANDIR="$( get_optval "$1" "$2" )"
yann@182
    62
}
yann@1140
    63
set_tool() {
yann@1140
    64
    local var_name="${1%%=*}"
yann@1140
    65
    var_name="${var_name#--with-}"
yann@1140
    66
    eval ${var_name}="\$( get_optval "$1" "$2" )"
yann@614
    67
}
yann@614
    68
yann@1311
    69
# var_list is a list of variables, each one holding a path to a
yann@1311
    70
# tool, either detected by ./configure, or specified by the user.
yann@1311
    71
var_list=""
yann@1311
    72
yann@1311
    73
# This function adds a variable name to the above list of variable names.
yann@1311
    74
# $1: the name of the variable to add to the list
yann@1311
    75
add_to_var_list() {
yann@1311
    76
    var_list="${var_list} ${1}"
yann@1311
    77
}
yann@1311
    78
yann@1311
    79
# A function to test for required tools/headers/libraries
yann@1560
    80
# Return 0 (true) if found, !0 (false) if not found
yann@1560
    81
#
yann@1311
    82
# $*: [prog|inc|lib]=<name[ name...]>
yann@1311
    83
#     the name(s) of tool(s) to test for
yann@1311
    84
#     mandatory
yann@1311
    85
#       eg: prog=bash   prog="curl wget"
yann@1311
    86
# $*: var=<var_name>
yann@1311
    87
#     the name of the variable to test and set
yann@1311
    88
#     optional
yann@1311
    89
#       eg: var=bash    if ${bash} is set and non-null, use that,
yann@1311
    90
#                       else check for bash and set bash=$(which bash)
yann@1311
    91
# $*: ver=<regexp>
yann@1311
    92
#     for each 'prog', test if $(prog --version) matches 'regexp'
yann@1311
    93
#     optional
yann@1311
    94
#       eg: ver='^GNU bash, version [34]\.'
yann@1311
    95
# $*: err=<error_message>
yann@1311
    96
#     the error message to print if tool is missing
yann@1311
    97
#     optional, defaults to: '${prog}: none found'
yann@1311
    98
#       eg: err="'bash' 3.x or above was not found"
yann@1560
    99
check_for() {
yann@1311
   100
    local prog inc lib
yann@1311
   101
    local var ver err
yann@1311
   102
    local val
yann@1311
   103
    local item
yann@1311
   104
    local where
yann@1312
   105
    local status
yann@1311
   106
yann@1311
   107
    for item in "${@}"; do
yann@1311
   108
        case "${item}" in
yann@1311
   109
            prog=*|inc=*|lib=*|var=*|ver=*|err=*)
yann@1311
   110
                eval ${item%%=*}="'${item#*=}'"
yann@1311
   111
                ;;
yann@1311
   112
            *)  do_error "has_or_abort: incorrect parameters: '$@'";;
yann@1311
   113
        esac
yann@1311
   114
    done
yann@1311
   115
yann@1311
   116
    case "${prog}:${inc}:${lib}" in
yann@1311
   117
        ?*::)
yann@1311
   118
            for item in ${prog}; do
yann@1311
   119
                printf "Checking for '${item}'... "
yann@1311
   120
                if [ -n "${var}" ]; then
yann@1311
   121
                    eval val="\${${var}}"
yann@1311
   122
                    if [ -n "${val}" ]; then
yann@1311
   123
                        printf "${val} (cached)\n"
yann@1570
   124
                        add_to_var_list "${var}"
yann@1311
   125
                        return 0
yann@1311
   126
                    fi
yann@1311
   127
                fi
yann@1311
   128
                where="$( which "${item}" 2>/dev/null )"
yann@1311
   129
                if [ -z "${where}" ]; then
yann@1312
   130
                    printf "no\n"
yann@1311
   131
                    continue
yann@1311
   132
                elif [ -n "${ver}" ]; then
yann@1571
   133
                    str=$( LC_ALL=C "${where}" --version 2>&1   \
yann@1571
   134
                           |grep -E "${ver}"                    \
yann@1571
   135
                           |head -n 1
yann@1571
   136
                         )
yann@1311
   137
                    if [ -z "${str}" ]; then
yann@1312
   138
                        printf "no\n"
yann@1311
   139
                        unset where
yann@1311
   140
                        continue
yann@1311
   141
                    fi
yann@1311
   142
                fi
yann@1312
   143
                status="${where}"
yann@1311
   144
                break
yann@1311
   145
            done
yann@1311
   146
            ;;
yann@1311
   147
        :?*:)
yann@1312
   148
            for item in ${inc}; do
yann@1312
   149
                printf "Checking for '${item}'... "
yann@1312
   150
                if printf "#include \"${item}\"" |gcc -x c -c - -o /dev/null >/dev/null 2>&1; then
yann@1312
   151
                    where="${item}"
yann@1312
   152
                    status=yes
yann@1312
   153
                    break;
yann@1312
   154
                fi
yann@1312
   155
                printf "no\n"
yann@1312
   156
            done
yann@1311
   157
            ;;
yann@1311
   158
        ::?*)
yann@1313
   159
            for item in ${lib}; do
yann@1313
   160
                printf "Checking for '${item}'... "
yann@1313
   161
                where="$( gcc -print-file-name="${item}" )"
yann@1313
   162
                if [ "${where}" != "${item}" ]; then
yann@1313
   163
                    where="$( readlink -e "${where}" )"
yann@1313
   164
                    status=yes
yann@1313
   165
                    break;
yann@1313
   166
                fi
yann@1313
   167
                printf "no\n"
yann@1313
   168
            done
yann@1311
   169
            ;;
yann@1311
   170
    esac
yann@1560
   171
yann@1312
   172
    if [ -z "${status}" ]; then
yann@1312
   173
        printf "\n${err:-${prog}${inc}${lib}: none found}\n\n"
yann@1312
   174
        printf "Either you are missing entirely the needed tool,\n"
yann@1312
   175
        printf "or the version you have is too old.\n"
yann@1312
   176
        if [ -n "${var}" ]; then
yann@1312
   177
            printf "You can give the path to this tool using: --with-${var}=PATH\n"
yann@1312
   178
        fi
yann@1560
   179
        printf "\n"
yann@1560
   180
        return 1
yann@1560
   181
    fi
yann@1560
   182
yann@1560
   183
    printf "${status}"
yann@1560
   184
    if [ -n "${var}" ]; then
yann@1560
   185
        eval ${var}='"'"${where}"'"'
yann@1560
   186
        add_to_var_list "${var}"
yann@1560
   187
    fi
yann@1560
   188
    printf "\n"
yann@1560
   189
}
yann@1560
   190
yann@1560
   191
# This function checks for a tool, and aborts if not found
yann@1560
   192
# See check_for(), above, for how to call has_or_abort
yann@1560
   193
has_or_abort() {
yann@1560
   194
    if ! check_for "$@"; then
yann@1312
   195
        # FORCE can be set in the environment
yann@1312
   196
        [ -z "${FORCE}" ] && do_error "Bailing out..."
yann@1312
   197
        printf "\n"
yann@1312
   198
        printf "<*                                          *>\n"
yann@1312
   199
        printf "<*            FORCE in action:              *>\n"
yann@1312
   200
        printf "<* Continuing despite missing pre-requisite *>\n"
yann@1312
   201
        printf "<*          Prepare for breakage            *>\n"
yann@1312
   202
        printf "<*                                          *>\n"
yann@1312
   203
        printf "\n"
yann@1312
   204
    fi
yann@1311
   205
}
yann@1311
   206
yann@183
   207
do_help() {
yann@183
   208
    cat <<__EOF__
yann@1140
   209
\`configure' configures crosstool-NG-${VERSION} to adapt to many kind of systems.
yann@183
   210
yann@183
   211
USAGE: ./configure [OPTION]...
yann@183
   212
yann@183
   213
Defaults for the options are specified in brackets.
yann@183
   214
yann@183
   215
Configuration:
yann@1105
   216
  -h, --help              display this help and exit
yann@1311
   217
      --force             force configure to continue, even in case
yann@1311
   218
                          some pre-requisites are missing
yann@615
   219
yann@615
   220
Installation directories:
yann@185
   221
  --prefix=PREFIX         install files in PREFIX [${PREFIX_DEFAULT}]
yann@285
   222
  --local                 don't install, and use current directory
yann@183
   223
yann@183
   224
By default, \`make install' will install all the files in
yann@183
   225
\`${PREFIX_DEFAULT}/bin', \`${PREFIX_DEFAULT}/lib' etc.  You can specify
yann@183
   226
an installation prefix other than \`${PREFIX_DEFAULT}' using \`--prefix',
yann@183
   227
for instance \`--prefix=\${HOME}'.
yann@183
   228
yann@183
   229
For better control, use the options below.
yann@183
   230
yann@183
   231
Fine tuning of the installation directories:
yann@683
   232
  --bindir=DIR            user executables [PREFIX/bin]
yann@683
   233
  --libdir=DIR            object code libraries [PREFIX/lib]
yann@683
   234
  --docdir=DIR            info documentation [PREFIX/share/doc]
yann@683
   235
  --mandir=DIR            man documentation [PREFIX/share/man]
yann@614
   236
yann@614
   237
Optional Features:
yann@1140
   238
  --with-install=PATH     Specify the full PATH to GNU install
yann@1311
   239
  --with-make=PATH        Specify the full PATH to GNU make >= 3.80
yann@1140
   240
  --with-grep=PATH        Specify the full PATH to GNU grep
yann@1140
   241
  --with-sed=PATH         Specify the full PATH to GNU sed
yann@1140
   242
  --with-bash=PATH        Specify the full PATH to bash >= 3.0
yann@183
   243
__EOF__
yann@183
   244
}
yann@183
   245
yann@376
   246
#---------------------------------------------------------------------
yann@376
   247
# Set user's options
yann@376
   248
yann@182
   249
while [ $# -ne 0 ]; do
yann@182
   250
    case "$1" in
yann@1297
   251
        --local)    LOCAL_set="y"; shift;;
yann@182
   252
        --prefix*)  set_prefix "$1" "$2" && shift || shift 2;;
yann@182
   253
        --bindir*)  set_bindir "$1" "$2" && shift || shift 2;;
yann@182
   254
        --libdir*)  set_libdir "$1" "$2" && shift || shift 2;;
yann@182
   255
        --docdir*)  set_docdir "$1" "$2" && shift || shift 2;;
yann@182
   256
        --mandir*)  set_mandir "$1" "$2" && shift || shift 2;;
yann@1140
   257
        --with-*)   set_tool   "$1" "$2" && shift || shift 2;;
yann@1311
   258
        --force)    FORCE=1; shift;;
yann@183
   259
        --help|-h)  do_help; exit 0;;
yann@1333
   260
        *)          printf "Unrecognised option: '${1}'\n"; do_help; exit 1;;
yann@182
   261
    esac
yann@182
   262
done
yann@182
   263
yann@641
   264
# Use defaults
yann@185
   265
[ -z "${PREFIX}" ] && set_prefix "" "${PREFIX_DEFAULT}"
yann@641
   266
yann@641
   267
# Special case when installing locally
yann@1297
   268
if [ "${LOCAL_set}" = "y" ]; then
yann@1105
   269
    set_prefix "" "$( pwd )"
yann@1105
   270
    set_bindir "" "$( pwd )"
yann@1105
   271
    set_libdir "" "$( pwd )"
yann@1105
   272
    set_docdir "" "$( pwd )/docs"
yann@1105
   273
    set_mandir "" "$( pwd )/docs"
yann@285
   274
fi
yann@183
   275
yann@376
   276
#---------------------------------------------------------------------
yann@1140
   277
# Some sanity checks, now
yann@1106
   278
yann@1560
   279
# We check for grep and sed manually, because they are used in check_for()
yann@1140
   280
printf "Checking for 'grep'... "
yann@1140
   281
if [ -n "${grep}" ]; then
yann@1333
   282
    printf "${grep} (cached)\n"
yann@1140
   283
else
yann@1140
   284
    grep="$( which grep 2>/dev/null )"
yann@1187
   285
    if [ -z "${grep}" ]; then
yann@1333
   286
        printf "not found\n"
yann@1187
   287
    else
yann@1333
   288
        printf "${grep}\n"
yann@1187
   289
        printf "Checking whether '${grep}' supports -E... "
yann@1187
   290
        if echo 'foo' |"${grep}" -E 'foo' >/dev/null 2>&1; then
yann@1333
   291
            printf "yes\n"
yann@1187
   292
        else
yann@1333
   293
            printf "no\n"
yann@1187
   294
            grep=
yann@1187
   295
        fi
yann@1187
   296
    fi
yann@1106
   297
fi
yann@1187
   298
if [ -z "${grep}" ]; then
yann@1333
   299
    printf "Either you are missing entirely the needed tool,\n"
yann@1333
   300
    printf "or the version you have is too old.\n"
yann@1333
   301
    printf "You can give the path to this tool using: --with-grep=PATH\n"
yann@1187
   302
    do_error "Bailing out..."
yann@1140
   303
fi
yann@1311
   304
add_to_var_list grep
yann@1140
   305
yann@1140
   306
printf "Checking for 'sed'... "
yann@1140
   307
if [ -n "${sed}" ]; then
yann@1333
   308
    printf "${sed} (cached)\n"
yann@1140
   309
else
yann@1140
   310
    sed="$( which sed 2>/dev/null )"
yann@1187
   311
    if [ -z "${sed}" ]; then
yann@1333
   312
        printf "not found\n"
yann@1187
   313
    else
yann@1333
   314
        printf "${sed}\n"
rpjday@1288
   315
        printf "Checking whether '${sed}' supports -i and -e... "
yann@1187
   316
        touch .ct-ng.sed.test
yann@1187
   317
        if "${sed}" -r -i -e 's/foo/bar/' .ct-ng.sed.test >/dev/null 2>&1; then
yann@1333
   318
            printf "yes\n"
yann@1187
   319
        else
yann@1333
   320
            printf "no\n"
yann@1187
   321
            sed=
yann@1187
   322
        fi
yann@1187
   323
        rm -f .ct-ng.sed.test
yann@1187
   324
    fi
yann@1140
   325
fi
yann@1187
   326
if [ -z "${sed}" ]; then
yann@1333
   327
    printf "Either you are missing entirely the needed tool,\n"
yann@1333
   328
    printf "or the version you have is too old.\n"
yann@1333
   329
    printf "You can give the path to this tool using: --with-sed=PATH\n"
yann@1187
   330
    do_error "Bailing out..."
yann@1140
   331
fi
yann@1311
   332
add_to_var_list sed
yann@1140
   333
yann@1311
   334
# The regular list of tools we can now easily check for
yann@1311
   335
has_or_abort prog=bash                              \
yann@1311
   336
             var=bash                               \
yann@1477
   337
             ver='^GNU bash, version (3\.[1-9]|4)'  \
yann@1477
   338
             err="'bash' 3.1 or above was not found"
yann@1311
   339
has_or_abort prog=cut
yann@1311
   340
has_or_abort prog=install var=install
yann@1311
   341
has_or_abort prog=make                                  \
yann@1311
   342
             var=make                                   \
yann@1311
   343
             ver='^GNU Make (3.[89][[:digit:]]|[4-9])'  \
yann@1311
   344
             err="GNU 'make' 3.80 or above was not found"
yann@1311
   345
has_or_abort prog=gcc
yann@1431
   346
has_or_abort prog="awk gawk" ver='^GNU Awk' err="GNU 'awk' was not found"
yann@1311
   347
has_or_abort prog=bison
yann@1311
   348
has_or_abort prog=flex
yann@1311
   349
has_or_abort prog=makeinfo
yann@1311
   350
has_or_abort prog=automake                                                      \
oron@1432
   351
             ver='\(GNU automake\) (1\.[[:digit:]]{2,}|[2-9][[:digit:]]*\.)'    \
yann@1311
   352
             err="'automake' 1.10 or above was not found"
yann@1311
   353
has_or_abort prog=libtool                                                                           \
yann@1311
   354
             ver='\(GNU libtool.*\) (2[[:digit:]]*\.|1\.6[[:digit:]]*\.|1\.5\.[2-9][[:digit:]]+)'   \
yann@1311
   355
             err="'libtool' 1.5.26 or above was not found"
yann@1402
   356
has_or_abort prog=stat ver='GNU coreutils'
yann@1669
   357
has_or_abort prog="aria2c curl wget"
yann@1347
   358
has_or_abort prog=cvs
yann@1311
   359
has_or_abort prog=patch
yann@1311
   360
has_or_abort prog=tar
yann@1311
   361
has_or_abort prog=gzip
yann@1311
   362
has_or_abort prog=bzip2
yann@1311
   363
has_or_abort prog=lzma
yann@1313
   364
has_or_abort prog=readlink
yann@1311
   365
yann@1312
   366
has_or_abort inc="ncurses/ncurses.h ncurses/curses.h ncurses.h curses.h"    \
yann@1312
   367
             err="'ncurses' headers files were not found"
yann@1313
   368
yann@1332
   369
ncurses_libs="$( for l in ncursesw ncurses curses; do   \
yann@1332
   370
                     for x in so a dylib; do            \
yann@1332
   371
                         printf "lib$l.$x ";            \
yann@1332
   372
                     done;                              \
yann@1332
   373
                 done                                   \
yann@1332
   374
               )"
yann@1332
   375
has_or_abort lib="${ncurses_libs}"                  \
yann@1313
   376
             err="'ncurses' library was not found"
yann@1106
   377
yann@1106
   378
#---------------------------------------------------------------------
yann@1106
   379
# Compute the version string
yann@376
   380
yann@1576
   381
# If this version is n hg clone, try to get the revision number
yann@435
   382
# If we can't get the revision number, use date
yann@435
   383
case "${VERSION}" in
Yann@1409
   384
    *+hg|hg)
Yann@1409
   385
        has_or_abort prog=hg
yann@1311
   386
        printf "Computing version string... "
Yann@1409
   387
        REVISION="$( hg id -n 2>/dev/null )"
yann@1105
   388
        case "${REVISION}" in
Yann@1409
   389
            "")
yann@1105
   390
                VERSION="${VERSION}_unknown@$( date +%Y%m%d.%H%M%S )";;
yann@1105
   391
            *)
yann@1430
   392
                VERSION="${VERSION}_$( hg id -b )@${REVISION%%+}_$( hg id -i )"
yann@1105
   393
                ;;
yann@1105
   394
        esac
yann@1105
   395
        # Arrange to have no / in the directory name, no need to create an
yann@1105
   396
        # arbitrarily deep directory structure
yann@1333
   397
        VERSION="$( printf "${VERSION}\n" |"${sed}" -r -e 's|/+|_|g;' )"
yann@444
   398
        ;;
yann@435
   399
esac
yann@553
   400
echo "${VERSION}"
yann@435
   401
yann@1106
   402
#---------------------------------------------------------------------
yann@1106
   403
# Compute and check install paths
yann@1106
   404
yann@614
   405
# Now we have the version string, we can build up the paths
yann@554
   406
[ -z "${BINDIR_set}" ] && BINDIR="${PREFIX}/bin"
yann@1660
   407
[ -z "${LIBDIR_set}" ] && LIBDIR="${PREFIX}/lib"
yann@1660
   408
[ -z "${DOCDIR_set}" ] && DOCDIR="${PREFIX}/share/doc"
yann@554
   409
[ -z "${MANDIR_set}" ] && MANDIR="${PREFIX}/share/man/man1"
yann@554
   410
yann@1660
   411
# Install support files in our own sub-dir, so as not to mangle (system)
yann@1660
   412
# files and dirs, but only if not --local
yann@1660
   413
if [ -z "${LOCAL_set}" ]; then
yann@1660
   414
    LIBDIR="${LIBDIR}/ct-ng-${VERSION}"
yann@1660
   415
    DOCDIR="${DOCDIR}/ct-ng-${VERSION}"
yann@1660
   416
fi
yann@1660
   417
yann@1047
   418
# Check that install PATHs are absolute
yann@1047
   419
for p in BIN LIB DOC MAN; do
yann@1105
   420
    var="${p}DIR"
yann@1105
   421
    eval v='"${'"${var}"'}"'
yann@1105
   422
    case "${v}" in
yann@1105
   423
        /*) ;;
yann@1105
   424
        *)  do_error "'${var}' is not an absolute path: '${v}'"
yann@1105
   425
    esac
yann@1047
   426
done
yann@1047
   427
yann@1106
   428
#---------------------------------------------------------------------
yann@1106
   429
# That's all, folks!
yann@614
   430
yann@641
   431
printf "Building up Makefile... "
yann@1140
   432
var_sed="$( for var_name in ${var_list}; do
yann@1140
   433
                eval echo 's,@@${var_name}@@,${'"${var_name}"'},g'
yann@1140
   434
            done 
yann@1140
   435
          )"
yann@1106
   436
"${sed}" -r -e "s,@@BINDIR@@,${BINDIR},g
yann@1106
   437
                s,@@LIBDIR@@,${LIBDIR},g
yann@1106
   438
                s,@@DOCDIR@@,${DOCDIR},g
yann@1106
   439
                s,@@MANDIR@@,${MANDIR},g
yann@1106
   440
                s,@@VERSION@@,${VERSION},g
yann@1106
   441
                s,@@DATE@@,${DATE},g
yann@1140
   442
                ${var_sed}
yann@1106
   443
                s,@@LOCAL@@,${LOCAL_set},g"  Makefile.in >Makefile
yann@673
   444
echo "done"
yann@185
   445
yann@185
   446
cat <<__EOF__
yann@673
   447
yann@197
   448
crosstool-NG configured as follows:
yann@554
   449
  PREFIX='${PREFIX}'
yann@554
   450
  BINDIR='${BINDIR}'
yann@554
   451
  LIBDIR='${LIBDIR}'
yann@554
   452
  DOCDIR='${DOCDIR}'
yann@554
   453
  MANDIR='${MANDIR}'
yann@1106
   454
yann@1106
   455
Now run:
yann@1106
   456
  make
yann@185
   457
__EOF__
yann@1298
   458
if [ "${LOCAL_set}" != "y" ]; then
yann@1297
   459
    printf "  make install\n"
yann@1297
   460
fi